Prise en main de REST APIs getting-started-with-rest-apis

Informations sur les conditions requises générales, authentification, paramètres de requête facultatifs, URLs de requête et autres références.

Exigences et recommandations relatives aux API api-requirements-recommendations

Notez ce qui suit lorsque vous utilisez le code de l’API Audience Manager:

  • Paramètres de requête : tous les paramètres de requête sont requis, sauf indication contraire.
  • En-têtes de requête : lors de l’utilisation de jetons Adobe Developer, vous devez fournir l’en-tête de x-api-key. Vous pouvez obtenir votre clé API en suivant les instructions de la page Intégration de compte de service.
  • JSONle type de contenu : spécifiez content-type: application/json et accept: application/json dans votre code.
  • Demandes et réponses : envoyez les demandes sous la forme d’un objet JSON correctement formaté. Audience Manager répond avec des données formatées JSON. Les réponses du serveur peuvent contenir les données demandées, un code d’état, ou les deux.
  • Accès : votre consultant Audience Manager vous fournira un identifiant client et une clé qui vous permettront d’effectuer des demandes de API.
  • Documentation et exemples de code : le texte en italique représente une variable que vous fournissez ou transmettez lors de l’exécution ou de la réception de données API. Remplacez le texte en italique par votre propre code, vos propres paramètres ou d’autres informations requises.

Authentification authentication

Les Audience Manager REST APIs prennent en charge trois méthodes d’authentification.

IMPORTANT
Selon votre méthode d’authentification, vous devez ajuster votre URLs de requête en conséquence. Voir la section Environnements pour plus d’informations sur les noms d’hôtes à utiliser.

Authentification de serveur à serveur OAuth à l’aide d’Adobe Developer oauth-adobe-developer

Cette section explique comment rassembler les informations d’identification requises pour authentifier les appels API Audience Manager, comme indiqué dans le diagramme de flux ci-dessous. Vous pouvez rassembler la plupart des informations d’identification requises dans la configuration unique initiale. Toutefois, le jeton d’accès doit être actualisé toutes les 24 heures.

Diagramme de flux d’authentification Audience Manager.

Présentation d’Adobe Developer developer-overview

Adobe Developer est l’écosystème et la communauté de développeurs d’Adobe. Elle comprend des API pour tous les produits Adobe.

Il s’agit de la méthode recommandée pour configurer et utiliser Adobe APIs.

Conditions préalables prerequisites-server-to-server

Avant de pouvoir configurer l’authentification OAuth Server-to-Server, vérifiez que vous avez accès au Adobe Developer Console dans Adobe Developer. Contactez l’administrateur ou l’administratrice de votre organisation pour les demandes d’accès.

Authentification oauth

Pour configurer l’authentification OAuth Server-to-Server à l’aide de Adobe Developer, procédez comme suit :

  1. Connectez-vous à Adobe Developer Console.
  2. Suivez les étapes du guide d’implémentation des informations d’identification de serveur à serveur OAuth.
  3. Testez la connexion en effectuant votre premier appel API en fonction des instructions de l’étape 3.
NOTE
Pour configurer et utiliser le Audience Manager REST APIs de manière automatisée, vous pouvez faire pivoter les secrets clients par programmation. Consultez la documentation destinée aux développeurs pour obtenir des instructions détaillées.

Ajouter l’API Audience Manager à un projet add-aam-api-to-project

Accédez à Adobe Developer Console et connectez-vous avec votre Adobe ID. Suivez ensuite les étapes décrites dans le tutoriel sur la création d’un projet vide dans la documentation de Adobe Developer Console.

Une fois que vous avez créé un projet, sélectionnez Add API dans l’écran Project Overview.

TIP
Si vous disposez des privilèges d’accès pour plusieurs organisations, utilisez le sélecteur d’organisation dans le coin supérieur droit de l’interface pour vous assurer que vous vous trouvez dans l’organisation dont vous avez besoin.

Écran Developer Console avec l’option Ajouter une API mise en surbrillance.

L’écran Add an API s’affiche. Sélectionnez l’icône de produit de Adobe Experience Cloud, puis choisissez Audience Manager API avant de sélectionner Next.

Sélectionner l’API Audience Manager.

Sélectionner le type d’authentification OAuth serveur à serveur select-oauth-server-to-server

Sélectionnez ensuite le type d’authentification pour générer les jetons d’accès et accéder à l’API Audience Manager.

IMPORTANT
Sélectionnez la méthode OAuth Server-to-Server , car il s’agira de la seule méthode prise en charge à l’avenir. La méthode Service Account (JWT) est obsolète. Bien que les intégrations utilisant la méthode d’authentification JWT continueront à fonctionner jusqu’au 1er janvier 2025, Adobe vous recommande vivement de migrer les intégrations existantes vers la nouvelle méthode OAuth de serveur à serveur avant cette date.

Sélectionnez la méthode d’authentification OAuth.

Sélection des profils de produit pour votre intégration select-product-profiles

Dans l’écran Configure API, sélectionnez les profils de produit souhaités. Le compte de service de votre intégration aura accès aux fonctionnalités granulaires par le biais des profils de produit sélectionnés ici.

Sélectionnez les profils de produit pour votre intégration.

Sélectionnez Save configured API lorsque vous êtes prêt(e).

Collecter les informations d’identification gather-credentials

Une fois que l’API a été ajoutée au projet, la page Audience Manager API du projet affiche les informations d’identification suivantes, requises dans tous les appels aux API Audience Manager :

Informations d’intégration après l’ajout d’une API dans Developer Console.

  • {API_KEY} (Client ID)
  • {ORG_ID} (Organization ID)

Générer un jeton d’accès generate-access-token

L’étape suivante consiste à générer des informations d’identification {ACCESS_TOKEN} à utiliser dans les appels API d’Audience Manager. Contrairement aux valeurs de {API_KEY} et {ORG_ID}, un nouveau jeton doit être généré toutes les 24 heures pour continuer à utiliser les API d’Audience Manager. Sélectionnez Generate access token, comme illustré ci-dessous.

Afficher comment générer un jeton d’accès

Tester un appel API test-api-call

Après avoir obtenu votre jeton du porteur d’authentification, effectuez un appel API pour tester que vous pouvez désormais accéder aux API Audience Manager.

  1. Accédez à la documentation de référence de l’API.

  2. Sélectionnez Authorize et collez le jeton d’accès obtenu à l’étape Générer un jeton d’accès.

    Autoriser les appels API

  3. Effectuez un appel GET au point d’entrée de l’API /datasources pour récupérer une liste de toutes les sources de données disponibles globalement, comme indiqué dans la documentation de référence de l’API 🔗. Sélectionnez Try it out, puis Execute, comme illustré ci-dessous.

    Effectuer des appels API

recommendation-more-help
requête API
code language-shell
curl -X 'GET' \
  'https://api.demdex.com/v1/datasources/' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer your-access-token'
Réponse de l’API en cas d’utilisation du jeton porteur correct

Lors de l’utilisation d’un jeton d’accès fonctionnel, le point d’entrée de l’API renvoie une réponse 200, ainsi qu’un corps de réponse qui inclut toutes les sources de données globales auxquelles votre organisation a accès.

code language-json
[
  {
    "pid": 1794,
    "name": "testdatasource1",
    "description": "Test data source",
    "status": "ACTIVE",
    "integrationCode": "test_ds1",
    "dataExportRestrictions": [],
    "updateTime": 1595340792000,
    "crUID": 0,
    "upUID": 15910,
    "linkNamespace": false,
    "type": "GENERAL",
    "subIdType": "CROSS_DEVICE_PERSON",
    "inboundS2S": true,
    "outboundS2S": true,
    "useAudienceManagerVisitorID": false,
    "allowDataSharing": true,
    "masterDataSourceIdProvider": true,
    "uniqueTraitIntegrationCodes": false,
    "uniqueSegmentIntegrationCodes": false,
    "marketingCloudVisitorIdVersion": 0,
    "idType": "CROSS_DEVICE",
    "samplingEndTime": 1596550392825,
    "allowDeviceGraphSharing": false,
    "supportsAuthenticatedProfile": true,
    "deviceGraph": false,
    "authenticatedProfileName": "testdatasource1",
    "deviceGraphName": "",
    "customNamespaceId": 29769,
    "customNamespaceCode": "silviu_ds1",
    "customerProfileDataRetention": 62208000,
    "samplingStartTime": 1595340792825,
    "dataSourceId": 29769,
    "containerIds": [],
    "samplingEnabled": false
  },
  {
    "pid": 1794,
    "name": "AAM Test Company Audiences",
    "description": "Automatically generated trait data source",
    "status": "ACTIVE",
    "integrationCode": "adobe-provided",
    "dataExportRestrictions": [
      "PII"
    ],

    [...]

[Obsolète]{class="badge negative"} Authentification JWT (Service Account) à l’aide d’Adobe Developer jwt

Affichez des informations sur la méthode JWT (Service Account) obsolète d’obtention de jetons d’authentification.

Présentation d’Adobe Developer adobeio

Adobe Developer est l’écosystème et la communauté de développeurs d’Adobe. Elle comprend des API pour tous les produits Adobe.

Il s’agit de la méthode recommandée pour configurer et utiliser Adobe APIs.

Conditions préalables prerequisites

Avant de pouvoir configurer l’authentification JWT, vérifiez que vous avez accès au Adobe Developer Console dans Adobe Developer. Contactez l’administrateur ou l’administratrice de votre organisation pour les demandes d’accès.

Authentification auth

Pour configurer l’authentification JWT (Service Account) à l’aide de Adobe Developer, procédez comme suit :

  1. Connectez-vous à Adobe Developer Console.
  2. Suivez les étapes de la section Connexion au compte de service.
  3. Testez la connexion en effectuant votre premier appel API en fonction des instructions de l’étape 3.
note note
NOTE
Pour configurer et utiliser le Audience Manager REST APIs de manière automatisée, vous pouvez générer le JWT par programmation. Consultez la section Authentification JWT (compte de service) pour obtenir des instructions détaillées.

Autorisations RBAC de compte technique

Si votre compte Audience Manager utilise le contrôle d’accès en fonction du rôle, vous devez créer un compte d’utilisateur technique Audience Manager et l’ajouter au groupe RBAC Audience Manager qui effectuera les appels API.

Pour créer un compte d’utilisateur technique et l’ajouter à un groupe RBAC, procédez comme suit :

  1. Appelez-GET https://aam.adobe.io/v1/users/self. L’appel crée un compte d’utilisateur technique que vous pouvez voir dans le Admin Console, dans la page Users .

    compte technique

  2. Connectez-vous à votre compte Audience Manager et ajoutez le compte d’utilisateur technique au groupe d’utilisateurs qui effectuera les appels API.

[Obsolète]{class="badge negative"} Authentification OAuth (Obsolète) oauth-deprecated

Affichez des informations sur l’ancienne méthode d’authentification OAuth obsolète permettant d’obtenir des jetons d’authentification.
note warning
WARNING
L’authentification et le renouvellement Audience Manager jeton REST API via OAuth 2.0 sont désormais obsolètes.
Utilisez plutôt l’authentification JWT (compte de service).

La Audience Manager REST API suit les normes OAuth 2.0 pour l’authentification et le renouvellement des jetons. Les sections ci-dessous décrivent comment vous authentifier et commencer à utiliser les API.

Créer un utilisateur API générique requirements

Nous vous recommandons de créer un compte utilisateur technique distinct pour travailler avec les Audience Manager API. Il s’agit d’un compte générique qui n’est pas lié à un utilisateur spécifique de votre organisation ni associé à celui-ci. Ce type de compte utilisateur API permet d’accomplir deux choses :

  • Identifiez le service qui appelle le API (par exemple, les appels de vos applications qui utilisent nos API ou d’autres outils qui font des demandes API).
  • Assurer un accès ininterrompu aux API. Un compte lié à une personne spécifique peut être supprimé lorsqu’elle quitte votre entreprise. Cela vous empêchera d’utiliser le code API disponible. Un compte générique qui n'est pas lié à un employé particulier vous aide à éviter ce problème.

À titre d’exemple ou de cas d’utilisation pour ce type de compte, supposons que vous souhaitiez modifier de nombreux segments à la fois avec les outils de gestion en bloc. Pour ce faire, votre compte utilisateur doit disposer d’un accès API. Au lieu d’ajouter des autorisations à un utilisateur spécifique, créez un compte utilisateur API non spécifique disposant des informations d’identification, de la clé et du secret appropriés pour effectuer des appels API. Cela s’avère également utile si vous développez vos propres applications qui utilisent les Audience Manager API.

Contactez votre consultant Audience Manager pour configurer un compte utilisateur générique en API seule.

Workflow d’authentification de mot de passe password-authentication-workflow

L'authentification par mot de passe sécurise l'accès à nos REST API. Les étapes ci-dessous décrivent le processus d’authentification par mot de passe à partir d’un client JSON dans votre navigateur.

note tip
TIP
Chiffrez les jetons d’accès et d’actualisation si vous les stockez dans une base de données.

Étape 1 : Demander l'accès API

Contactez votre responsable des solutions partenaires. Ils vous fourniront un identifiant client et un secret API. L’identifiant et le secret vous authentifient auprès de l’API.

Remarque : si vous souhaitez recevoir un jeton d’actualisation, indiquez-le lorsque vous demandez un accès API.

Étape 2 : demander le jeton

Transmettez une demande de jeton avec votre client JSON préféré. Lorsque vous créez la requête :

  • Utilisez une méthode POST pour appeler https://api.demdex.com/oauth/token.
  • Convertissez votre identifiant client et votre secret en une chaîne codée en base-64. Séparez l’ID et le secret par deux points pendant le processus de conversion. Par exemple, les informations d’identification testId : testSecret converties en dGVzdElkOnRlc3RTZWNyZXQ=.
  • Transmettez le HTTP headers Authorization:Basic <base-64 clientID:clientSecret> et Content-Type: application/x-www-form-urlencoded . Par exemple, votre en-tête pourrait ressembler à ceci :
    Authorization: Basic dGVzdElkOnRlc3RTZWNyZXQ=
    Content-Type: application/x-www-form-urlencoded
  • Configurez le corps de la requête comme suit :

    grant_type=password&username=<your-AudienceManager-user-name>&password=<your-AudienceManager-password>

Étape 3 : recevoir le jeton

La réponse JSON contient votre jeton d’accès. La réponse doit se présenter comme suit :

code language-json
{
    "access_token": "28fed402-eafd-456c-9341-ac753f25bbbc",
    "token_type": "bearer",
    "refresh_token": "b27122c0-b0c7-4b39-a71b-1547a3b3b88e",
    "expires_in": 21922,
    "scope": "read write"
}

La clé expires_in représente le nombre de secondes avant l’expiration du jeton d’accès. De bonnes pratiques recommandent d’utiliser des délais d’expiration courts pour limiter l’exposition si le jeton est jamais exposé.

Jeton d’actualisation refresh-token

Les jetons d’actualisation renouvellent API accès après l’expiration du jeton d’origine. Si demandé, la réponse JSON dans le workflow de mot de passe comprend un jeton d’actualisation. Si vous ne recevez pas de jeton d’actualisation, créez-en un via le processus d’authentification par mot de passe.

Vous pouvez également utiliser un jeton d’actualisation pour générer un nouveau jeton avant l’expiration du jeton d’accès existant.

Si votre jeton d’accès a expiré, vous recevez un 401 Status Code et l’en-tête suivant dans la réponse :

WWW-Authenticate: Bearer realm="oauth", error="invalid_token", error_description="Access token expired: <token>"

Les étapes suivantes décrivent le workflow d’utilisation d’un jeton d’actualisation pour créer un jeton d’accès à partir d’un client JSON dans votre navigateur.

Étape 1 : demander le nouveau jeton

Transmettez une demande de jeton d’actualisation au client JSON de votre choix. Lorsque vous créez la requête :

  • Utilisez une méthode POST pour appeler https://api.demdex.com/oauth/token.
  • Convertissez votre identifiant client et votre secret en une chaîne codée en base-64. Séparez l’ID et le secret par deux points pendant le processus de conversion. Par exemple, les informations d’identification testId : testSecret converties en dGVzdElkOnRlc3RTZWNyZXQ=.
  • Transmettez les en-têtes HTTP Authorization:Basic <base-64 clientID:clientSecret> et Content-Type: application/x-www-form-urlencoded. Par exemple, votre en-tête pourrait ressembler à ceci :
    Authorization: Basic dGVzdElkOnRlc3RTZWNyZXQ=
    Content-Type: application/x-www-form-urlencoded
  • Dans le corps de la requête, spécifiez le grant_type:refresh_token et transmettez le jeton d’actualisation que vous avez reçu dans votre demande d’accès précédente. La requête doit se présenter comme suit :
    grant_type=refresh_token&refresh_token=b27122c0-b0c7-4b39-a71b-1547a3b3b88e

Étape 2 : recevoir le nouveau jeton

La réponse JSON contient votre nouveau jeton d’accès. La réponse doit se présenter comme suit :

code language-json
{
    "access_token": "4fdfc261-2ffc-4fb7-8dbd-64221714c45f",
    "token_type": "bearer",
    "refresh_token": "295fa487-1825-4caa-a715-80b81ac17dae",
    "expires_in": 21922,
    "scope": "read write"
}

Code d’autorisation et authentification implicite authentication-code-implicit

Le Audience Manager REST API prend en charge le code d’autorisation et l’authentification implicite. Pour utiliser ces méthodes d’accès, vos utilisateurs doivent se connecter à https://api.demdex.com/oauth/authorize pour obtenir des jetons d’accès et d’actualisation.

Effectuer des demandes de API authentifiées authenticated-api-requests

Conditions requises pour appeler des méthodes API après avoir reçu un jeton d’authentification.

Pour effectuer des appels par rapport aux méthodes API disponibles :

  • Dans l’en-tête HTTP, définissez Authorization: Bearer <token>.
  • Lors de l’utilisation de l’authentification JWT (Compte de service), vous devez fournir l’en-tête x-api-key, qui sera le même que votre client_id. Vous pouvez obtenir votre client_id à partir de la page Intégration d’Adobe Developer.
  • Appelez la méthode de API requise.

Paramètres de requête API facultatifs optional-api-query-parameters

Définissez les paramètres facultatifs disponibles pour les méthodes qui renvoient toutes les propriétés d’un objet .

Vous pouvez utiliser ces paramètres facultatifs avec des méthodes API qui renvoient des propriétés all pour un objet . Définissez ces options dans la chaîne de requête lors de la transmission de cette requête au API.

Paramètre
Description
page
Renvoie les résultats par numéro de page. La numérotation commence à 0.
pageSize
Définit le nombre de résultats de réponse renvoyés par la requête (10 est le nombre par défaut).
sortBy
Trie et renvoie les résultats en fonction de la propriété JSON spécifiée.
descending
Trie et renvoie les résultats dans l’ordre décroissant. ascending est la valeur par défaut.
search
Renvoie les résultats en fonction de la chaîne spécifiée que vous souhaitez utiliser comme paramètre de recherche. Supposons, par exemple, que vous souhaitiez trouver des résultats pour tous les modèles qui contiennent le mot « Test » dans l’un des champs de valeur de cet élément. Votre exemple de requête pourrait ressembler à ceci : GET https://aam.adobe.io/v1/models/?search=Test. Vous pouvez effectuer une recherche sur n’importe quelle valeur renvoyée par une méthode « get all ».
folderId
Renvoie tous les identifiants des traits dans le dossier spécifié. Non disponible pour toutes les méthodes.
permissions

Renvoie une liste de segments en fonction de l’autorisation spécifiée. READ est la valeur par défaut. Les autorisations incluent :

  • READ : renvoie et affiche des informations sur un segment.
  • WRITE : utilisez PUT pour mettre à jour un segment.
  • CREATE : utilisez POST pour créer un segment.
  • DELETE : permet de supprimer un segment. Nécessite l’accès aux caractéristiques sous-jacentes, le cas échéant. Par exemple, vous aurez besoin de droits pour supprimer les caractéristiques appartenant à un segment si vous souhaitez le supprimer.

Spécifiez plusieurs autorisations avec des paires clé-valeur distinctes. Par exemple, pour renvoyer une liste de segments avec des autorisations READ et WRITE uniquement, transmettez "permissions":"READ", "permissions":"WRITE" .

includePermissions
(Boolean) Définissez sur true pour renvoyer vos autorisations pour le segment. La valeur par défaut est false.

Remarque Sur Les Options De Page

Lorsque les informations de page ne sont pas spécifiées, la requête renvoie des résultats JSON simples dans un tableau . Si les informations sur la page est sont spécifiées, la liste renvoyée est encapsulée dans un objet JSON qui contient des informations sur le résultat total et la page active. Votre exemple de requête à l’aide des options de page pourrait ressembler à ceci :

GET https://aam.adobe.io/v1/models/?page=1&pageSize=2&search=Test

API URLs api-urls

URLs pour les demandes, les environnements d’évaluation et de production et les versions.

URLs de la demande request-urls

Le tableau suivant répertorie les URLs de requête utilisés pour transmettre des requêtes API, par méthode.

Selon la méthode d’authentification que vous utilisez, vous devez ajuster le URLs de votre requête en fonction des tableaux ci-dessous.

URLs de requête pour l’authentification [​ OAuth ​]{class="badge positive"}recommandée[​ serveur à serveur et ​]{class="badge negative"}obsolèteJWT via Adobe Developer request-urls-jwt

Méthodes API
URL de la demande
Algorithmic Modeling
https://aam.adobe.io/v1/models/
Data Source
https://aam.adobe.io/v1/datasources/
Derived Signals
https://aam.adobe.io/v1/signals/derived/
Destinations
https://aam.adobe.io/v1/destinations/
Domains
https://aam.adobe.io/v1/partner-sites/
Folders
Caractéristiques : https://aam.adobe.io/v1/folders/traits /
Segments : https://aam.adobe.io/v1/folders/segments /
Schema
https://aam.adobe.io/v1/schemas/
Segments
https://aam.adobe.io/v1/segments/
Traits
https://aam.adobe.io/v1/traits/
Trait Types
https://aam.adobe.io/v1/customer-trait-types
Taxonomy
https://aam.adobe.io/v1/taxonomies/0/

URLs de demande pour l’authentification [obsolète]{class="badge negative"} héritée OAuth request-urls-oauth

Méthodes API
URL de la demande
Algorithmic Modeling
https://api.demdex.com/v1/models/
Data Source
https://api.demdex.com/v1/datasources/
Derived Signals
https://api.demdex.com/v1/signals/derived/
Destinations
https://api.demdex.com/v1/destinations/
Domains
https://api.demdex.com/v1/partner-sites/
Folders
Caractéristiques : https://api.demdex.com/v1/folders/traits /
Segments : https://api.demdex.com/v1/folders/segments /
Schema
https://api.demdex.com/v1/schemas/
Segments
https://api.demdex.com/v1/segments/
Traits
https://api.demdex.com/v1/traits/
Trait Types
https://api.demdex.com/v1/customer-trait-types
Taxonomy
https://api.demdex.com/v1/taxonomies/0/

Environnements environments

Les Audience Manager API permettent d’accéder à différents environnements de travail. Ces environnements vous permettent de tester le code sur des bases de données distinctes sans affecter les données de production actives. Le tableau suivant répertorie les environnements API disponibles et les noms d’hôtes de ressources correspondants.

Selon la méthode d’authentification que vous utilisez, vous devez ajuster les URLs de votre environnement conformément au tableau ci-dessous.

Environnement
Nom d’hôte pour l’authentification JWT
Nom d’hôte pour l’authentification OAuth
Production
https://aam.adobe.io/...
https://api.demdex.com/...
Beta
https://aam-beta.adobe.io/...
https://api-beta.demdex.com/...
NOTE
L’environnement Audience Manager bêta est une version autonome à plus petite échelle de l’environnement de production. Toutes les données que vous souhaitez tester doivent être saisies et collectées dans cet environnement.

Versions versions

De nouvelles versions de ces API sont publiées régulièrement. Une nouvelle version incrémente le numéro de version API. Le numéro de version est référencé dans le URL de la requête, comme v<version number> dans l’exemple suivant :

https://<host>/v1/...

Codes de réponse définis response-codes-defined

HTTP les codes d’état et le texte de réponse renvoyés par le Audience Manager de REST API.

ID du code de réponse
Texte de réponse
Définition
200
OK
La demande a été traitée. Renvoie le contenu ou les données attendus si nécessaire.
201
Created
La ressource a été créée. Renvoie pour les requêtes PUT et POST.
204
No Content
La ressource a été supprimée. Le corps de la réponse sera vide.
400
Bad Request
Le serveur n’a pas compris la demande. Généralement en raison d’une syntaxe incorrecte. Vérifiez votre requête et réessayez.
403
Forbidden
Vous n’avez pas accès à la ressource.
404
Not Found
La ressource est introuvable pour le chemin spécifié.
409
Conflict
La demande n’a pas pu aboutir en raison d’un conflit avec l’état de la ressource.
500
Server Error
Le serveur a rencontré une erreur inattendue qui l’a empêché de satisfaire la requête.
de293fbf-b489-49b0-8daa-51ed303af695