If the client does not understand OData version 3.0:
MaxDataServiceVersion: 2.0
Accept: application/json
The server will respond with Verbose JSON and only use format elements that were defined in OData version 2.0.
If the client understands OData version 3.0 but only supports Verbose JSON:
MaxDataServiceVersion: 3.0
Accept: application/json;odata=verbose
The server will respond with Verbose JSON and only use format elements that were defined in OData version 3.0.
If the client fully supports OData version 3.0:
MaxDataServiceVersion: 3.0
Accept: application/json;odata=light;q=1,application/json;odata=verbose;q=0.5
If the server supports the new JSON format, otherwise it will respond with Verbose JSON, or fail if it supports neither.
Optionally, clients can add Atom to the Accept list as a further fallback in case the service supports neither JSON format.