Method: projects.apps.exchangeDeviceCheckToken
Stay organized with collections
Save and categorize content based on your preferences.
Accepts a
deviceToken
issued by DeviceCheck, and attempts to validate it with Apple. If valid, returns an
AppCheckToken
.
HTTP request
POST https://firebaseappcheck.googleapis.com/v1beta/{app=projects/*/apps/*}:exchangeDeviceCheckToken
The URL uses
gRPC Transcoding
syntax.
Path parameters
Parameters
|
app
|
string
Required. The relative resource name of the iOS app, in the format:
projects/{project_number}/apps/{app_id}
If necessary, the
project_number
element can be replaced with the project ID of the Firebase project. Learn more about using project identifiers in Google's
AIP 2510
standard.
|
Request body
The request body contains data with the following structure:
JSON representation
|
{
"deviceToken": string,
"limitedUse": boolean
}
|
Fields
|
deviceToken
|
string
Required. The
deviceToken
as returned by Apple's client-side
DeviceCheck API
. This is the base64 encoded
Data
(Swift) or
NSData
(ObjC) object.
|
limitedUse
|
boolean
Specifies whether this attestation is for use in a
limited use
(
true
) or
session based
(
false
) context. To enable this attestation to be used with the
replay protection
feature, set this to
true
. The default value is
false
.
|
Response body
If successful, the response body contains an instance of
AppCheckToken
.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-04-05 UTC.
[null,null,["Last updated 2024-04-05 UTC."],[],[],null,["# Method: projects.apps.exchangeDeviceCheckToken\n\nAccepts a\n[`\ndeviceToken\n`](https://developer.apple.com/documentation/devicecheck/dcdevice)\nissued by DeviceCheck, and attempts to validate it with Apple. If valid, returns an\n`\n`[AppCheckToken](/docs/reference/appcheck/rest/v1beta/AppCheckToken)`\n`\n.\n\n### HTTP request\n\n\n`\nPOST https://firebaseappcheck.googleapis.com/v1beta/{app=projects/*/apps/*}:exchangeDeviceCheckToken\n`\n\n\nThe URL uses\n[gRPC Transcoding](https://google.aip.dev/127)\nsyntax.\n\n### Path parameters\n\n| Parameters ||\n|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ` app ` | ` string ` Required. The relative resource name of the iOS app, in the format: projects/{project_number}/apps/{app_id} If necessary, the ` project_number ` element can be replaced with the project ID of the Firebase project. Learn more about using project identifiers in Google's [AIP 2510](https://google.aip.dev/cloud/2510) standard. |\n\n### Request body\n\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|----------------------------------------------------------|\n| ``` { \"deviceToken\": string, \"limitedUse\": boolean } ``` |\n\n| Fields ||\n|-----------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| ` deviceToken ` | ` string ` Required. The ` deviceToken ` as returned by Apple's client-side [DeviceCheck API](https://developer.apple.com/documentation/devicecheck/dcdevice) . This is the base64 encoded ` Data ` (Swift) or ` NSData ` (ObjC) object. |\n| ` limitedUse ` | ` boolean ` Specifies whether this attestation is for use in a *limited use* ( ` true ` ) or *session based* ( ` false ` ) context. To enable this attestation to be used with the *replay protection* feature, set this to ` true ` . The default value is ` false ` . |\n\n### Response body\n\n\nIf successful, the response body contains an instance of\n`\n`[AppCheckToken](/docs/reference/appcheck/rest/v1beta/AppCheckToken)`\n`\n."]]