API de ressource média CCCIF
L’API de ressource média CCCIF (Custom Chat Chatbot Interoperability Framework) fournit des points de terminaison qui permettent à un bot principal de charger des pièces jointes vers l’instance associée ServiceNow .
Appelez cette API dans votre bot primaire pour charger des pièces jointes privées à partir d’un utilisateur qui a une conversation via Agent virtuel (VA). Vous devez ensuite envoyer le paramètre mediaUrl renvoyé par cette API à l’API VA.
Si la pièce jointe est publique, vous pouvez simplement envoyer l’URL de la pièce jointe dans le corps de la demande de votre appel d’intégration de bot d’Agent virtuel .
Pour accéder à cette API, le module d’extension Conversational Custom Chat Integration (com.glide.cs.custom.adapter) doit être activé. En outre, les propriétés système des pièces jointes doivent être configurées.
Pour en savoir plus sur les options de l’API, consultez API de l’Agent virtuelAgent virtuel.
CCCIF - POST /cccif/media/upload
Charge une pièce jointe privée dans l’instance appelée ServiceNow qui stocke la pièce jointe dans la table Pièces jointes [sys_attachment].
Appelez cette méthode dans votre bot primaire pour charger des pièces jointes privées à partir d’un utilisateur qui a une conversation via Agent virtuel (VA). Vous devez ensuite envoyer le paramètre mediaUrl renvoyé par cette méthode à l’API VA à l’aide de la commande .API d’intégration de bot Agent virtuel
Format d'URL
URL versionnée : /api/now/{api_version}/cccif/media/upload
URL par défaut : /api/now/cccif/media/upload
Paramètres de demande pris en charge
| Nom | Description |
|---|---|
| api_version | Facultatif. Version du point de terminaison auquel accéder. Exemple : v1 ou v2. Spécifiez uniquement cette valeur pour utiliser une version de point de terminaison différente de la dernière. Type de données : chaîne |
| Nom | Description |
|---|---|
| Aucun |
| Nom | Description |
|---|---|
| fichier | Requis. Chemin d’accès au fichier à charger. Type de données : chaîne, telle que @File chemin d’accès <file_path> |
| provider_application_id | Sys_id du sys_cs_provider_application interagissant avec le bot VA. Par défaut : Sys_id de l’application VA bot to bot provider |
| user_id | Requis. Identificateur unique de l’utilisateur qui interagit avec le bot VA. Il peut s’agir de n’importe quelle chaîne unique pour chaque utilisateur. Type de données : chaîne |
En-têtes
Les en-têtes de demande et de réponse suivants s'appliquent à cette action HTTP uniquement ou s'appliquent à cette action d'une manière distincte. Pour obtenir la liste des en-têtes généraux utilisés dans l’API REST, consultez En-têtes d’API REST pris en charge.
| En-tête | Description |
|---|---|
| Accepter | Format de données du corps de la réponse. Types pris en charge : multipart/form-data. |
| En-tête | Description |
|---|---|
| Type de contenu | Format de données du corps de la réponse. Prend uniquement en charge application/json. |
Codes d'état
Les codes d'état suivants s'appliquent à cette action HTTP. Pour obtenir la liste des codes d’état possibles utilisés dans l’API REST, consultez Codes de réponse HTTP de l’API REST.
| Code d'état | Description |
|---|---|
| 201 | Réussi. La demande a été correctement traitée. |
| 400 | Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté. |
| 401 | Non autorisé. Les informations d'identification de l'utilisateur sont incorrectes ou n'ont pas été transmises. |
| 404 | Introuvable. L’élément demandé est introuvable. |
| 500 | Erreur interne du serveur. Une erreur inattendue s'est produite lors du traitement de la demande. La réponse contient des informations supplémentaires sur l'erreur. |
Paramètres de corps de réponse (JSON)
| Nom | Description |
|---|---|
| attachmentId | Sys_id de la pièce jointe qui a été stockée. Type de données : chaîne |
| erreur | Description de toute erreur détectée lors du traitement de la demande. Type de données : objet |
| error.detail | Détails sur l’erreur qui a été rencontrée. Type de données : chaîne |
| message.erreur | Message décrivant l’erreur qui a été générée. Type de données : chaîne |
| mediaUrl | URL de pièce jointe à envoyer au bot primaire pour accéder à la pièce jointe. Le bot principal doit envoyer cette URL dans le message.attachment.url paramètre du corps de la demande du point de terminaison POST /sn_va_as_service/bot/integration . Type de données : chaîne |
| nom | Nom du fichier de la pièce jointe. Type de données : chaîne |
| État | État de la pièce jointe dans la table des pièces jointes. Valeurs possibles :
Type de données : chaîne |
Demande cURL
Cet exemple montre comment télécharger une pièce jointe .png fichier.
curl --location --request POST 'https://instance.servicenow.com/api/now/v1/cccif/media/upload' \
--header 'Authorization: Basic xxxxxxxxxxxxx' \
--header 'Content-Type:multipart/form-data' \
--form 'user_id="lincoln"' \
--form 'file=@"/Users/Desktop/Screenshot 2021-10-25 at 5.08.14 PM.png"'
Réponse :
Response :{
"result": {
"mediaUrl": "https://instance.servicenow.com/api/now/v1/cs/media/vGfewkfAv0VBo2RxmlTM448L789Pp6rqLFLUNYQxZsUUFrsgMA8aW9W0zWx1a5fG",
"name": "Screenshot 2021-10-25 at 5.08.14 PM.png",
"state": "pending",
"attachmentId": "299c648887b73c1022b6a6cd0ebb3534"
}