API d’ingestion de contenu externe

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 20 minutes de lecture
  • L’API d’ingestion de contenu externe fournit des points de terminaison qui permettent l’ingestion de contenu provenant de sources extérieures à votre ServiceNow® instance dans l’index de l’application ServiceNow® Recherche IA .

    API d’ingestion de contenu externe : DELETE /ais/external_content/deleteByQuery/{schema_table_name}

    Supprime de l’index Recherche IA tous les documents externes qui correspondent à la requête spécifiée.

    Format d'URL

    URL versionnée : /api/now/{api_version}/ais/external_content/deleteByQuery/{schema_table_name} ?query={query}

    Remarque :
    Les versions disponibles sont spécifiées dans l’explorateur d’API REST. Pour les API REST basées sur un script, des informations de version supplémentaires sont disponibles sur le formulaire Service REST scripté.

    Paramètres de demande pris en charge

    Tableau 1. Paramètres de chemin d'accès
    Nom Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Par 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

    schema_table_name

    Nom de la table de schéma de contenu externe qui définit le schéma des documents indexés à supprimer. Par exemple, u_ext_content.

    Type de données : chaîne

    Tableau 2. Paramètres de requête
    Nom Description
    requête

    Une requête valide avec échappement d’URL pour la table de schémas spécifiée par schema_table_name. Par exemple, title=Introduction pour rechercher des documents dont le titre est Introduction.

    Type de données : chaîne

    Tableau 3. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    Aucun

    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.

    Tableau 4. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Tableau 5. En-têtes de réponses
    En-tête Description
    Aucun

    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.

    Tableau 6. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    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 du corps de la réponse (JSON ou XML)

    Nom Description
    erreur

    Objet décrivant l’erreur rencontrée lors du traitement de la demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail

    Détails de l’erreur rencontrée pendant le traitement de la demande.

    Type de données : chaîne

    message.erreur

    Message pour l’erreur rencontrée pendant le traitement de la demande.

    Type de données : chaîne

    résultat

    Résultat d’une demande traitée avec succès.

    Type de données : chaîne

    état

    Statut d’une demande en échec.

    Valeurs valides :
    • failure

    Type de données : chaîne

    Demande cURL

    Supprimer les documents avec des valeurs de champ de titre Introduction et rapport pour le 31 octobre 2020 à partir de la table de schéma u_ext_content.

    curl "https://instance.service-now.com/api/now/v2/ais/external_content/deleteByQuery/u_ext_content?query=title%3DIntroduction%20OR%20title%3DReport%20for%2031%20October%202020" \
    --request DELETE \
    --user "username":"password" \
    --header "Accept: application/json"
    {
      "result": "Delete By Query Successfully Executed"
    }

    API d’ingestion de contenu externe – DELETE /ais/external_content/deleteDocument/{schema_table_name}/{document_id}

    Supprime de l’index Recherche IA le document externe avec un identificateur unique spécifié.

    Format d'URL

    URL versionnée : /api/now/{api_version}/ais/external_content/deleteDocument/{schema_table_name}/{document_id}

    Remarque :
    Les versions disponibles sont spécifiées dans l’explorateur d’API REST. Pour les API REST basées sur un script, des informations de version supplémentaires sont disponibles sur le formulaire Service REST scripté.

    Paramètres de demande pris en charge

    Tableau 7. Paramètres de chemin d'accès
    Paramètre Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Par 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

    document_id

    L’identificateur unique du document externe à supprimer. Par exemple, ADMIN-2027858531-16.

    Type de données : chaîne

    schema_table_name

    Le nom de la table de schéma de contenu externe qui définit le schéma du document indexé à supprimer. Par exemple, u_ext_content.

    Type de données : chaîne

    Tableau 8. Paramètres de requête
    Nom Description
    Aucun
    Tableau 9. Paramètres de corps de demande (XML ou JSON)
    Nom Description
    Aucun

    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.

    Tableau 10. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Tableau 11. En-têtes de réponses
    En-tête Description
    Aucun

    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.

    Tableau 12. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    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 du corps de la réponse (JSON ou XML)

    Élément Description
    erreur

    Objet décrivant l’erreur rencontrée lors du traitement de la demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail

    Détails de l’erreur rencontrée pendant le traitement de la demande.

    Type de données : chaîne

    message.erreur

    Message pour l’erreur rencontrée pendant le traitement de la demande.

    Type de données : chaîne

    résultat

    Résultat d’une demande traitée avec succès.

    Type de données : chaîne

    état

    Statut d’une demande en échec.

    Valeurs valides :
    • failure

    Type de données : chaîne

    Demande cURL

    Supprimez le document avec l’identificateur ADMIN-2587918521-27 de la table de schéma u_ext_content.

    curl 'https://instance.service-now.com/api/now/v2/ais/external_content/deleteDocument/u_ext_content/ADMIN-2587918521-27' \
    --request DELETE \
    --user 'username':'password' \
    --header 'Accept: application/json'
    {
      "result":"Document removed"
    }

    API d’ingestion de contenu externe : POST /ais/external_content/ingestDocument/{schema_table_name}

    Envoie une liste de documents externes au batcher d’ingestion Recherche IA pour indexation. Une fois l’indexation terminée, le contenu des documents ingérés devient consultable.

    Vous pouvez utiliser ce point de terminaison pour alimenter des documents externes avec du contenu textuel et des métadonnées.

    Si vous devez associer du contenu et des métadonnées binaires interrogeables à un document externe, procédez comme suit :
    1. Stockez le contenu binaire à Recherche IA l’aide du point de terminaison POST /ais/external_content/storeContent . Enregistrez la valeur du paramètre Corps de la result réponse.
    2. Envoyez le document externe à l’aide de Recherche IA ce point de terminaison. Définissez le paramètre du corps de la demande du document pour qu’il content_pointer corresponde à la valeur du paramètre corps de la réponse enregistrée result .
    Au cours de l’ingestion, Recherche IA analyse le contenu binaire et ajoute son contenu pouvant être recherché à l’enregistrement indexé qui représente le document externe. L’analyse supprime l’objet de contenu stocké.

    Format d'URL

    URL versionnée : /api/now/{api_version}/ais/external_content/ingestDocument/{schema_table_name}

    Remarque :
    Les versions disponibles sont spécifiées dans l’explorateur d’API REST. Pour les API REST basées sur un script, des informations de version supplémentaires sont disponibles sur le formulaire Service REST scripté.

    Paramètres de demande pris en charge

    Tableau 13. Paramètres de chemin d'accès
    Paramètre Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Par 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

    schema_table_name

    Nom de la table de schéma de contenu externe qui définit le schéma des documents externes dans la demande. Par exemple, u_ext_content.

    Type de données : chaîne

    Tableau 14. Paramètres de requête
    Nom Description
    Aucun
    Tableau 15. Paramètres de corps de demande (XML ou JSON)
    Élément Description
    [tableau]

    Requis. Tableau d’objets sans nom dans lequel chaque objet représente un document externe à ingérer pour l’indexation.

    Type de données : tableau

    [
      {
        "content_pointer": "String",
        "document_id": "String",
        "principals": {Object},
        "properties": {Object}
      }
    ]
    [tableau] .content_pointer
    Identificateur d’une instance de contenu binaire stockée à l’aide du point de terminaison POST /ais/external_content/storeContent . Au cours de l’ingestion, Recherche IA analyse le contenu binaire et ajoute son contenu pouvant être recherché à l’enregistrement indexé qui représente le document externe. L’analyse supprime l’objet de contenu stocké.
    Remarque :
    Cet identificateur doit correspondre à l’élément corps de réponse result renvoyé par le point de terminaison storeContent .

    Type de données : chaîne

    [tableau].document_id

    Requis. Identificateur unique du document externe dans la table de schéma de contenu externe spécifiée par le paramètre de chemin d’accès schema_table_name .

    Remarque :
    Lorsque vous ingérez un document, il écrase tout document existant dans la même table de schéma de contenu externe qui a le même document_id. Si deux documents ou plus dans la même demande d’ingestion ont une même identique document_id, la demande échoue.

    Type de données : chaîne

    [tableau].principaux
    Objet contenant des paires clé-valeur qui décrivent les autorisations d’accès au document externe pour les principaux de sécurité définis de façon externe (utilisateurs et groupes).
    Remarque :

    Si vous omettez ce paramètre pour un document, la demande aboutit, mais Recherche IA rejette le document avec le message de retour d’ingestion Le principal du document est manquant.

    Si cet objet de paramètre n’inclut aucune paire clé-valeur accordant l’accès à un document, la demande aboutit, mais Recherche IA rejette le document contenant le message de retour d’ingestion Le principal du document n’est pas valide.

    Type de données : objet

    "principals": {
      "everyone": Boolean,
      "groups.deny": [Array],
      "groups.read": [Array],
      "none": Boolean,
      "users.deny": [Array],
      "users.read": [Array]
    }

    Versions prises en charge : disponibles à partir de la version 2 de l’API.

    [tableau].principaux.tout le monde
    Marqueur indiquant si l’accès au document externe est autorisé pour tous les utilisateurs. Lorsque ce paramètre est défini sur true, tous les ServiceNow AI Platform utilisateurs peuvent afficher l’enregistrement indexé créé à partir du document.
    Remarque :
    Si vous définissez à la fois ce paramètre et [array].principals.none cette option pour un document, la demande aboutit, mais Recherche IA rejette le document avec un message de retour d’ingestion Le principal du document n’est pas validetrue. Vous ne pouvez définir qu’un seul de ces deux paramètres true dans une demande.
    Valeurs valides :
    • true: autoriser l’accès au document à tous les utilisateurs. Recherche IA Ignore tous les [array].principals.groups.* paramètres et [array].principals.users.* les paramètres du document.
    • false: ne permettez pas à tous les utilisateurs d’accéder au document externe. Les utilisateurs ne peuvent accéder au document que si [array].principals.none la valeur est définie sur faux et si l’interaction de leurs mappages utilisateur et des paramètres et [array].principals.users.* l’autorisation [array].principals.groups.* est autorisée.

    Type de données : booléennes

    Valeur par défaut : true

    Versions prises en charge : disponibles à partir de la version 2 de l’API.

    [tableau].principals.groups.deny

    Tableau de chaînes où chaque chaîne est le nom d’un groupe défini de façon externe auquel l’accès au document externe est refusé. ServiceNow AI Platform Les utilisateurs mappés à l’un de ces groupes externes ne peuvent pas afficher l’enregistrement de résultats de recherche indexé créé à partir du document.

    Si l’un ou l’autre [array].principals.everyone[array].principals.none est défini sur true, ce paramètre n’a aucun effet.

    Ce paramètre a priorité sur [array].principals.groups.read. Si le même utilisateur est mappé à des groupes externes avec des autorisations d’accès en lecture et refusées pour un document, Recherche IA cela refuse à cet utilisateur l’accès à l’enregistrement indexé.

    Par défaut, [array].principals.users.read a priorité sur ce paramètre. Pour inverser cet ordre de priorité pour une source indexée, consultez Modifier la priorité des autorisations de lecture utilisateur et de refus de groupe pour une source indexée de contenu externe.

    Type de données : tableau

    Les valeurs peuvent être dans n’importe quel format, en fonction des noms des groupes définis en externe spécifiés. Exemples :

    "groups.deny": [
      "hr-admin",
      "legal"
    ]

    Versions prises en charge : disponibles à partir de la version 2 de l’API.

    [array].principals.groups.read

    Tableau de chaînes où chaque chaîne est le nom d’un groupe défini en externe qui est autorisé à accéder au document externe. ServiceNow AI Platform Les utilisateurs mappés à l’un de ces groupes externes peuvent afficher l’enregistrement de résultats de recherche indexé créé à partir du document.

    Si l’un ou l’autre [array].principals.everyone[array].principals.none est défini sur true, ce paramètre n’a aucun effet.

    [array].principals.groups.deny a priorité sur ce paramètre. Si le même utilisateur est mappé à des groupes externes avec des autorisations d’accès en lecture et refusées pour un document, Recherche IA cela refuse à cet utilisateur l’accès à l’enregistrement indexé.

    Type de données : tableau

    Les valeurs peuvent être dans n’importe quel format, en fonction des noms des groupes définis en externe spécifiés. Exemples :

    "groups.read": [
      "devops",
      "it",
      "report-admins"
    ]

    Versions prises en charge : disponibles à partir de la version 2 de l’API.

    [tableau].principaux.aucun
    Option booléenne indiquant si l’accès au document externe est refusé à tous les utilisateurs. Lorsque ce paramètre est défini sur true, seuls ServiceNow AI Platform les utilisateurs disposant du rôle de privilège élevé ais_high_security_admin peuvent afficher l’enregistrement indexé créé à partir du document.
    Remarque :
    Si vous définissez à la fois ce paramètre et celui d’un true document, Recherche IA le document est rejeté lors de l’ingestion avec un message d’erreur Le principal du document n’est pas valide.[array].principals.everyone Vous ne pouvez définir qu’un seul de ces deux paramètres true dans une demande.
    Valeurs valides :
    • true: refusez l’accès au document à tous les utilisateurs, à l’exception de ceux disposant du rôle de privilège ais_high_security_admin élevé. Recherche IA Ignore tous les [array].principals.groups.* paramètres et [array].principals.users.* les paramètres du document.
    • false: ne refusez pas l’accès au document à tous les utilisateurs. Les utilisateurs peuvent accéder au document si [array].principals.everyone la valeur est définie sur true, ou si l’interaction de leurs mappages d’utilisateurs et des paramètres et [array].principals.users.read l’autorisation [array].principals.groups.read est autorisée.

    Type de données : booléennes

    Valeur par défaut : false

    Versions prises en charge : disponibles à partir de la version 2 de l’API.

    [tableau].principaux.utilisateurs.deny

    Tableau de chaînes où chaque chaîne est le nom d’un utilisateur défini de manière externe qui se voit refuser l’accès au document externe. ServiceNow AI Platform Les utilisateurs mappés à l’un de ces utilisateurs externes ne peuvent pas afficher l’enregistrement de résultats de recherche indexé créé à partir du document.

    Si l’un ou l’autre [array].principals.everyone[array].principals.none est défini sur true, ce paramètre n’a aucun effet.

    Ce paramètre a priorité sur [array].principals.users.read. Si le même utilisateur est mappé à des utilisateurs externes ayant à la fois des autorisations d’accès en lecture et des autorisations de refus d’accès à un document, Recherche IA cela refuse à cet utilisateur l’accès à l’enregistrement indexé.

    Type de données : tableau

    Les valeurs peuvent être dans n’importe quel format, en fonction des noms des utilisateurs définis en externe spécifiés. Exemples :

    "users.deny": [
      "ad\bow-ruggeri",
      "abel-tuter@sharepoint"
    ]

    Versions prises en charge : disponibles à partir de la version 2 de l’API.

    [array].principals.users.read

    Tableau de chaînes où chaque chaîne est le nom d’un utilisateur défini de façon externe qui est autorisé à accéder au document externe. ServiceNow AI Platform Les utilisateurs mappés à l’un de ces utilisateurs externes peuvent afficher l’enregistrement de résultats de recherche indexé créé à partir du document.

    Si l’un ou l’autre [array].principals.everyone[array].principals.none est défini sur true, ce paramètre n’a aucun effet.

    [array].principals.users.deny a priorité sur ce paramètre. Si le même utilisateur est mappé à des utilisateurs externes ayant à la fois des autorisations d’accès en lecture et des autorisations de refus d’accès à un document, Recherche IA cela refuse à cet utilisateur l’accès à l’enregistrement indexé.

    Par défaut, ce paramètre est prioritaire sur [array].principals.groups.deny. Pour inverser cet ordre de priorité pour une source indexée, consultez Modifier la priorité des autorisations de lecture utilisateur et de refus de groupe pour une source indexée de contenu externe.

    Type de données : tableau

    Les valeurs peuvent être dans n’importe quel format, en fonction des noms des utilisateurs définis en externe spécifiés. Exemples :

    "users.read": [
      "ad\abel-tuter",
      "beth-anglin@sharepoint"
    ]

    Versions prises en charge : disponibles à partir de la version 2 de l’API.

    [tableau].propriétés

    Objet contenant des paires nom-valeur où chaque paire représente un nom de champ et une valeur à ingérer pour le document. Tous les noms et valeurs de champs doivent être spécifiés sous forme de chaînes.

    Après l’ingestion, ces valeurs de champ de document sont accessibles via la source indexée définie pour la table de schéma de contenu externe spécifiée par le paramètre path schema_table_name . Les utilisateurs peuvent rechercher ces valeurs de champ dans les sources de recherche dérivées de cette source indexée.

    Type de données : objet

    Les noms de champs ne peuvent contenir que des lettres minuscules et des traits de soulignement. Les valeurs peuvent inclure n’importe quel caractère. La longueur de la valeur est limitée par l’attribut max_length défini pour le champ dans la table de schéma de contenu externe. Lesquelles des réponses suivantes sont des exemples de paires nom-valeur de champ ?

    "properties": {
      "creation_date": "2020-11-03 12:27:43",
      "file_size": "10285",
      "title": "Introduction",
      "url": "file:///myhost/reports/Introduction.pdf"
    }

    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.

    Tableau 16. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Content-Type Format de données du corps de la demande. Prend uniquement en charge application/json.
    Tableau 17. En-têtes de réponses
    En-tête Description
    Aucun

    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.

    Tableau 18. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    202 Réussite partielle. La demande a été traitée. Certains documents comportent un avertissement de retour d’ingestion ou des messages d’erreur.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    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 du corps de la réponse (JSON ou XML)

    Nom Description
    erreur

    Objet décrivant l’erreur rencontrée lors du traitement de la demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail

    Détails de l’erreur rencontrée pendant le traitement de la demande.

    Type de données : chaîne

    message.erreur

    Message pour l’erreur rencontrée pendant le traitement de la demande.

    Type de données : chaîne

    résultat

    Chaîne au format JSON représentant l’objet de résultat pour la demande d’ingestion.

    Type de données : chaîne

    "result": "{\"duration_in_ms\": Number, \"feedback\": [Array] }"
    result.duration_in_ms

    Temps passé à ingérer les documents externes.

    Type de données : nombre

    Unité : millisecondes

    résultat.commentaires

    Tableau d’objets dans lequel chaque objet représente des commentaires pour un document ingéré à partir du corps de la demande.

    Type de données : tableau

    "feedback": [
      {
        "document_id": "String",
        "messages": [Array]
      }
    ]
    result.feedback.document_id

    Identificateur unique du document externe, tel que spécifié dans le corps de la demande.

    Type de données : chaîne

    résultats.commentaires.messages

    Tableau d’objets sans nom dans lequel chaque objet représente un message de retour d’ingestion enregistré pendant l’indexation du document externe.

    Type de données : tableau

    "messages": [
      {
        "code": "String",
        "component": "String",
        "level": "String",
        "message": "String"
      }
    ]
    résultat.commentaires.messages.code

    Code d’une exception levée par le composant de workflow d’indexation qui a journalisé le message de commentaires d’ingestion.

    Type de données : chaîne

    résultat.feedback.messages.composant

    Identificateur du composant de workflow d’indexation qui a journalisé le message de commentaire d’ingestion.

    Type de données : chaîne

    résultat.commentaires.messages.niveau

    Niveau de connexion pour le message de retour d’ingestion.

    Valeurs valides :
    • ERROR
    • INFO
    • MINOR_ERROR
    • WARN

    Type de données : chaîne

    résultat.feedback.messages.message

    Texte consigné pour le message de commentaire d’ingestion.

    Type de données : chaîne

    état

    Statut d’une demande en échec.

    Valeurs valides :
    • failure

    Type de données : chaîne

    Ordre de priorité des autorisations principales

    L’ordre de priorité des [array].principals autorisations dépend de la valeur de l’attribut user_read_takes_precedence_over_group_deny de la source indexée utilisée pour ingérer un document externe.
    Valeur d'attribut Ordre de priorité des autorisations principales
    vrai
    De la priorité la plus élevée à la plus basse :
    1. [array].principals.everyone, [array].principals.none
    2. [array].principals.users.deny
    3. [array].principals.users.read
    4. [array].principals.groups.deny
    5. [array].principals.groups.read
    Remarque :
    Il s’agit de la valeur d’attribut par défaut pour les sources indexées de contenu externe.
    Faux
    De la priorité la plus élevée à la plus basse :
    1. [array].principals.everyone, [array].principals.none
    2. [array].principals.users.deny, [array].principals.groups.deny
    3. [array].principals.users.read, [array].principals.groups.read

    Demande cURL

    Alimentez deux documents externes (avec des pointeurs de contenu vers des objets de contenu binaire précédemment stockés à l’aide du point de terminaison POST /ais/external_content/storeContent ) pour l’indexation dans la table de schéma u_ext_content.

    curl 'https://instance.servicenow.com/api/now/v2/ais/external_content/ingestDocument/u_ext_content' \
      --request POST \
      --user 'username':'password' \
      --header 'Accept: application/json' \
      --header 'Content-Type: application/json' \
      --data '[
      {
        "document_id": "ADMIN-2027858531-16",
        "content_pointer": "749b52a1-baa8-4556-a4f3-00404c95e6a8",
        "properties": {
          "title": "Introduction",
          "url": "file:///myhost/reports/Introduction.pdf",
          "file_name": "Introduction.pdf",
          "file_size": "10285",
          "creation_date": "2020-11-01 12:27:43"
        },
        "principals": {
          "everyone": false,
          "groups.read": [
            "report-users",
            "report-admins"
          ],
          "users.deny": [
            "ad\abel-tuter"
          ]
        }
      },
      {
        "document_id": "ADMIN-2587918521-27",
        "content_pointer": "bd605435-268b-464f-a7c3-0c5ea894a5c2",
        "properties": {
          "title": "Report for 31 August 2020",
          "url": "file:///myhost/reports/Report-2020-08-31.pdf",
          "file_size": "27597",
          "creation_date": "2020-09-01 12:48:13"
        },
        "principals": {
          "everyone": false,
          "groups.read": [
            "report-users",
            "report-admins"
          ],
          "users.read": [
            "ad\beth-anglin"
          ]
        }
      }
    ]'
    {
      "result":"{\"duration_in_ms\":3822,\"feedback\":[{\"messages\":[{\"level\":\"INFO\",\"message\":\"CREATED\",\"component\":\"init\"},{\"level\":\"INFO\",\"message\":\"OK\",\"component\":\"index-886de18e750030108b23bcd69cdc2dd3-indexer.index-886de18e750030108b23bcd69cdc2dd3-content-dispatcher\"},{\"level\":\"INFO\",\"message\":\"COMPLETED\",\"component\":\"sink.sink\"}],\"document_id\":\"ADMIN-2027858531-16\"},{\"messages\":[{\"level\":\"INFO\",\"message\":\"CREATED\",\"component\":\"init\"},{\"level\":\"WARN\",\"message\":\"field \\u0027text\\u0027 tokens exceed index.maxTokens\",\"code\":\"INDEX_ENGINE-32\",\"component\":\"ingestGlideDocument.standardAnalyzer\"},{\"level\":\"INFO\",\"message\":\"OK\",\"component\":\"index-886de18e750030108b23bcd69cdc2dd3-indexer.index-886de18e750030108b23bcd69cdc2dd3-content-dispatcher\"},{\"level\":\"INFO\",\"message\":\"COMPLETED\",\"component\":\"sink.sink\"}],\"document_id\":\"ADMIN-2587918521-27\"}]}"
    }

    API d’ingestion de contenu externe : POST ais/external_content/storeContent

    Stocke le contenu binaire en tant qu’objet de contenu dans Recherche IA.

    Vous pouvez associer du contenu binaire stocké à un document externe en procédant comme suit :
    1. Stockez le contenu binaire à l’aide de ce point de terminaison. Enregistrez la valeur du paramètre Corps de la result réponse.
    2. Envoyez le document externe à Recherche IA l’aide du point de terminaison POST /ais/external_content/ingestDocument/{schema_table_name} . Définissez le paramètre du corps de la demande du document pour qu’il content_pointer corresponde à la valeur du paramètre corps de la réponse enregistrée result .
    Au cours de l’ingestion, Recherche IA analyse le contenu binaire et ajoute son contenu pouvant être recherché à l’enregistrement indexé qui représente le document externe. L’analyse supprime l’objet de contenu stocké.

    Format d'URL

    URL versionnée : /api/now/{api_version}/ais/external_content/storeContent

    Remarque :
    Les versions disponibles sont spécifiées dans l’explorateur d’API REST. Pour les API REST basées sur un script, des informations de version supplémentaires sont disponibles sur le formulaire Service REST scripté.

    Paramètres de demande pris en charge

    Tableau 19. Paramètres de chemin d'accès
    Paramètre Description
    api_version Facultatif. Version du point de terminaison auquel accéder. Par 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

    Tableau 20. Paramètres de requête
    Nom Description
    Aucun
    Tableau 21. Paramètres du corps de la demande
    Élément Description
    [données binaires] Requis. Contenu binaire à stocker en tant qu’objet de contenu dans Recherche IA.

    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.

    Tableau 22. En-têtes de demandes
    En-tête Description
    Accepter Format de données du corps de la réponse. Prend uniquement en charge application/json.
    Type de contenu

    Format de données du corps de la demande.

    Valeurs valides :
    • application/msword
    • application/octet-stream
    • application/pdf
    • application/vnd.ms-excel
    • application/vnd.ms-powerpoint
    • application/vnd.ms-powerpoint.presentation.macroenabled.12
    • application/vnd.openxmlformats-officedocument.presentationml.presentation
    • application/vnd.openxmlformats-officedocument.presentationml.template
    • application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
    • application/vnd.openxmlformats-officedocument.wordprocessingml.document
    • application/vnd.openxmlformats-officedocument.wordprocessingml.template
    • text/html
    • text/plain
    Tableau 23. En-têtes de réponses
    En-tête Description
    Aucun

    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.

    Tableau 24. Codes d'état
    Code d'état Description
    200 Réussi. La demande a été correctement traitée.
    400 Demande incorrecte. Un type de demande incorrecte ou mal formé a été détecté.
    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 du corps de la réponse (JSON ou XML)

    Élément Description
    erreur

    Objet décrivant l’erreur rencontrée lors du traitement de la demande.

    Type de données : objet

    "error": {
      "detail": "String",
      "message": "String"
    }
    erreur.détail

    Détails de l’erreur rencontrée pendant le traitement de la demande.

    Type de données : chaîne

    message.erreur

    Message pour l’erreur rencontrée pendant le traitement de la demande.

    Type de données : chaîne

    résultat

    Identificateur de l’objet de contenu binaire stocké par la demande réussie.

    Type de données : chaîne

    "result" : "91841766-2a5f-4c64-a20a-27ca485eca21"
    Remarque :
    Pour joindre le contenu stocké à un document externe ingéré, spécifiez cet identificateur comme élément de corps de demande content_pointer pour une demande au point de terminaison ingestDocument .
    état

    Statut d’une demande en échec.

    Valeurs valides :
    • failure

    Type de données : chaîne

    Demande cURL

    Stocke le contenu binaire d’un fichier PDF en tant qu’objet de contenu.

    curl 'https://instance.servicenow.com/api/now/v2/ais/external_content/storeContent' \
    --request POST \
    --user 'username':'password' \
    --header 'Content-Type: application/pdf' \
    --data-binary '@Report-2020-08-31.pdf'

    Le corps de la réponse inclut l’identificateur unique pour le nouvel objet de contenu.

    {
      "result" : "fb439a4f-62ad-4dab-9654-5088d99a6ff9"
    }