Point d’entrée des secrets
Un secret est une ressource qui n’existe que dans les propriétés de transfert d’événements (propriétés avec un attribut platform
défini sur edge
). Ils permettent au transfert d’événements de s’authentifier sur un autre système pour un échange de données sécurisé.
Ce guide vous explique comment effectuer des appels au point d’entrée /secrets
dans l’API Reactor. Pour une explication détaillée des différents types de secrets et de leur utilisation, reportez-vous à la présentation générale sur les secrets avant de revenir à ce guide.
Prise en main
Le point d’entrée utilisé dans ce guide fait partie de lʼAPI Reactor. Avant de poursuivre, consultez le guide de prise en main pour obtenir des informations importantes sur la procédure à suivre pour s’authentifier auprès de l’API.
Récupération d’une liste de secrets pour une propriété list-property
Vous pouvez répertorier les secrets appartenant à une propriété en effectuant une requête GET.
Format d’API
GET /properties/{PROPERTY_ID}/secrets
{PROPERTY_ID}
Requête
curl -X GET \
https://reactor.adobe.io/properties/PRe005d921bb724bc88c3ff28e3e916f04/secrets \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json'
Réponse
Une réponse réussie renvoie une liste de secrets appartenant à la propriété.
{
"data": [
{
"id": "SE8bd20bd5d16b49ee9d925929e292526c",
"type": "secrets",
"attributes": {
"created_at": "2021-07-16T22:29:29.777Z",
"updated_at": "2021-07-16T22:29:29.777Z",
"name": "Example Secret",
"type_of": "token",
"activated_at": null,
"expires_at": null,
"refresh_at": null,
"status": "pending",
"credentials": {
}
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE8bd20bd5d16b49ee9d925929e292526c/property"
},
"data": {
"id": "PRe005d921bb724bc88c3ff28e3e916f04",
"type": "properties"
}
},
"environment": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE8bd20bd5d16b49ee9d925929e292526c/environment"
},
"data": {
"id": "EN80ad9efbf4ff4f15bebd770613378a75",
"type": "environments"
},
"meta": {
"stage": "development"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE8bd20bd5d16b49ee9d925929e292526c/notes"
}
}
},
"links": {
"self": "https://reactor.adobe.io/secrets/SE8bd20bd5d16b49ee9d925929e292526c",
"property": "https://reactor.adobe.io/secrets/SE8bd20bd5d16b49ee9d925929e292526c/property"
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 1
}
}
}
Récupération d’une liste de secrets pour un environnement list-environment
Vous pouvez répertorier les secrets appartenant à un environnement en effectuant une requête GET.
Format d’API
GET /environments/{ENVIRONMENT_ID}/secrets
{ENVIRONMENT_ID}
Requête
curl -X GET \
https://reactor.adobe.io/environments/EN0a1b00749daf4ff48a34d2ec37286aa7/secrets \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json'
Réponse
Une réponse réussie renvoie une liste de secrets appartenant à l’environnement.
{
"data": [
{
"id": "SE57b5ea69acde4595825b85befd1675b3",
"type": "secrets",
"attributes": {
"created_at": "2021-07-16T22:29:35.447Z",
"updated_at": "2021-07-16T22:29:35.447Z",
"name": "Example Secret",
"type_of": "token",
"activated_at": null,
"expires_at": null,
"refresh_at": null,
"status": "pending",
"credentials": {
}
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE57b5ea69acde4595825b85befd1675b3/property"
},
"data": {
"id": "PRb302ca3557334c13b130da719222ec97",
"type": "properties"
}
},
"environment": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE57b5ea69acde4595825b85befd1675b3/environment"
},
"data": {
"id": "EN0a1b00749daf4ff48a34d2ec37286aa7",
"type": "environments"
},
"meta": {
"stage": "development"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE57b5ea69acde4595825b85befd1675b3/notes"
}
}
},
"links": {
"self": "https://reactor.adobe.io/secrets/SE57b5ea69acde4595825b85befd1675b3",
"property": "https://reactor.adobe.io/secrets/SE57b5ea69acde4595825b85befd1675b3/property"
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 1
}
}
}
Recherche dʼun secret lookup
Vous pouvez rechercher un secret en fournissant son identifiant dans le chemin d’accès d’une requête GET.
Format d’API
GET /secrets/{SECRET_ID}
{SECRET_ID}
Requête
curl -X GET \
https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json'
Réponse
Une réponse réussie renvoie les détails du secret.
{
"data": {
"id": "SEa3756b962e964fadb61e31df1f7dd5a3",
"type": "secrets",
"attributes": {
"created_at": "2021-07-16T22:29:41.135Z",
"updated_at": "2021-07-16T22:29:41.135Z",
"name": "Example Secret",
"type_of": "token",
"activated_at": null,
"expires_at": null,
"refresh_at": null,
"status": "pending",
"credentials": {
}
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/property"
},
"data": {
"id": "PR19717d5acf114209a5aebd0f2b228438",
"type": "properties"
}
},
"environment": {
"links": {
"related": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/environment"
},
"data": {
"id": "EN04d820606cc74d5eaf51616e8b50201a",
"type": "environments"
},
"meta": {
"stage": "development"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/notes"
}
}
},
"links": {
"self": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3",
"property": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/property"
}
}
}
Créer un secret create
Vous pouvez créer un secret en effectuant une requête POST.
succeeded
ou failed
en fonction du résultat.Format d’API
POST /properties/{PROPERTY_ID}/secrets
{PROPERTY_ID}
Requête
curl -X POST \
https://reactor.adobe.io/properties/PR9eff664dc6014217b76939bb78b83976/secrets \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json' \
-d '{
"data": {
"attributes": {
"name": "Example Secret",
"type_of": "simple-http",
"credentials": {
"username": "example_username",
"password": "pass12345"
}
},
"relationships": {
"environment": {
"data": {
"id": "EN04cdddbdb6574170bcac9f470f3b8087",
"type": "environments"
}
}
},
"type": "secrets"
}
}'
name
type_of
Le type d’informations d’authentification que le secret représente. Trois valeurs acceptées :
token
: chaîne de jeton.simple-http
: nom d’utilisateur et mot de passe.oauth2
: informations d’identification conformes à la norme OAuth.
credentials
type_of
, différentes propriétés doivent être fournies. Voir la section sur les informations d’identification dans le guide des secrets pour plus d’informations sur les exigences de chaque type.relationships.environment
data
dans cette propriété doit contenir le id
de l’environnement auquel le secret est affecté, avec une valeur type
de environments
.type
secrets
.Réponse
Une réponse réussie renvoie les détails du secret. Notez que selon le type de secret, certaines propriétés sous credentials
peuvent être masquées.
{
"data": {
"id": "SE39fdf431f8ad4600bbc24ea73fcb1154",
"type": "secrets",
"attributes": {
"created_at": "2021-07-14T19:33:25.628Z",
"updated_at": "2021-07-14T19:33:25.628Z",
"name": "Example Secret",
"type_of": "simple-http",
"activated_at": null,
"expires_at": null,
"refresh_at": null,
"status": "pending",
"credentials": {
"username": "example_username"
}
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154/property"
},
"data": {
"id": "PR9eff664dc6014217b76939bb78b83976",
"type": "properties"
}
},
"environment": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154/environment"
},
"data": {
"id": "EN04cdddbdb6574170bcac9f470f3b8087",
"type": "environments"
},
"meta": {
"stage": "development"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154/notes"
}
}
},
"links": {
"self": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154",
"property": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154/property"
}
}
}
Tester un secret oauth2
test
type_of
de oauth2
.Vous pouvez tester un secret oauth2
en incluant son identifiant dans le chemin d’accès d’une requête PATCH. L’opération de test effectue un échange et inclut la réponse du service d’autorisation dans l’attribut test_exchange
de l’objet meta
du secret. Cette opération ne met pas à jour le secret lui-même.
Format d’API
PATCH /secrets/{SECRET_ID}
{SECRET_ID}
oauth2
que vous voulez tester.Requête
curl -X PATCH \
https://reactor.adobe.io/secrets/SE6c15a7a64f9041b5985558ed3e19a449 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json' \
-d '{
"data": {
"attributes": {
"type_of": "oauth2"
},
"meta": {
"action": "test"
},
"id": "SE6c15a7a64f9041b5985558ed3e19a449",
"type": "secrets"
}
}'
attributes
type_of
avec une valeur de oauth2
.meta
action
avec une valeur de test
.id
type
secrets
.Réponse
Une réponse réussie renvoie les détails du secret, avec la réponse du service d’autorisation contenue dans meta.test_exchange
.
{
"data": {
"id": "SE6c15a7a64f9041b5985558ed3e19a449",
"type": "secrets",
"attributes": {
"activated_at": null,
"created_at": "2021-07-14T19:33:25.628Z",
"credentials": {
"token_url": "https://token_url.test/token/authorize?required_param=value",
"client_id": "test_client_id",
"client_secret": "test_client_secret",
"refresh_offset": 14400,
},
"expires_at": null,
"name": "Example Secret",
"refresh_at": null,
"status": "pending",
"type_of": "oauth2",
"updated_at": "2021-07-14T19:33:25.628Z",
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154/property"
},
"data": {
"id": "PR9eff664dc6014217b76939bb78b83976",
"type": "properties"
}
},
"environment": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154/environment"
},
"data": {
"id": "EN04cdddbdb6574170bcac9f470f3b8087",
"type": "environments"
},
"meta": {
"stage": "development"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154/notes"
}
}
},
"links": {
"self": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154",
"property": "https://reactor.adobe.io/secrets/SE39fdf431f8ad4600bbc24ea73fcb1154/property"
},
"meta": {
"test_exchange": {
"access_token": "FpIkBn3zxW0fH6EBC4MB",
"expires_in": 36000,
"token_type": "Bearer",
}
}
}
}
Réessayer un secret retry
Réessayer un secret consiste à déclencher manuellement l’échange secret. Vous pouvez réessayer un secret en incluant son identifiant dans le chemin d’accès d’une requête PATCH.
Format d’API
PATCH /secrets/{SECRET_ID}
{SECRET_ID}
Requête
curl -X PATCH \
https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json' \
-d '{
"data": {
"attributes": {
"type_of": "token"
},
"meta": {
"action": "retry"
},
"id": "SEa3756b962e964fadb61e31df1f7dd5a3",
"type": "secrets"
}
}'
attributes
type_of
correspondant à celle du secret mis à jour (token
, simple-http
ou oauth2
).meta
action
avec une valeur de retry
.id
type
secrets
.Réponse
Une réponse réussie renvoie les détails du secret, dont le statut est réinitialisé sur pending
. Une fois l’échange terminé, le statut du secret est mis à jour vers succeeded
ou failed
selon le résultat.
{
"data": {
"id": "SEa3756b962e964fadb61e31df1f7dd5a3",
"type": "secrets",
"attributes": {
"created_at": "2021-07-16T22:29:41.135Z",
"updated_at": "2021-07-16T22:29:41.135Z",
"name": "Example Secret",
"type_of": "token",
"activated_at": null,
"expires_at": null,
"refresh_at": null,
"status": "pending",
"credentials": {
}
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/property"
},
"data": {
"id": "PR19717d5acf114209a5aebd0f2b228438",
"type": "properties"
}
},
"environment": {
"links": {
"related": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/environment"
},
"data": {
"id": "EN04d820606cc74d5eaf51616e8b50201a",
"type": "environments"
},
"meta": {
"stage": "development"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/notes"
}
}
},
"links": {
"self": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3",
"property": "https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/property"
}
}
}
Réautoriser un secret oauth2-google
reauthorize
Chaque secret oauth2-google
contient une propriété meta.authorization_url_expires_at
qui indique quand l’URL d’autorisation expirera. Au-delà de cette date, le secret doit être réautorisé afin de renouveler le processus d'authentification.
Pour réautoriser un secret oauth2-google
, effectuez une demande de PATCH pour le secret en question.
Format d’API
PATCH /secrets/{SECRET_ID}
{SECRET_ID}
id
du secret que vous souhaitez réautoriser.Requête
L’objet data
du payload de requête doit contenir une propriété meta.action
définie sur reauthorize
.
curl -X PATCH \
https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json' \
-d '{
"data": {
"attributes": {
"type_of": "oauth2-google"
},
"meta": {
"action": "reauthorize"
},
"id": "SEa3756b962e964fadb61e31df1f7dd5a3",
"type": "secrets"
}
}'
Réponse
Une réponse réussie renvoie les détails du secret mis à jour. A partir de là, vous devez copier et coller le meta.authorization_url
dans un navigateur pour terminer le processus d’autorisation.
{
"data": {
"id": "SE5fdfa4c0a2d8404e8b1bc38827cc41c9",
"type": "secrets",
"attributes": {
"created_at": "2021-07-15T19:00:25.628Z",
"updated_at": "2021-07-15T19:00:25.628Z",
"name": "Example Secret",
"type_of": "oauth2-google",
"activated_at": null,
"expires_at": null,
"refresh_at": null,
"status": "pending",
"credentials": {
"scopes": [
"https://www.googleapis.com/auth/adwords",
"https://www.googleapis.com/auth/pubsub"
],
}
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE5fdfa4c0a2d8404e8b1bc38827cc41c9/property"
},
"data": {
"id": "PR9eff664dc6014217b76939bb78b83976",
"type": "properties"
}
},
"environment": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE5fdfa4c0a2d8404e8b1bc38827cc41c9/environment"
},
"data": {
"id": "EN04cdddbdb6574170bcac9f470f3b8087",
"type": "environments"
},
"meta": {
"stage": "development"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE5fdfa4c0a2d8404e8b1bc38827cc41c9/notes"
}
}
},
"links": {
"self": "https://reactor.adobe.io/secrets/SE5fdfa4c0a2d8404e8b1bc38827cc41c9",
"property": "https://reactor.adobe.io/secrets/SE5fdfa4c0a2d8404e8b1bc38827cc41c9/property"
},
"meta": {
"authorization_url": "https://accounts.google.com/o/oauth2/auth?access_type=offline&approval_prompt=force&client_id=434635668552-0qvlu519fdjtnkvk8hu8c8dj8rg3723r.apps.googleusercontent.com&redirect_uri=https%3A%2F%2Freactor.adobe.io%2Foauth2%2Fcallback&response_type=code&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fadwords&state=state",
"authorization_url_expires_at": "2021-07-15T20:00:25.628Z"
}
}
}
Supprimer un secret delete
Vous pouvez supprimer un secret en incluant son identifiant dans le chemin dʼaccès dʼune requête DELETE. Il s’agit d’une suppression irréversible avec effet immédiat qui ne nécessite pas de republication de bibliothèque.
Cette opération supprime le secret de l’environnement auquel il est associé et la ressource sous-jacente est supprimée.
Format d’API
DELETE /secrets/{SECRET_ID}
{SECRET_ID}
Requête
curl -X DELETE \
https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json'
Réponse
Une réponse réussie renvoie un état HTTP 204 (No Content) et un corps de réponse vide, indiquant que le secret a été supprimé du système.
Répertorier les notes correspondant à un secret notes
L’API Reactor vous permet d’ajouter des notes à certaines ressources, y compris des secrets. Les notes sont des annotations textuelles qui n’ont aucun impact sur le comportement des ressources et peuvent être utilisées dans divers cas.
Vous pouvez récupérer toutes les notes liées à un secret en effectuant une requête GET.
Format d’API
GET /secrets/{SECRET_ID}/notes
{SECRET_ID}
Requête
curl -X GET \
https://reactor.adobe.io/secrets/SE591d3b86910f4e6883f0e1c36e54bff1/notes \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json'
Réponse
Une réponse réussie renvoie une liste des notes appartenant au secret.
{
"data": [
{
"id": "NTe666dbcc2f204218b6fde2fe60ab7043",
"type": "notes",
"attributes": {
"author_display_name": "John Doe",
"author_email": "jdoe@example.com",
"created_at": "2021-07-16T22:29:58.259Z",
"text": "This is a secret note."
},
"relationships": {
"resource": {
"links": {
"related": "https://reactor.adobe.io/secrets/SE591d3b86910f4e6883f0e1c36e54bff1"
},
"data": {
"id": "SE591d3b86910f4e6883f0e1c36e54bff1",
"type": "secrets"
}
}
},
"links": {
"resource": "https://reactor.adobe.io/secrets/SE591d3b86910f4e6883f0e1c36e54bff1",
"self": "https://reactor.adobe.io/notes/NTe666dbcc2f204218b6fde2fe60ab7043"
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 1
}
}
}
Récupération des ressources associées à un secret related
Les appels suivants montrent comment récupérer les ressources associées à un secret. Lorsque vous recherchez un secret, ces relations sont répertoriées sous la propriété relationships
.
Pour plus d’informations sur les relations dans l’API Reactor, consultez le guide des relations.
Recherche de l’environnement associé à un secret environment
Vous pouvez rechercher l’environnement qui utilise un secret en ajoutant /environment
au chemin d’accès d’une requête GET.
Format d’API
GET /secrets/{SECRET_ID}/environment
{SECRET_ID}
Requête
curl -X GET \
https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/environment \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json'
Réponse
Une réponse réussie renvoie les détails de l’environnement.
{
"data": {
"id": "EN33e8d63ac647448da1f77ced5c3c8580",
"type": "environments",
"attributes": {
"archive": false,
"created_at": "2021-07-16T22:19:13.438Z",
"library_path": "bc12f2b85d11/b9a3067414ff",
"library_name": "launch-3b6c4eea15ae-development.min.js",
"library_entry_points": [
{
"library_name": "launch-3b6c4eea15ae-development.min.js",
"minified": true,
"references": [
"bc12f2b85d11/b9a3067414ff/launch-3b6c4eea15ae-development.min.js"
],
"license_path": "bc12f2b85d11/b9a3067414ff/launch-3b6c4eea15ae-development.js"
},
{
"library_name": "launch-3b6c4eea15ae-development.js",
"minified": false,
"references": [
"bc12f2b85d11/b9a3067414ff/launch-3b6c4eea15ae-development.js"
]
}
],
"name": "Development Environment A",
"path": null,
"stage": "development",
"updated_at": "2021-07-16T22:19:13.438Z",
"status": "succeeded",
"token": "3b6c4eea15ae"
},
"relationships": {
"library": {
"links": {
"related": "https://reactor.adobe.io/environments/EN33e8d63ac647448da1f77ced5c3c8580/library"
},
"data": null
},
"builds": {
"links": {
"related": "https://reactor.adobe.io/environments/EN33e8d63ac647448da1f77ced5c3c8580/builds"
}
},
"host": {
"links": {
"related": "https://reactor.adobe.io/environments/EN33e8d63ac647448da1f77ced5c3c8580/host",
"self": "https://reactor.adobe.io/environments/EN33e8d63ac647448da1f77ced5c3c8580/relationships/host"
},
"data": {
"id": "HT7d5cf665463e46a1968ada1ceb1b5ca7",
"type": "hosts"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/environments/EN33e8d63ac647448da1f77ced5c3c8580/property"
},
"data": {
"id": "PRba81d3027db846b084212391aa5d2f1f",
"type": "properties"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PRba81d3027db846b084212391aa5d2f1f",
"self": "https://reactor.adobe.io/environments/EN33e8d63ac647448da1f77ced5c3c8580"
},
"meta": {
"archive_encrypted": false
}
}
}
Recherche de la propriété associée à un secret property
Vous pouvez rechercher la propriété qui détient un secret en ajoutant /property
au chemin d’accès d’une requête GET.
Format d’API
GET /secrets/{SECRET_ID}/property
{SECRET_ID}
Requête
curl -X GET \
https://reactor.adobe.io/secrets/SEa3756b962e964fadb61e31df1f7dd5a3/property \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/vnd.api+json'
Réponse
Une réponse réussie renvoie les détails au sujet de la propriété.
{
"data": {
"id": "PR2d191feafef54c5da4ddb5ef647d4867",
"type": "properties",
"attributes": {
"created_at": "2021-07-16T22:26:25.320Z",
"enabled": true,
"name": "Kessel Edge Example Property",
"updated_at": "2021-07-16T22:26:25.320Z",
"platform": "edge",
"development": false,
"token": "8efbe7023155"
},
"relationships": {
"company": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/company"
},
"data": {
"id": "COc26fb19f87d24cbe827a70ad2a672093",
"type": "companies"
}
},
"callbacks": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/callbacks"
}
},
"hosts": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/hosts"
}
},
"environments": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/environments"
}
},
"libraries": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/libraries"
}
},
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/extensions"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/rules"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/notes"
}
}
},
"links": {
"company": "https://reactor.adobe.io/companies/COc26fb19f87d24cbe827a70ad2a672093",
"data_elements": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/data_elements",
"environments": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/environments",
"extensions": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/extensions",
"rules": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867/rules",
"self": "https://reactor.adobe.io/properties/PR2d191feafef54c5da4ddb5ef647d4867"
},
"meta": {
"rights": [
"approve",
"develop",
"edit_property",
"manage_environments",
"manage_extensions",
"publish"
]
}
}
}