It is part of the JSON RPC specs:
http://www.jsonrpc.org/specification
id
An identifier established by the Client that MUST contain a String, Number, or NULL value if included. If it is not included it is assumed to be a notification. The value SHOULD normally not be Null [1] and Numbers SHOULD NOT contain fractional parts [2]
It's basically an identifier for your client to know which response corresponds to which request - in case you're using something like a WebSocket endpoint, where you're getting a stream of replies instead of just one reply per request like HTTP POST.