aboutsummaryrefslogtreecommitdiff
path: root/docs/dyn/firebaseappcheck_v1beta.projects.apps.html
blob: 8ee49460eacec3714a6767a98139548d023cd11d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
<html><body>
<style>

body, h1, h2, h3, div, span, p, pre, a {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}

body {
  font-size: 13px;
  padding: 1em;
}

h1 {
  font-size: 26px;
  margin-bottom: 1em;
}

h2 {
  font-size: 24px;
  margin-bottom: 1em;
}

h3 {
  font-size: 20px;
  margin-bottom: 1em;
  margin-top: 1em;
}

pre, code {
  line-height: 1.5;
  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}

pre {
  margin-top: 0.5em;
}

h1, h2, h3, p {
  font-family: Arial, sans serif;
}

h1, h2, h3 {
  border-bottom: solid #CCC 1px;
}

.toc_element {
  margin-top: 0.5em;
}

.firstline {
  margin-left: 2 em;
}

.method  {
  margin-top: 1em;
  border: solid 1px #CCC;
  padding: 1em;
  background: #EEE;
}

.details {
  font-weight: bold;
  font-size: 14px;
}

</style>

<h1><a href="firebaseappcheck_v1beta.html">Firebase App Check API</a> . <a href="firebaseappcheck_v1beta.projects.html">projects</a> . <a href="firebaseappcheck_v1beta.projects.apps.html">apps</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
  <code><a href="firebaseappcheck_v1beta.projects.apps.appAttestConfig.html">appAttestConfig()</a></code>
</p>
<p class="firstline">Returns the appAttestConfig Resource.</p>

<p class="toc_element">
  <code><a href="firebaseappcheck_v1beta.projects.apps.debugTokens.html">debugTokens()</a></code>
</p>
<p class="firstline">Returns the debugTokens Resource.</p>

<p class="toc_element">
  <code><a href="firebaseappcheck_v1beta.projects.apps.deviceCheckConfig.html">deviceCheckConfig()</a></code>
</p>
<p class="firstline">Returns the deviceCheckConfig Resource.</p>

<p class="toc_element">
  <code><a href="firebaseappcheck_v1beta.projects.apps.recaptchaConfig.html">recaptchaConfig()</a></code>
</p>
<p class="firstline">Returns the recaptchaConfig Resource.</p>

<p class="toc_element">
  <code><a href="firebaseappcheck_v1beta.projects.apps.safetyNetConfig.html">safetyNetConfig()</a></code>
</p>
<p class="firstline">Returns the safetyNetConfig Resource.</p>

<p class="toc_element">
  <code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
  <code><a href="#exchangeAppAttestAssertion">exchangeAppAttestAssertion(app, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Accepts a AppAttest Artifact and Assertion, and uses the developer's preconfigured auth token to verify the token with Apple. Returns an AttestationToken with the App ID as specified by the `app` field included as attested claims.</p>
<p class="toc_element">
  <code><a href="#exchangeAppAttestAttestation">exchangeAppAttestAttestation(app, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Accepts a AppAttest CBOR Attestation, and uses the developer's preconfigured team and bundle IDs to verify the token with Apple. Returns an Attestation Artifact that can later be exchanged for an AttestationToken in ExchangeAppAttestAssertion.</p>
<p class="toc_element">
  <code><a href="#exchangeCustomToken">exchangeCustomToken(app, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Validates a custom token signed using your project's Admin SDK service account credentials. If valid, returns an App Check token encapsulated in an AttestationTokenResponse.</p>
<p class="toc_element">
  <code><a href="#exchangeDebugToken">exchangeDebugToken(app, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Validates a debug token secret that you have previously created using CreateDebugToken. If valid, returns an App Check token encapsulated in an AttestationTokenResponse. Note that a restrictive quota is enforced on this method to prevent accidental exposure of the app to abuse.</p>
<p class="toc_element">
  <code><a href="#exchangeDeviceCheckToken">exchangeDeviceCheckToken(app, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Accepts a [`device_token`](https://developer.apple.com/documentation/devicecheck/dcdevice) issued by DeviceCheck, and attempts to validate it with Apple. If valid, returns an App Check token encapsulated in an AttestationTokenResponse.</p>
<p class="toc_element">
  <code><a href="#exchangeRecaptchaToken">exchangeRecaptchaToken(app, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Validates a [reCAPTCHA v3 response token](https://developers.google.com/recaptcha/docs/v3). If valid, returns an App Check token encapsulated in an AttestationTokenResponse.</p>
<p class="toc_element">
  <code><a href="#exchangeSafetyNetToken">exchangeSafetyNetToken(app, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Validates a [SafetyNet token](https://developer.android.com/training/safetynet/attestation#request-attestation-step). If valid, returns an App Check token encapsulated in an AttestationTokenResponse.</p>
<p class="toc_element">
  <code><a href="#generateAppAttestChallenge">generateAppAttestChallenge(app, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Initiates the App Attest flow by generating a challenge which will be used as a type of nonce for this attestation.</p>
<h3>Method Details</h3>
<div class="method">
    <code class="details" id="close">close()</code>
  <pre>Close httplib2 connections.</pre>
</div>

<div class="method">
    <code class="details" id="exchangeAppAttestAssertion">exchangeAppAttestAssertion(app, body=None, x__xgafv=None)</code>
  <pre>Accepts a AppAttest Artifact and Assertion, and uses the developer&#x27;s preconfigured auth token to verify the token with Apple. Returns an AttestationToken with the App ID as specified by the `app` field included as attested claims.

Args:
  app: string, Required. The full resource name to the iOS App. Format: &quot;projects/{project_id}/apps/{app_id}&quot; (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for ExchangeAppAttestAssertion
  &quot;artifact&quot;: &quot;A String&quot;, # The artifact previously returned by ExchangeAppAttestAttestation.
  &quot;assertion&quot;: &quot;A String&quot;, # The CBOR encoded assertion provided by the Apple App Attest SDK.
  &quot;challenge&quot;: &quot;A String&quot;, # A one time challenge returned by GenerateAppAttestChallenge.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Encapsulates an *App Check token*, which are used to access Firebase services protected by App Check.
  &quot;attestationToken&quot;: &quot;A String&quot;, # An App Check token. App Check tokens are signed [JWTs](https://tools.ietf.org/html/rfc7519) containing claims that identify the attested app and Firebase project. This token is used to access Firebase services protected by App Check.
  &quot;ttl&quot;: &quot;A String&quot;, # The duration from the time this token is minted until its expiration. This field is intended to ease client-side token management, since the client may have clock skew, but is still able to accurately measure a duration.
}</pre>
</div>

<div class="method">
    <code class="details" id="exchangeAppAttestAttestation">exchangeAppAttestAttestation(app, body=None, x__xgafv=None)</code>
  <pre>Accepts a AppAttest CBOR Attestation, and uses the developer&#x27;s preconfigured team and bundle IDs to verify the token with Apple. Returns an Attestation Artifact that can later be exchanged for an AttestationToken in ExchangeAppAttestAssertion.

Args:
  app: string, Required. The full resource name to the iOS App. Format: &quot;projects/{project_id}/apps/{app_id}&quot; (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for ExchangeAppAttestAttestation
  &quot;attestationStatement&quot;: &quot;A String&quot;, # Required. The App Attest statement as returned by Apple&#x27;s client-side App Attest API. This is the CBOR object returned by Apple, which will be Base64 encoded in the JSON API.
  &quot;challenge&quot;: &quot;A String&quot;, # Required. The challenge previously generated by the FAC backend.
  &quot;keyId&quot;: &quot;A String&quot;, # Required. The key ID generated by App Attest for the client app.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for ExchangeAppAttestAttestation and ExchangeAppAttestDebugAttestation
  &quot;artifact&quot;: &quot;A String&quot;, # An artifact that should be passed back during the Assertion flow.
  &quot;attestationToken&quot;: { # Encapsulates an *App Check token*, which are used to access Firebase services protected by App Check. # An attestation token which can be used to access Firebase APIs.
    &quot;attestationToken&quot;: &quot;A String&quot;, # An App Check token. App Check tokens are signed [JWTs](https://tools.ietf.org/html/rfc7519) containing claims that identify the attested app and Firebase project. This token is used to access Firebase services protected by App Check.
    &quot;ttl&quot;: &quot;A String&quot;, # The duration from the time this token is minted until its expiration. This field is intended to ease client-side token management, since the client may have clock skew, but is still able to accurately measure a duration.
  },
}</pre>
</div>

<div class="method">
    <code class="details" id="exchangeCustomToken">exchangeCustomToken(app, body=None, x__xgafv=None)</code>
  <pre>Validates a custom token signed using your project&#x27;s Admin SDK service account credentials. If valid, returns an App Check token encapsulated in an AttestationTokenResponse.

Args:
  app: string, Required. The relative resource name of the 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&#x27;s [AIP 2510](https://google.aip.dev/cloud/2510) standard. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for the ExchangeCustomToken method.
  &quot;customToken&quot;: &quot;A String&quot;, # Required. A custom token signed using your project&#x27;s Admin SDK service account credentials.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Encapsulates an *App Check token*, which are used to access Firebase services protected by App Check.
  &quot;attestationToken&quot;: &quot;A String&quot;, # An App Check token. App Check tokens are signed [JWTs](https://tools.ietf.org/html/rfc7519) containing claims that identify the attested app and Firebase project. This token is used to access Firebase services protected by App Check.
  &quot;ttl&quot;: &quot;A String&quot;, # The duration from the time this token is minted until its expiration. This field is intended to ease client-side token management, since the client may have clock skew, but is still able to accurately measure a duration.
}</pre>
</div>

<div class="method">
    <code class="details" id="exchangeDebugToken">exchangeDebugToken(app, body=None, x__xgafv=None)</code>
  <pre>Validates a debug token secret that you have previously created using CreateDebugToken. If valid, returns an App Check token encapsulated in an AttestationTokenResponse. Note that a restrictive quota is enforced on this method to prevent accidental exposure of the app to abuse.

Args:
  app: string, Required. The relative resource name of the 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&#x27;s [AIP 2510](https://google.aip.dev/cloud/2510) standard. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for the ExchangeDebugToken method.
  &quot;debugToken&quot;: &quot;A String&quot;, # Required. A debug token secret. This string must match a debug token secret previously created using CreateDebugToken.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Encapsulates an *App Check token*, which are used to access Firebase services protected by App Check.
  &quot;attestationToken&quot;: &quot;A String&quot;, # An App Check token. App Check tokens are signed [JWTs](https://tools.ietf.org/html/rfc7519) containing claims that identify the attested app and Firebase project. This token is used to access Firebase services protected by App Check.
  &quot;ttl&quot;: &quot;A String&quot;, # The duration from the time this token is minted until its expiration. This field is intended to ease client-side token management, since the client may have clock skew, but is still able to accurately measure a duration.
}</pre>
</div>

<div class="method">
    <code class="details" id="exchangeDeviceCheckToken">exchangeDeviceCheckToken(app, body=None, x__xgafv=None)</code>
  <pre>Accepts a [`device_token`](https://developer.apple.com/documentation/devicecheck/dcdevice) issued by DeviceCheck, and attempts to validate it with Apple. If valid, returns an App Check token encapsulated in an AttestationTokenResponse.

Args:
  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&#x27;s [AIP 2510](https://google.aip.dev/cloud/2510) standard. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for the ExchangeDeviceCheckToken method.
  &quot;deviceToken&quot;: &quot;A String&quot;, # Required. The `device_token` as returned by Apple&#x27;s client-side [DeviceCheck API](https://developer.apple.com/documentation/devicecheck/dcdevice). This is the Base64 encoded `Data` (Swift) or `NSData` (ObjC) object.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Encapsulates an *App Check token*, which are used to access Firebase services protected by App Check.
  &quot;attestationToken&quot;: &quot;A String&quot;, # An App Check token. App Check tokens are signed [JWTs](https://tools.ietf.org/html/rfc7519) containing claims that identify the attested app and Firebase project. This token is used to access Firebase services protected by App Check.
  &quot;ttl&quot;: &quot;A String&quot;, # The duration from the time this token is minted until its expiration. This field is intended to ease client-side token management, since the client may have clock skew, but is still able to accurately measure a duration.
}</pre>
</div>

<div class="method">
    <code class="details" id="exchangeRecaptchaToken">exchangeRecaptchaToken(app, body=None, x__xgafv=None)</code>
  <pre>Validates a [reCAPTCHA v3 response token](https://developers.google.com/recaptcha/docs/v3). If valid, returns an App Check token encapsulated in an AttestationTokenResponse.

Args:
  app: string, Required. The relative resource name of the web 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&#x27;s [AIP 2510](https://google.aip.dev/cloud/2510) standard. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for the ExchangeRecaptchaToken method.
  &quot;recaptchaToken&quot;: &quot;A String&quot;, # Required. The reCAPTCHA token as returned by the [reCAPTCHA v3 JavaScript API](https://developers.google.com/recaptcha/docs/v3).
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Encapsulates an *App Check token*, which are used to access Firebase services protected by App Check.
  &quot;attestationToken&quot;: &quot;A String&quot;, # An App Check token. App Check tokens are signed [JWTs](https://tools.ietf.org/html/rfc7519) containing claims that identify the attested app and Firebase project. This token is used to access Firebase services protected by App Check.
  &quot;ttl&quot;: &quot;A String&quot;, # The duration from the time this token is minted until its expiration. This field is intended to ease client-side token management, since the client may have clock skew, but is still able to accurately measure a duration.
}</pre>
</div>

<div class="method">
    <code class="details" id="exchangeSafetyNetToken">exchangeSafetyNetToken(app, body=None, x__xgafv=None)</code>
  <pre>Validates a [SafetyNet token](https://developer.android.com/training/safetynet/attestation#request-attestation-step). If valid, returns an App Check token encapsulated in an AttestationTokenResponse.

Args:
  app: string, Required. The relative resource name of the Android 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&#x27;s [AIP 2510](https://google.aip.dev/cloud/2510) standard. (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for the ExchangeSafetyNetToken method.
  &quot;safetyNetToken&quot;: &quot;A String&quot;, # Required. The [SafetyNet attestation response](https://developer.android.com/training/safetynet/attestation#request-attestation-step) issued to your app.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Encapsulates an *App Check token*, which are used to access Firebase services protected by App Check.
  &quot;attestationToken&quot;: &quot;A String&quot;, # An App Check token. App Check tokens are signed [JWTs](https://tools.ietf.org/html/rfc7519) containing claims that identify the attested app and Firebase project. This token is used to access Firebase services protected by App Check.
  &quot;ttl&quot;: &quot;A String&quot;, # The duration from the time this token is minted until its expiration. This field is intended to ease client-side token management, since the client may have clock skew, but is still able to accurately measure a duration.
}</pre>
</div>

<div class="method">
    <code class="details" id="generateAppAttestChallenge">generateAppAttestChallenge(app, body=None, x__xgafv=None)</code>
  <pre>Initiates the App Attest flow by generating a challenge which will be used as a type of nonce for this attestation.

Args:
  app: string, Required. The full resource name to the iOS App. Format: &quot;projects/{project_id}/apps/{app_id}&quot; (required)
  body: object, The request body.
    The object takes the form of:

{ # Request message for GenerateAppAttestChallenge
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response object for GenerateAppAttestChallenge
  &quot;challenge&quot;: &quot;A String&quot;, # A one time use challenge for the client to pass to Apple&#x27;s App Attest API.
  &quot;ttl&quot;: &quot;A String&quot;, # The duration from the time this challenge is minted until it is expired. This field is intended to ease client-side token management, since the device may have clock skew, but is still able to accurately measure a duration. This expiration is intended to minimize the replay window within which a single challenge may be reused. See AIP 142 for naming of this field.
}</pre>
</div>

</body></html>