Firebase App Check works alongside other Firebase services to help protect your backend resources from abuse, such as billing fraud or phishing.
Service: firebaseappcheck.googleapis.com
To call this service, we recommend that you use the Google-provided client libraries. If your application needs to use your own libraries to call this service, use the following information when you make the API requests.
Discovery document
A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery documents:
Service endpoint
A service endpoint is a base URL that specifies the network address of an API service. One service might have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:
https://firebaseappcheck.googleapis.com
REST Resource: v1beta.jwks
Methods | |
---|---|
get |
GET /v1beta/{name} Returns a public JWK set as specified by RFC 7517 that can be used to verify App Check tokens. |
REST Resource: v1beta.oauthClients
Methods | |
---|---|
exchangeAppAttestAssertion |
POST /v1beta/{app=oauthClients/*}:exchangeAppAttestAssertion Accepts an App Attest assertion and an artifact previously obtained from ExchangeAppAttestAttestation and verifies those with Apple. |
exchangeAppAttestAttestation |
POST /v1beta/{app=oauthClients/*}:exchangeAppAttestAttestation Accepts an App Attest CBOR attestation and verifies it with Apple using your preconfigured team and bundle IDs. |
exchangeDebugToken |
POST /v1beta/{app=oauthClients/*}:exchangeDebugToken Validates a debug token secret that you have previously created using CreateDebugToken . |
generateAppAttestChallenge |
POST /v1beta/{app=oauthClients/*}:generateAppAttestChallenge Generates a challenge that protects the integrity of an immediately following call to ExchangeAppAttestAttestation or ExchangeAppAttestAssertion . |
REST Resource: v1beta.projects
Methods | |
---|---|
verifyAppCheckToken |
POST /v1beta/{project=projects/*}:verifyAppCheckToken Verifies the given App Check token and returns token usage signals that callers may act upon. |
REST Resource: v1beta.projects.apps
Methods | |
---|---|
exchangeAppAttestAssertion |
POST /v1beta/{app=projects/*/apps/*}:exchangeAppAttestAssertion Accepts an App Attest assertion and an artifact previously obtained from ExchangeAppAttestAttestation and verifies those with Apple. |
exchangeAppAttestAttestation |
POST /v1beta/{app=projects/*/apps/*}:exchangeAppAttestAttestation Accepts an App Attest CBOR attestation and verifies it with Apple using your preconfigured team and bundle IDs. |
exchangeCustomToken |
POST /v1beta/{app=projects/*/apps/*}:exchangeCustomToken Validates a custom token signed using your project's Admin SDK service account credentials. |
exchangeDebugToken |
POST /v1beta/{app=projects/*/apps/*}:exchangeDebugToken Validates a debug token secret that you have previously created using CreateDebugToken . |
exchangeDeviceCheckToken |
POST /v1beta/{app=projects/*/apps/*}:exchangeDeviceCheckToken Accepts a device_token issued by DeviceCheck, and attempts to validate it with Apple. |
exchangePlayIntegrityToken |
POST /v1beta/{app=projects/*/apps/*}:exchangePlayIntegrityToken Validates an integrity verdict response token from Play Integrity. |
exchangeRecaptchaEnterpriseToken |
POST /v1beta/{app=projects/*/apps/*}:exchangeRecaptchaEnterpriseToken Validates a reCAPTCHA Enterprise response token. |
exchangeRecaptchaToken |
POST /v1beta/{app=projects/*/apps/*}:exchangeRecaptchaToken Validates a reCAPTCHA v3 response token. |
exchangeRecaptchaV3Token |
POST /v1beta/{app=projects/*/apps/*}:exchangeRecaptchaV3Token Validates a reCAPTCHA v3 response token. |
exchangeSafetyNetToken |
POST /v1beta/{app=projects/*/apps/*}:exchangeSafetyNetToken Validates a SafetyNet token. |
generateAppAttestChallenge |
POST /v1beta/{app=projects/*/apps/*}:generateAppAttestChallenge Generates a challenge that protects the integrity of an immediately following call to ExchangeAppAttestAttestation or ExchangeAppAttestAssertion . |
generatePlayIntegrityChallenge |
POST /v1beta/{app=projects/*/apps/*}:generatePlayIntegrityChallenge Generates a challenge that protects the integrity of an immediately following integrity verdict request to the Play Integrity API. |
REST Resource: v1beta.projects.apps.appAttestConfig
Methods | |
---|---|
batchGet |
GET /v1beta/{parent=projects/*}/apps/-/appAttestConfig:batchGet Atomically gets the AppAttestConfig s for the specified list of apps. |
get |
GET /v1beta/{name=projects/*/apps/*/appAttestConfig} Gets the AppAttestConfig for the specified app. |
patch |
PATCH /v1beta/{appAttestConfig.name=projects/*/apps/*/appAttestConfig} Updates the AppAttestConfig for the specified app. |
REST Resource: v1beta.projects.apps.debugTokens
Methods | |
---|---|
create |
POST /v1beta/{parent=projects/*/apps/*}/debugTokens Creates a new DebugToken for the specified app. |
delete |
DELETE /v1beta/{name=projects/*/apps/*/debugTokens/*} Deletes the specified DebugToken . |
get |
GET /v1beta/{name=projects/*/apps/*/debugTokens/*} Gets the specified DebugToken . |
list |
GET /v1beta/{parent=projects/*/apps/*}/debugTokens Lists all DebugToken s for the specified app. |
patch |
PATCH /v1beta/{debugToken.name=projects/*/apps/*/debugTokens/*} Updates the specified DebugToken . |
REST Resource: v1beta.projects.apps.deviceCheckConfig
Methods | |
---|---|
batchGet |
GET /v1beta/{parent=projects/*}/apps/-/deviceCheckConfig:batchGet Atomically gets the DeviceCheckConfig s for the specified list of apps. |
get |
GET /v1beta/{name=projects/*/apps/*/deviceCheckConfig} Gets the DeviceCheckConfig for the specified app. |
patch |
PATCH /v1beta/{deviceCheckConfig.name=projects/*/apps/*/deviceCheckConfig} Updates the DeviceCheckConfig for the specified app. |
REST Resource: v1beta.projects.apps.playIntegrityConfig
Methods | |
---|---|
batchGet |
GET /v1beta/{parent=projects/*}/apps/-/playIntegrityConfig:batchGet Atomically gets the PlayIntegrityConfig s for the specified list of apps. |
get |
GET /v1beta/{name=projects/*/apps/*/playIntegrityConfig} Gets the PlayIntegrityConfig for the specified app. |
patch |
PATCH /v1beta/{playIntegrityConfig.name=projects/*/apps/*/playIntegrityConfig} Updates the PlayIntegrityConfig for the specified app. |
REST Resource: v1beta.projects.apps.recaptchaConfig
Methods | |
---|---|
batchGet |
GET /v1beta/{parent=projects/*}/apps/-/recaptchaConfig:batchGet Atomically gets the RecaptchaConfig s for the specified list of apps. |
get |
GET /v1beta/{name=projects/*/apps/*/recaptchaConfig} Gets the RecaptchaConfig for the specified app. |
patch |
PATCH /v1beta/{recaptchaConfig.name=projects/*/apps/*/recaptchaConfig} Updates the RecaptchaConfig for the specified app. |
REST Resource: v1beta.projects.apps.recaptchaEnterpriseConfig
Methods | |
---|---|
batchGet |
GET /v1beta/{parent=projects/*}/apps/-/recaptchaEnterpriseConfig:batchGet Atomically gets the RecaptchaEnterpriseConfig s for the specified list of apps. |
get |
GET /v1beta/{name=projects/*/apps/*/recaptchaEnterpriseConfig} Gets the RecaptchaEnterpriseConfig for the specified app. |
patch |
PATCH /v1beta/{recaptchaEnterpriseConfig.name=projects/*/apps/*/recaptchaEnterpriseConfig} Updates the RecaptchaEnterpriseConfig for the specified app. |
REST Resource: v1beta.projects.apps.recaptchaV3Config
Methods | |
---|---|
batchGet |
GET /v1beta/{parent=projects/*}/apps/-/recaptchaV3Config:batchGet Atomically gets the RecaptchaV3Config s for the specified list of apps. |
get |
GET /v1beta/{name=projects/*/apps/*/recaptchaV3Config} Gets the RecaptchaV3Config for the specified app. |
patch |
PATCH /v1beta/{recaptchaV3Config.name=projects/*/apps/*/recaptchaV3Config} Updates the RecaptchaV3Config for the specified app. |
REST Resource: v1beta.projects.apps.safetyNetConfig
Methods | |
---|---|
batchGet |
GET /v1beta/{parent=projects/*}/apps/-/safetyNetConfig:batchGet Atomically gets the SafetyNetConfig s for the specified list of apps. |
get |
GET /v1beta/{name=projects/*/apps/*/safetyNetConfig} Gets the SafetyNetConfig for the specified app. |
patch |
PATCH /v1beta/{safetyNetConfig.name=projects/*/apps/*/safetyNetConfig} Updates the SafetyNetConfig for the specified app. |
REST Resource: v1beta.projects.services
Methods | |
---|---|
batchUpdate |
POST /v1beta/{parent=projects/*}/services:batchUpdate Atomically updates the specified Service configurations. |
get |
GET /v1beta/{name=projects/*/services/*} Gets the Service configuration for the specified service name. |
list |
GET /v1beta/{parent=projects/*}/services Lists all Service configurations for the specified project. |
patch |
PATCH /v1beta/{service.name=projects/*/services/*} Updates the specified Service configuration. |
REST Resource: v1beta.projects.services.resourcePolicies
Methods | |
---|---|
batchUpdate |
POST /v1beta/{parent=projects/*/services/*}/resourcePolicies:batchUpdate Atomically updates the specified ResourcePolicy configurations. |
create |
POST /v1beta/{parent=projects/*/services/*}/resourcePolicies Creates the specified ResourcePolicy configuration. |
delete |
DELETE /v1beta/{name=projects/*/services/*/resourcePolicies/*} Deletes the specified ResourcePolicy configuration. |
get |
GET /v1beta/{name=projects/*/services/*/resourcePolicies/*} Gets the requested ResourcePolicy configuration. |
list |
GET /v1beta/{parent=projects/*/services/*}/resourcePolicies Lists all ResourcePolicy configurations for the specified project and service. |
patch |
PATCH /v1beta/{resourcePolicy.name=projects/*/services/*/resourcePolicies/*} Updates the specified ResourcePolicy configuration. |
REST Resource: v1.jwks
Methods | |
---|---|
get |
GET /v1/{name} Returns a public JWK set as specified by RFC 7517 that can be used to verify App Check tokens. |
REST Resource: v1.oauthClients
Methods | |
---|---|
exchangeAppAttestAssertion |
POST /v1/{app=oauthClients/*}:exchangeAppAttestAssertion Accepts an App Attest assertion and an artifact previously obtained from ExchangeAppAttestAttestation and verifies those with Apple. |
exchangeAppAttestAttestation |
POST /v1/{app=oauthClients/*}:exchangeAppAttestAttestation Accepts an App Attest CBOR attestation and verifies it with Apple using your preconfigured team and bundle IDs. |
exchangeDebugToken |
POST /v1/{app=oauthClients/*}:exchangeDebugToken Validates a debug token secret that you have previously created using CreateDebugToken . |
generateAppAttestChallenge |
POST /v1/{app=oauthClients/*}:generateAppAttestChallenge Generates a challenge that protects the integrity of an immediately following call to ExchangeAppAttestAttestation or ExchangeAppAttestAssertion . |
REST Resource: v1.projects.apps
Methods | |
---|---|
exchangeAppAttestAssertion |
POST /v1/{app=projects/*/apps/*}:exchangeAppAttestAssertion Accepts an App Attest assertion and an artifact previously obtained from ExchangeAppAttestAttestation and verifies those with Apple. |
exchangeAppAttestAttestation |
POST /v1/{app=projects/*/apps/*}:exchangeAppAttestAttestation Accepts an App Attest CBOR attestation and verifies it with Apple using your preconfigured team and bundle IDs. |
exchangeCustomToken |
POST /v1/{app=projects/*/apps/*}:exchangeCustomToken Validates a custom token signed using your project's Admin SDK service account credentials. |
exchangeDebugToken |
POST /v1/{app=projects/*/apps/*}:exchangeDebugToken Validates a debug token secret that you have previously created using CreateDebugToken . |
exchangeDeviceCheckToken |
POST /v1/{app=projects/*/apps/*}:exchangeDeviceCheckToken Accepts a device_token issued by DeviceCheck, and attempts to validate it with Apple. |
exchangePlayIntegrityToken |
POST /v1/{app=projects/*/apps/*}:exchangePlayIntegrityToken Validates an integrity verdict response token from Play Integrity. |
exchangeRecaptchaEnterpriseToken |
POST /v1/{app=projects/*/apps/*}:exchangeRecaptchaEnterpriseToken Validates a reCAPTCHA Enterprise response token. |
exchangeRecaptchaV3Token |
POST /v1/{app=projects/*/apps/*}:exchangeRecaptchaV3Token Validates a reCAPTCHA v3 response token. |
exchangeSafetyNetToken |
POST /v1/{app=projects/*/apps/*}:exchangeSafetyNetToken Validates a SafetyNet token. |
generateAppAttestChallenge |
POST /v1/{app=projects/*/apps/*}:generateAppAttestChallenge Generates a challenge that protects the integrity of an immediately following call to ExchangeAppAttestAttestation or ExchangeAppAttestAssertion . |
generatePlayIntegrityChallenge |
POST /v1/{app=projects/*/apps/*}:generatePlayIntegrityChallenge Generates a challenge that protects the integrity of an immediately following integrity verdict request to the Play Integrity API. |
REST Resource: v1.projects.apps.appAttestConfig
Methods | |
---|---|
batchGet |
GET /v1/{parent=projects/*}/apps/-/appAttestConfig:batchGet Atomically gets the AppAttestConfig s for the specified list of apps. |
get |
GET /v1/{name=projects/*/apps/*/appAttestConfig} Gets the AppAttestConfig for the specified app. |
patch |
PATCH /v1/{appAttestConfig.name=projects/*/apps/*/appAttestConfig} Updates the AppAttestConfig for the specified app. |
REST Resource: v1.projects.apps.debugTokens
Methods | |
---|---|
create |
POST /v1/{parent=projects/*/apps/*}/debugTokens Creates a new DebugToken for the specified app. |
delete |
DELETE /v1/{name=projects/*/apps/*/debugTokens/*} Deletes the specified DebugToken . |
get |
GET /v1/{name=projects/*/apps/*/debugTokens/*} Gets the specified DebugToken . |
list |
GET /v1/{parent=projects/*/apps/*}/debugTokens Lists all DebugToken s for the specified app. |
patch |
PATCH /v1/{debugToken.name=projects/*/apps/*/debugTokens/*} Updates the specified DebugToken . |
REST Resource: v1.projects.apps.deviceCheckConfig
Methods | |
---|---|
batchGet |
GET /v1/{parent=projects/*}/apps/-/deviceCheckConfig:batchGet Atomically gets the DeviceCheckConfig s for the specified list of apps. |
get |
GET /v1/{name=projects/*/apps/*/deviceCheckConfig} Gets the DeviceCheckConfig for the specified app. |
patch |
PATCH /v1/{deviceCheckConfig.name=projects/*/apps/*/deviceCheckConfig} Updates the DeviceCheckConfig for the specified app. |
REST Resource: v1.projects.apps.playIntegrityConfig
Methods | |
---|---|
batchGet |
GET /v1/{parent=projects/*}/apps/-/playIntegrityConfig:batchGet Atomically gets the PlayIntegrityConfig s for the specified list of apps. |
get |
GET /v1/{name=projects/*/apps/*/playIntegrityConfig} Gets the PlayIntegrityConfig for the specified app. |
patch |
PATCH /v1/{playIntegrityConfig.name=projects/*/apps/*/playIntegrityConfig} Updates the PlayIntegrityConfig for the specified app. |
REST Resource: v1.projects.apps.recaptchaEnterpriseConfig
Methods | |
---|---|
batchGet |
GET /v1/{parent=projects/*}/apps/-/recaptchaEnterpriseConfig:batchGet Atomically gets the RecaptchaEnterpriseConfig s for the specified list of apps. |
get |
GET /v1/{name=projects/*/apps/*/recaptchaEnterpriseConfig} Gets the RecaptchaEnterpriseConfig for the specified app. |
patch |
PATCH /v1/{recaptchaEnterpriseConfig.name=projects/*/apps/*/recaptchaEnterpriseConfig} Updates the RecaptchaEnterpriseConfig for the specified app. |
REST Resource: v1.projects.apps.recaptchaV3Config
Methods | |
---|---|
batchGet |
GET /v1/{parent=projects/*}/apps/-/recaptchaV3Config:batchGet Atomically gets the RecaptchaV3Config s for the specified list of apps. |
get |
GET /v1/{name=projects/*/apps/*/recaptchaV3Config} Gets the RecaptchaV3Config for the specified app. |
patch |
PATCH /v1/{recaptchaV3Config.name=projects/*/apps/*/recaptchaV3Config} Updates the RecaptchaV3Config for the specified app. |
REST Resource: v1.projects.apps.safetyNetConfig
Methods | |
---|---|
batchGet |
GET /v1/{parent=projects/*}/apps/-/safetyNetConfig:batchGet Atomically gets the SafetyNetConfig s for the specified list of apps. |
get |
GET /v1/{name=projects/*/apps/*/safetyNetConfig} Gets the SafetyNetConfig for the specified app. |
patch |
PATCH /v1/{safetyNetConfig.name=projects/*/apps/*/safetyNetConfig} Updates the SafetyNetConfig for the specified app. |
REST Resource: v1.projects.services
Methods | |
---|---|
batchUpdate |
POST /v1/{parent=projects/*}/services:batchUpdate Atomically updates the specified Service configurations. |
get |
GET /v1/{name=projects/*/services/*} Gets the Service configuration for the specified service name. |
list |
GET /v1/{parent=projects/*}/services Lists all Service configurations for the specified project. |
patch |
PATCH /v1/{service.name=projects/*/services/*} Updates the specified Service configuration. |
REST Resource: v1.projects.services.resourcePolicies
Methods | |
---|---|
batchUpdate |
POST /v1/{parent=projects/*/services/*}/resourcePolicies:batchUpdate Atomically updates the specified ResourcePolicy configurations. |
create |
POST /v1/{parent=projects/*/services/*}/resourcePolicies Creates the specified ResourcePolicy configuration. |
delete |
DELETE /v1/{name=projects/*/services/*/resourcePolicies/*} Deletes the specified ResourcePolicy configuration. |
get |
GET /v1/{name=projects/*/services/*/resourcePolicies/*} Gets the requested ResourcePolicy configuration. |
list |
GET /v1/{parent=projects/*/services/*}/resourcePolicies Lists all ResourcePolicy configurations for the specified project and service. |
patch |
PATCH /v1/{resourcePolicy.name=projects/*/services/*/resourcePolicies/*} Updates the specified ResourcePolicy configuration. |