Client-Id - Indicates a name for the client using the CMR API. Specifying this helps Operations monitor query performance per client. It can also make it easier for them to identify your requests if you contact them for assistance.
Given that there are token and bearer_token methods in the Query class for conveniently setting the Authorization header, providing a client_id method would be convenient for supplying the Client-Id header.
Further, I recommend the following:
When the user does not invoke the client_id method to specify their own chosen ID for identification for assistance, a default should be set. I recommend something like this: python_cmr-vX.Y.Z, where X.Y.Z is the version of python_cmr
When the user does invoke the client_id method, the following suffix should be added to the value specified by the user: (python_cmr-vX.Y.Z), with a space character between the user-supplied value and the suffix.
The Headers section of the CMR Search API documentation describes the
Client-Id
header as follows:Given that there are
token
andbearer_token
methods in theQuery
class for conveniently setting theAuthorization
header, providing aclient_id
method would be convenient for supplying theClient-Id
header.Further, I recommend the following:
client_id
method to specify their own chosen ID for identification for assistance, a default should be set. I recommend something like this:python_cmr-vX.Y.Z
, whereX.Y.Z
is the version ofpython_cmr
client_id
method, the following suffix should be added to the value specified by the user:(python_cmr-vX.Y.Z)
, with a space character between the user-supplied value and the suffix.