Skip to content

Commit 681b285

Browse files
feat(digitalassetlinks): update the API
#### digitalassetlinks:v1 The following keys were added: - resources.assetlinks.methods.check.parameters.returnRelationExtensions.description - resources.assetlinks.methods.check.parameters.returnRelationExtensions.location - resources.assetlinks.methods.check.parameters.returnRelationExtensions.type - resources.statements.methods.list.parameters.returnRelationExtensions.description - resources.statements.methods.list.parameters.returnRelationExtensions.location - resources.statements.methods.list.parameters.returnRelationExtensions.type - schemas.BulkCheckRequest.properties.returnRelationExtensions.description - schemas.BulkCheckRequest.properties.returnRelationExtensions.type - schemas.CheckResponse.properties.relationExtensions.description - schemas.CheckResponse.properties.relationExtensions.items.additionalProperties.description - schemas.CheckResponse.properties.relationExtensions.items.additionalProperties.type - schemas.CheckResponse.properties.relationExtensions.items.type - schemas.CheckResponse.properties.relationExtensions.type - schemas.Statement.properties.relationExtensions.additionalProperties.description - schemas.Statement.properties.relationExtensions.additionalProperties.type - schemas.Statement.properties.relationExtensions.description - schemas.Statement.properties.relationExtensions.type
1 parent 7cb8ad7 commit 681b285

File tree

2 files changed

+54
-1
lines changed

2 files changed

+54
-1
lines changed

‎discovery/digitalassetlinks-v1.json

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,11 @@
124124
"location": "query",
125125
"type": "string"
126126
},
127+
"returnRelationExtensions": {
128+
"description": "Whether to return relation_extensions payloads specified in the source Digital Asset Links statements linking the requested source and target assets by the requested relation type. If this is set to `false` (default), relation_extensions specified will not be returned, even if they are specified in the DAL statement file. If set to `true`, the API will propagate any and all relation_extensions, across statements, linking the source and target assets by the requested relation type, if specified in the DAL statement file.",
129+
"location": "query",
130+
"type": "boolean"
131+
},
127132
"source.androidApp.certificate.sha256Fingerprint": {
128133
"description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM certificate, it can be acquired like this: $ keytool -printcert -file $CERTFILE | grep SHA256: SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\ 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5 or like this: $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256 SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\ 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5 In this example, the contents of this field would be `14:6D:E9:83:C5:73: 06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF: 44:E5`. If these tools are not available to you, you can convert the PEM certificate into the DER format, compute the SHA-256 hash of that string and represent the result as a hexstring (that is, uppercase hexadecimal representations of each octet, separated by colons).",
129134
"location": "query",
@@ -176,6 +181,11 @@
176181
"location": "query",
177182
"type": "string"
178183
},
184+
"returnRelationExtensions": {
185+
"description": "Whether to return any relation_extensions payloads specified in the source digital asset links statements. If this is set to `false` (default), relation_extensions specified will not be returned, even if they are specified in the DAL statement file. If set to `true`, the API will propagate relation_extensions associated with each statement's relation type, if specified in the DAL statement file.",
186+
"location": "query",
187+
"type": "boolean"
188+
},
179189
"source.androidApp.certificate.sha256Fingerprint": {
180190
"description": "The uppercase SHA-265 fingerprint of the certificate. From the PEM certificate, it can be acquired like this: $ keytool -printcert -file $CERTFILE | grep SHA256: SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \\ 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5 or like this: $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256 SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \\ 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5 In this example, the contents of this field would be `14:6D:E9:83:C5:73: 06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF: 44:E5`. If these tools are not available to you, you can convert the PEM certificate into the DER format, compute the SHA-256 hash of that string and represent the result as a hexstring (that is, uppercase hexadecimal representations of each octet, separated by colons).",
181191
"location": "query",
@@ -200,7 +210,7 @@
200210
}
201211
}
202212
},
203-
"revision": "20250211",
213+
"revision": "20250405",
204214
"rootUrl": "https://digitalassetlinks.googleapis.com/",
205215
"schemas": {
206216
"AndroidAppAsset": {
@@ -249,6 +259,10 @@
249259
"$ref": "Asset",
250260
"description": "If specified, will be used in any given template statement that doesn���t specify a target."
251261
},
262+
"returnRelationExtensions": {
263+
"description": "Same configuration as in CheckRequest; all statement checks will use the same configuration.",
264+
"type": "boolean"
265+
},
252266
"statements": {
253267
"description": "List of statements to check. For each statement, you can omit a field if the corresponding default_* field below was supplied. Minimum 1 statement; maximum 1,000 statements. Any additional statements will be ignored.",
254268
"items": {
@@ -363,6 +377,17 @@
363377
"description": "From serving time, how much longer the response should be considered valid barring further updates. REQUIRED",
364378
"format": "google-duration",
365379
"type": "string"
380+
},
381+
"relationExtensions": {
382+
"description": "Statements may specify relation level extensions/payloads to express more details when declaring permissions to grant from the source asset to the target asset. When requested, the API will return relation_extensions specified in any and all statements linking the requested source and target assets by the relation specified in the request.",
383+
"items": {
384+
"additionalProperties": {
385+
"description": "Properties of the object.",
386+
"type": "any"
387+
},
388+
"type": "object"
389+
},
390+
"type": "array"
366391
}
367392
},
368393
"type": "object"
@@ -431,6 +456,14 @@
431456
"description": "The relation identifies the use of the statement as intended by the source asset's owner (that is, the person or entity who issued the statement). Every complete statement has a relation. We identify relations with strings of the format `/`, where `` must be one of a set of pre-defined purpose categories, and `` is a free-form lowercase alphanumeric string that describes the specific use case of the statement. Refer to [our API documentation](/digital-asset-links/v1/relation-strings) for the current list of supported relations. Example: `delegate_permission/common.handle_all_urls` REQUIRED",
432457
"type": "string"
433458
},
459+
"relationExtensions": {
460+
"additionalProperties": {
461+
"description": "Properties of the object.",
462+
"type": "any"
463+
},
464+
"description": "Statements may specify relation level extensions/payloads to express more details when declaring permissions to grant from the source asset to the target asset. These relation extensions should be specified in the `relation_extensions` object, keyed by the relation type they're associated with. { relation: [\"delegate_permission/common.handle_all_urls\"], target: {...}, relation_extensions: { \"delegate_permission/common.handle_all_urls\": { ...handle_all_urls specific payload specified here... } } } When requested, and specified in the statement file, the API will return relation_extensions associated with the statement's relation type. i.e. the API will only return relation_extensions specified for \"delegate_permission/common.handle_all_urls\" if this statement object's relation type is \"delegate_permission/common.handle_all_urls\".",
465+
"type": "object"
466+
},
434467
"source": {
435468
"$ref": "Asset",
436469
"description": "Every statement has a source asset. REQUIRED"

‎src/apis/digitalassetlinks/v1.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,10 @@ export namespace digitalassetlinks_v1 {
168168
* If specified, will be used in any given template statement that doesn’t specify a target.
169169
*/
170170
defaultTarget?: Schema$Asset;
171+
/**
172+
* Same configuration as in CheckRequest; all statement checks will use the same configuration.
173+
*/
174+
returnRelationExtensions?: boolean | null;
171175
/**
172176
* List of statements to check. For each statement, you can omit a field if the corresponding default_* field below was supplied. Minimum 1 statement; maximum 1,000 statements. Any additional statements will be ignored.
173177
*/
@@ -215,6 +219,10 @@ export namespace digitalassetlinks_v1 {
215219
* From serving time, how much longer the response should be considered valid barring further updates. REQUIRED
216220
*/
217221
maxAge?: string | null;
222+
/**
223+
* Statements may specify relation level extensions/payloads to express more details when declaring permissions to grant from the source asset to the target asset. When requested, the API will return relation_extensions specified in any and all statements linking the requested source and target assets by the relation specified in the request.
224+
*/
225+
relationExtensions?: Array<{[key: string]: any}> | null;
218226
}
219227
/**
220228
* Response message for the List call.
@@ -245,6 +253,10 @@ export namespace digitalassetlinks_v1 {
245253
* The relation identifies the use of the statement as intended by the source asset's owner (that is, the person or entity who issued the statement). Every complete statement has a relation. We identify relations with strings of the format `/`, where `` must be one of a set of pre-defined purpose categories, and `` is a free-form lowercase alphanumeric string that describes the specific use case of the statement. Refer to [our API documentation](/digital-asset-links/v1/relation-strings) for the current list of supported relations. Example: `delegate_permission/common.handle_all_urls` REQUIRED
246254
*/
247255
relation?: string | null;
256+
/**
257+
* Statements may specify relation level extensions/payloads to express more details when declaring permissions to grant from the source asset to the target asset. These relation extensions should be specified in the `relation_extensions` object, keyed by the relation type they're associated with. { relation: ["delegate_permission/common.handle_all_urls"], target: {...\}, relation_extensions: { "delegate_permission/common.handle_all_urls": { ...handle_all_urls specific payload specified here... \} \} \} When requested, and specified in the statement file, the API will return relation_extensions associated with the statement's relation type. i.e. the API will only return relation_extensions specified for "delegate_permission/common.handle_all_urls" if this statement object's relation type is "delegate_permission/common.handle_all_urls".
258+
*/
259+
relationExtensions?: {[key: string]: any} | null;
248260
/**
249261
* Every statement has a source asset. REQUIRED
250262
*/
@@ -480,6 +492,10 @@ export namespace digitalassetlinks_v1 {
480492
* Query string for the relation. We identify relations with strings of the format `/`, where `` must be one of a set of pre-defined purpose categories, and `` is a free-form lowercase alphanumeric string that describes the specific use case of the statement. Refer to [our API documentation](/digital-asset-links/v1/relation-strings) for the current list of supported relations. For a query to match an asset link, both the query's and the asset link's relation strings must match exactly. Example: A query with relation `delegate_permission/common.handle_all_urls` matches an asset link with relation `delegate_permission/common.handle_all_urls`.
481493
*/
482494
relation?: string;
495+
/**
496+
* Whether to return relation_extensions payloads specified in the source Digital Asset Links statements linking the requested source and target assets by the requested relation type. If this is set to `false` (default), relation_extensions specified will not be returned, even if they are specified in the DAL statement file. If set to `true`, the API will propagate any and all relation_extensions, across statements, linking the source and target assets by the requested relation type, if specified in the DAL statement file.
497+
*/
498+
returnRelationExtensions?: boolean;
483499
/**
484500
* The uppercase SHA-265 fingerprint of the certificate. From the PEM certificate, it can be acquired like this: $ keytool -printcert -file $CERTFILE | grep SHA256: SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \ 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5 or like this: $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256 SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \ 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5 In this example, the contents of this field would be `14:6D:E9:83:C5:73: 06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF: 44:E5`. If these tools are not available to you, you can convert the PEM certificate into the DER format, compute the SHA-256 hash of that string and represent the result as a hexstring (that is, uppercase hexadecimal representations of each octet, separated by colons).
485501
*/
@@ -606,6 +622,10 @@ export namespace digitalassetlinks_v1 {
606622
* Use only associations that match the specified relation. See the [`Statement`](#Statement) message for a detailed definition of relation strings. For a query to match a statement, one of the following must be true: * both the query's and the statement's relation strings match exactly, or * the query's relation string is empty or missing. Example: A query with relation `delegate_permission/common.handle_all_urls` matches an asset link with relation `delegate_permission/common.handle_all_urls`.
607623
*/
608624
relation?: string;
625+
/**
626+
* Whether to return any relation_extensions payloads specified in the source digital asset links statements. If this is set to `false` (default), relation_extensions specified will not be returned, even if they are specified in the DAL statement file. If set to `true`, the API will propagate relation_extensions associated with each statement's relation type, if specified in the DAL statement file.
627+
*/
628+
returnRelationExtensions?: boolean;
609629
/**
610630
* The uppercase SHA-265 fingerprint of the certificate. From the PEM certificate, it can be acquired like this: $ keytool -printcert -file $CERTFILE | grep SHA256: SHA256: 14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83: \ 42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5 or like this: $ openssl x509 -in $CERTFILE -noout -fingerprint -sha256 SHA256 Fingerprint=14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64: \ 16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5 In this example, the contents of this field would be `14:6D:E9:83:C5:73: 06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF: 44:E5`. If these tools are not available to you, you can convert the PEM certificate into the DER format, compute the SHA-256 hash of that string and represent the result as a hexstring (that is, uppercase hexadecimal representations of each octet, separated by colons).
611631
*/

0 commit comments

Comments
 (0)