Utiliser l’API de limitation

Dernière mise à jour : 2023-09-01
  • Rubriques :
  • Journeys
    Afficher plus sur ce sujet
  • Créé pour :
  • Intermediate
    User

L’API de limitation vous permet de créer, de configurer et de suivre vos configurations de limitation.

Description de l’API de limitation

Méthode Chemin Description
POST list/endpointConfigs Obtention d’une liste des configurations de limitation des points d’entrée
POST /endpointConfigs Création d’une configuration de limitation des points d’entrée
POST /endpointConfigs/{uid}/deploy Déploiement d’une configuration de limitation des points d’entrée
POST /endpointConfigs/{uid}/undeploy Annulation du déploiement d’une configuration de limitation des points d’entrée
POST /endpointConfigs/{uid}/canDeploy Vérification de la possibilité de déployer ou non une configuration de limitation des points d’entrée
PUT /endpointConfigs/{uid} Mise à jour de la configuration de limitation des points d’entrée
GET /endpointConfigs/{uid} Récupération d’une configuration de limitation des points d’entrée
DELETE /endpointConfigs/{uid} Suppression d’une configuration de limitation des points d’entrée

Lorsqu’une configuration est créée ou mise à jour, une vérification est automatiquement effectuée pour garantir la syntaxe et l’intégrité de la payload.
Si certains problèmes se produisent, l’opération renvoie un avertissement ou des erreurs pour vous aider à corriger la configuration.

Configuration du point d’entrée

Voici la structure de base d’une configuration de point d’entrée :

{
    "url": "<endpoint URL>",  //wildcards are allowed in the endpoint URL
    "methods": [ "<HTTP method such as GET, POST, >, ...],
    "services": {
        "<service name>": { . //must be "action" or "dataSource"
            "maxHttpConnections": <max connections count to the endpoint (optional)>
            "rating": {
                "maxCallsCount": <max calls to be performed in the period defined by period/timeUnit>,
                "periodInMs": <integer value greater than 0>
            }
        },
        ...
    }
}
IMPORTANT

Le paramètre maxHttpConnections est facultatif. Il vous permet de limiter le nombre de connexions que Journey Optimizer va ouvrir au système externe.

La valeur maximale pouvant être définie est de 400. Si rien n’est spécifié, le système peut s’ouvrir à plusieurs milliers de connexions en fonction de l’échelle dynamique du système.

Exemple :

`{
  "url": "https://api.example.org/data/2.5/*",
  "methods": [
    "GET"
  ],
  "services": {
    "dataSource": {
      "maxHttpConnections": 50,
      "rating": {
        "maxCallsCount": 500,
        "periodInMs": 1000
      }
    }
  },
  "orgId": "<IMS Org Id>"
}

Avertissement et erreurs

Lorsqu’une méthode canDeploy est appelée, le processus valide la configuration et renvoie le statut de validation identifié par son identifiant unique, au choix :

"ok" or "error"

Les erreurs potentielles sont les suivantes :

  • ERR_ENDPOINTCONFIG_100: capping config: missing or invalid url
  • ERR_ENDPOINTCONFIG_101: capping config: malformed url
  • ERR_ENDPOINTCONFIG_102: capping config: malformed url: wildchar in url not allowed in host:port
  • ERR_ENDPOINTCONFIG_103: capping config: missing HTTP methods
  • ERR_ENDPOINTCONFIG_104: capping config: no call rating defined
  • ERR_ENDPOINTCONFIG_107: capping config: invalid max calls count (maxCallsCount)
  • ERR_ENDPOINTCONFIG_108: capping config: invalid max calls count (periodInMs)
  • ERR_ENDPOINTCONFIG_111: capping config: can't create endpoint config: invalid payload
  • ERR_ENDPOINTCONFIG_112: capping config: can't create endpoint config: expecting a JSON payload
  • ERR_AUTHORING_ENDPOINTCONFIG_1: invalid service name <!--<given value>-->: must be 'dataSource' or 'action'

L’avertissement potentiel est :

ERR_ENDPOINTCONFIG_106: capping config: max HTTP connections not defined: no limitation by default

Cas d’utilisation

Cette section décrit les cinq principaux cas d’utilisation que vous pouvez mettre en œuvre pour gérer la configuration des limitations dans Journey Orchestration.

Pour vous aider dans les tests et la configuration, une collection Postman est disponible ici.

Elle a été créée pour partager la collection de variables Postman générée par le biais des options Intégrations de la console Adobe I/O > Essayez-la > Télécharger pour Postman, qui génère un fichier d’environnement Postman contenant les valeurs d’intégration sélectionnées.

Une fois le téléchargement puis le chargement effectués dans Postman, vous devez ajouter trois variables : {JO_HOST}, {BASE_PATH} et {SANDBOX_NAME}.

  • {JO_HOST} : URL de passerelle Journey Orchestration
  • {BASE_PATH} : point d’entrée pour l’API. La valeur est '/authoring'
  • {SANDBOX_NAME} : l’en-tête x-sandbox-name (par exemple, « prod ») correspondant au nom sandbox dans lequel les opérations d’API auront lieu. Pour plus d’informations, consultez la Présentation des sandbox.

Dans la section suivante, vous trouverez la liste classée des appels API REST pour effectuer le cas d’utilisation.

Cas d’utilisation n°1 : création et déploiement d’une nouvelle configuration de limitation

  1. list
  2. create
  3. candeploy
  4. deploy

Cas d’utilisation n°2 : mise à jour et déploiement d’une configuration de limitation non encore déployée

  1. list
  2. get
  3. update
  4. candeploy
  5. deploy

Cas d’utilisation n°3 : annulation du déploiement et suppression d’une configuration de limitation déployée

  1. list
  2. undeploy
  3. delete

Cas d’utilisation n°4 : suppression d’une configuration de limitation déployée

En un seul appel d’API, vous pouvez annuler le déploiement et supprimer la configuration à l’aide du paramètre forceDelete.

  1. list
  2. delete, avec le paramètre forceDelete

Cas d’utilisation n°5 : mise à jour d’une configuration de limitation déjà déployée

  1. list
  2. get
  3. update
  4. undeploy
  5. candeploy
  6. deploy

Sur cette page