API Content Services GraphQL

Utilisez l'API pour créer, extraire, mettre à jour ou utiliser des ressources. L'API est idéale pour le développement d'applications Web et mobiles car elle prend en charge l'extraction exacte des données dont vous avez besoin pour un appel unique. Elle est mise à disposition dans votre abonnement par défaut.

Présentation

L'API Content Services GraphQL fournit un schéma et un système de langage de requête facile à comprendre qui simplifie le développement d'applications pour votre Content Platform Engine. La définition des types et des champs du schéma de l'API correspond étroitement au modèle d'objet de l'API Java™ de Content Engine, avec les extensions nécessaires et souhaitables pour la consommation naturelle des développeurs GraphQL.

L'API comprend les opérations suivantes :
  • Reconnaissance de métadonnées
  • Opérations sur les documents et les dossiers
  • Opérations de recherche
  • Opérations de navigation
Accédez au noeud final d'API à l'aide de l'une des URL suivantes. Utilisez l' URL correspondant à votre abonnement.
  • https://hostname.automationcloud.ibm.com.com/dba/environment/content-services-graphql/graphql
  • https://fncm-environment-hostname.automationcloud.ibm.com/content-services-graphql/graphql
environnement a la valeur dev pour l'environnement de développement, test pour l'environnement de test ou run pour l'environnement de production.
L'API dispose d'un environnement de développement intégré (GraphiQL) dans le navigateur pour vous aider à explorer et à interagir avec l'API. Selon la configuration de votre abonnement, accédez à l'environnement de développement intégré à l'aide de l'une des URL suivantes :
  • https://hostname.automationcloud.ibm.com/dba/environment/content-services-graphql/
  • https://fncm-environment-hostname.automationcloud.ibm.com/content-services-graphql/
Veillez à inclure une barre oblique (/) à la fin de l'URL.
Remarque: L'environnement de développement intégré n'est pas disponible dans l'environnement de production.

Toutes les applications qui utilisent l'API GraphQL doivent transmettre un jeton ECM-CS-XSRF-Token dans l'en-tête et le cookie. Il est recommandé que le client GraphQL génère le jeton, le définisse comme un cookie sur le navigateur client et enregistre la même valeur dans la session utilisateur. Lorsqu'une demande client est fournie, le client GraphQL valide le cookie ECM-CS-XSRF-Token par rapport à la valeur enregistrée. Lorsque la demande est transmise à Content Services GraphQL, ces valeurs se trouvent dans l'en-tête ECM-CS-XSRF-Token et le cookie EM-CS-XSRF-Token.

Test de la connexion à l'API

Après avoir accédé à l'instance GraphQL de l'API, vous pouvez tester la connexion à Content Platform Engine comme illustré dans l'exemple suivant.
{
  _apiInfo(repositoryIdentifier: "OS1") {
    buildDate
    buildNumber
    implementationVersion
    implementationTitle
    productVersion
    cpeInfo {
      cpeURL
      cpeUser
      repositoryName
    }
  }
}
La valeur de repositoryIdentifier est le nom de la librairie Content Platform Engine (nom symbolique) ou l'ID (GUID).
Une connexion réussie fournit une réponse similaire à l'exemple suivant.
{
 "data": {
  "_apiInfo": {
  "buildDate": "February 28, 2020 at 09:20",
  "buildNumber": "29",
  "implementationVersion": "20200228-0920-29-pwtest330",
  "implementationTitle": "IBM FileNet Content Services GraphQL API - content-graphql-api",
  "productVersion": "5.5.4",
  "cpeInfo": {
   "cpeURL": "http://cpe_host:port/wsi/FNCEWS40MTOM/",
   "cpeUser": "uid=admin@ibm.com,cn=users,O=IBM,C=US",
   "repositoryName": "OS1"
   }
  }
 }
}

Un guide de développeur est disponible pour l'API. Pour plus d'informations, voir Content Services GraphQL API Developer Guide dans la documentation de l IBM® FileNet® P8 Platform documentation.

Utilisation de webhooks

L'API Content Services GraphQL prend en charge les webhooks. Les webhooks sont des rappels HTTP définis par l'utilisateur envoyés à l'aide de demandes HTTP POST. Ils permettent au Content Platform Engine fournir des informations en temps quasi réel à d'autres applications ou services intéressés.

Les rappels peuvent être déclenchés par des événements dans Content Platform Engine, tels que la restitution d'un document dans un référentiel ou la mise à jour d'une propriété sur un objet Content Platform Engine . Content Engine envoie ensuite une demande HTTP POST à l'URL qui est configurée pour le webhook.

Pour plus d'informations sur les webhooks d'événements, voir Content Platform Engine event webhooks et Content event webhook examples.