Accès à l'API pour le déploiement de conteneurs
La documentation de l'API IBM® Sterling Intelligent Promising est disponible dans un autre conteneur qui peut être déployé par l'opérateur IBM Sterling Intelligent Promising . Vous pouvez également déployer le conteneur de documentation d'API en externe sans utiliser l'opérateur.
Accéder à la documentation de l'API
La documentation sur les API présente une interface organisée et conviviale pour afficher les API dans trois catégories - Admin, Opérations et Public. Cette catégorisation vous permet de localiser rapidement les API pertinentes et d'améliorer la navigation générale.
<base_URL> par votre adresse de domaine.<base_URL>/api-docsDéploiement de la documentation d'API à l'aide de l'opérateur IBM Sterling Intelligent Promising
Pour déployer la documentation d'API à l'aide de l'opérateur, ajoutez apiDocsService à la spécification SIPEnvironment . Si apiDocsService n'est pas défini dans SIPEnvironment, le conteneur de documentation d'API n'est pas déployé. Pour plus d'informations, voir le paramètre apiDocsService.
Déploiement de la documentation d'API sans opérateur IBM Sterling Intelligent Promising
Pour déployer des documents d'API en externe sans l'opérateur IBM Sterling Intelligent
Promising , utilisez un conteneur Docker ou Kubernetes. L' URL permettant d'accéder de manière externe à la documentation de l'API est <base_URL>/api-docs, où <base_URL> est http://localhost:<host_port>/. Utilisez la commande suivante pour créer un conteneur Docker de documentation d'API. Pour <image_name>, voir Registry image names for IBM Sterling Intelligent Promising Standard package.
docker run -p <host_port>:8080 --name <container_name> <your registry>/<image_name>
Authentification des API
Vous pouvez authentifier les API à l'aide du jeton Web JSON dans un appel d'API.
- JWT généré à partir de Order Management System
Software (OMS)Order Management System Software génère un jeton JWT une fois que la configuration associée au jeton JWT est activée. Pour obtenir le jeton d'OMS,
- Appel de l'API REST de connexion dans OMS à l'aide de l'ID de connexion / mot de passe et extraction du jeton utilisateur à partir de la sortie de l'API
- Appelez le noeud final REST
/jwt?_loginid=<loginid>&_token=<user token fetched in previous step>dans OMS pour obtenir le jeton Web JSON (JWT)
- JWT généré à partir d'un système externe
Vous pouvez configurer votre système externe pour générer le jeton Web JSON (JWT) qui peut être utilisé pour effectuer des appels d'API sur IBM Sterling Intelligent Promising. Veillez à configurer la clé publique dans IBM Sterling Intelligent Promising JWT gateway verifier comme expliqué dans Création d'un secret d'émetteur JWT à l'aide d'une clé publique.
Le fragment suivant est un exemple de contenu pour les jetons JWT. iss et exp sont des zones obligatoires dans le contenu.
{
“iss”: “oms”,
“aud”: “sip”,
“exp”: 1688772650,
“nbf”: 1567771750,
“sub”: “user”,
“userID”: “user”,
}Accès basé sur les rôles pour l'accès aux API
Afin de garantir une sécurité et une efficacité opérationnelle optimales, les conteneurs " Sterling Intelligent Promising offrent les rôles suivants pour l'accès aux API.
| Rôle | Descriptif | Nœuds finaux d'API |
|---|---|---|
| MARCHE | Les utilisateurs abonnés au rôle Business exécutent divers cas d'utilisation d'opérations métier. Les abonnés à ce rôle ont accès à toutes les API avec des noeuds finaux tels que /inventory, /configuration, /catalog, etc. |
|
| OPERATIONS | Les utilisateurs abonnés au rôle OPERATIONS gèrent les déploiements et définissent des règles pour les locataires. Les abonnés à ce rôle ont accès aux API avec le noeud final /operations . | https://<sip-domain>/inventory/operations/* |
| Administration | Les utilisateurs abonnés au rôle ADMINISTRATION gèrent la gouvernance, l'accès utilisateur et d'autres tâches d'administration. Les abonnés à ce rôle ont accès aux API pour les rôles métier et d'opérations, ainsi qu'aux API d'administration. |
|
Pour configurer un rôle de service dans le secret de configuration JWT, voir Création d'un secret d'émetteur JWT à l'aide d'une clé publique.
API d'appel
Lors de l'appel des API, veillez à transmettre tenantId en tant que default.
Par exemple, https://<sip-domain>/inventory/<tenantid>/v2/availability/node.
En-tête
"Content-Type" : "application/json"
"Authorization" : "Bearer [JWT_token]"
Corps
{
"demandType": "OPEN_ORDER",
"lines": [
{
"deliveryMethod": "SHP",
"itemId": "sample0123",
"lineId": "line_sample01234",
"productClass": "NEW",
"shipNodes": "["eastnode01"]",
"unitOfMeasure": "EACH"
}
],
"segment": "ONLINE",
"segmentType": "Channel"
}