Get a pseudonymous identifier for device being used by a given mobile subscriber
POST/deviceidentifier/retrieve-ppid
Get a pseudonymous identifier for device being used by a given mobile subscriber
Returns
device: optional DeviceIdentifierDevice { ipv4Address, ipv6Address, networkAccessIdentifier, phoneNumber }
The device subscription identifier that was used to identify the device whose identifier is being returned. If this property is not present, then the device subscription identifier specified in the request was used.
lastChecked: optional string
Date and time that the information was last confirmed by the mobile operator to be correct. It must follow RFC 3339 and must have time zone.
formatdate-time
Get a pseudonymous identifier for device being used by a given mobile subscriber
curl https://api.example.com/camara/deviceidentifier/retrieve-ppid \
-H 'Content-Type: application/json' \
-H "Authorization: Bearer $CAMARA_BEARER_TOKEN" \
-d '{}'{
"lastChecked": "2024-02-20T10:41:38.657Z",
"ppid": "b083f65ccdad365d7489fff24b6d5074b30c12b6d81db3404d25964ffd908813"
}{
"device": {
"phoneNumber": "+123456789"
},
"lastChecked": "2024-02-20T10:41:38.657Z",
"ppid": "b083f65ccdad365d7489fff24b6d5074b30c12b6d81db3404d25964ffd908813"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "At least one of phoneNumber, networkAccessIdentifier, ipv4Address and ipv6Address must be specified"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Multiple inconsistent device parameters specified"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Invalid format: networkAccessIdentifier"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Invalid format: phoneNumber"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Invalid format: ipv4Address"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Invalid format: ipv6Address"
}{
"status": 400,
"code": "OUT_OF_RANGE",
"message": "Invalid value: ipv4Address.publicPort"
}{
"status": 401,
"code": "UNAUTHENTICATED",
"message": "Request not authenticated due to missing, invalid, or expired credentials. A new authentication is required."
}{
"status": 403,
"code": "PERMISSION_DENIED",
"message": "Client does not have sufficient permissions to perform this action."
}{
"status": 404,
"code": "IDENTIFIER_NOT_FOUND",
"message": "The provided identifier cannot be matched to a device."
}{
"status": 422,
"code": "SERVICE_NOT_APPLICABLE",
"message": "The service is not applicable for the identified device."
}{
"status": 422,
"code": "UNSUPPORTED_IDENTIFIER",
"message": "None of the provided identifiers is supported by the implementation."
}{
"status": 422,
"code": "UNNECESSARY_IDENTIFIER",
"message": "An explicit identifier has been provided for the device when this is already identified by the access token"
}{
"status": 422,
"code": "MISSING_IDENTIFIER",
"message": "An identifier is not included in the request and the device cannot be identified from the 2-legged access token"
}{
"status": 429,
"code": "TOO_MANY_REQUESTS",
"message": "Rate limit reached"
}{
"status": 429,
"code": "QUOTA_EXCEEDED",
"message": "Out of resource quota"
}Returns Examples
{
"lastChecked": "2024-02-20T10:41:38.657Z",
"ppid": "b083f65ccdad365d7489fff24b6d5074b30c12b6d81db3404d25964ffd908813"
}{
"device": {
"phoneNumber": "+123456789"
},
"lastChecked": "2024-02-20T10:41:38.657Z",
"ppid": "b083f65ccdad365d7489fff24b6d5074b30c12b6d81db3404d25964ffd908813"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "At least one of phoneNumber, networkAccessIdentifier, ipv4Address and ipv6Address must be specified"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Multiple inconsistent device parameters specified"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Invalid format: networkAccessIdentifier"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Invalid format: phoneNumber"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Invalid format: ipv4Address"
}{
"status": 400,
"code": "INVALID_ARGUMENT",
"message": "Invalid format: ipv6Address"
}{
"status": 400,
"code": "OUT_OF_RANGE",
"message": "Invalid value: ipv4Address.publicPort"
}{
"status": 401,
"code": "UNAUTHENTICATED",
"message": "Request not authenticated due to missing, invalid, or expired credentials. A new authentication is required."
}{
"status": 403,
"code": "PERMISSION_DENIED",
"message": "Client does not have sufficient permissions to perform this action."
}{
"status": 404,
"code": "IDENTIFIER_NOT_FOUND",
"message": "The provided identifier cannot be matched to a device."
}{
"status": 422,
"code": "SERVICE_NOT_APPLICABLE",
"message": "The service is not applicable for the identified device."
}{
"status": 422,
"code": "UNSUPPORTED_IDENTIFIER",
"message": "None of the provided identifiers is supported by the implementation."
}{
"status": 422,
"code": "UNNECESSARY_IDENTIFIER",
"message": "An explicit identifier has been provided for the device when this is already identified by the access token"
}{
"status": 422,
"code": "MISSING_IDENTIFIER",
"message": "An identifier is not included in the request and the device cannot be identified from the 2-legged access token"
}{
"status": 429,
"code": "TOO_MANY_REQUESTS",
"message": "Rate limit reached"
}{
"status": 429,
"code": "QUOTA_EXCEEDED",
"message": "Out of resource quota"
}