Sari la conținut

GraphQL API

Utilizați consola de platformă GraphQLAPI la /api/console/v1/graphqlpentru a interoga și muta înregistrările, cu autentificare, scopul organizației și exemplele de copiere și inserare.

View as Markdown

Clienții de platformă și de automatizare utilizează GraphQLAPI la /api/console/v1/graphqlSchema sa acoperă organizații, cadre, controale, măsuri, riscuri, audituri, confidențialitate, recenzii de acces, Portalul de conformitate, consimțământul pentru cookie-uri, dispozitive și alte resurse de produs.

Pentru aspectul punctului final, identificatorii și clasele de erori partajate între interfețe, consultați API fundamentals.

Creați un token de acces scalabil din meniul contului dvs. OAuth tokensTrimiteți-l ca credențial purtător la fiecare cerere:

POST /api/console/v1/graphql HTTP/1.1
Host: eu.probo.com
Authorization: Bearer <oauth-token>
Content-Type: application/json

Utilizați originea care corespunde implementării token-ului (https://eu.probo.com, https://us.probo.comAccesul eficient este intersecția dintre domeniile OAuth ale tokenului și permisiunile actuale ale platformei utilizatorului subiacent.

Clienții interactivi pot utiliza în schimb fluxuri de autorizare OAuth acceptate. sesiunile SSO și tokenurile SCIM nu sunt înlocuitori ai unui token de acces OAuth.

Send GraphQL documents as authenticated POST requests with a JSON body containing query În cazul în care este necesar, variablesUtilizați variabile pentru ID-uri și intrări de utilizator în loc să interpolați valorile într-un șir de interogări.Operațiile numite sunt preferate; abrevierea anonimă poate fi respinsă de unii clienți.

{
  "query": "query Viewer { viewer { id } }",
  "variables": {}
}

Schema este contractul pentru nulitate câmp, tipuri de intrare, enume și paginare. Introspectați implementarea acceptată, mai degrabă decât să copiați câmpuri dintr-o versiune care nu are legătură.

Cele mai multe înregistrări de conformitate aparțin unei organizații. Listați organizațiile la care tokenul poate accesa, apoi transmiteți un ID de organizație în câmpurile și mutațiile acoperite de organizație. Nu presupuneți că un utilizator autentificat poate accesa fiecare organizație pe implementare.

query ListOrganizations {
  organizations {
    nodes {
      id
      name
    }
  }
}
query Organization($id: ID!) {
  organization(id: $id) {
    id
    name
  }
}
{
  "query": "query Organization($id: ID!) { organization(id: $id) { id name } }",
  "variables": { "id": "org_01EXAMPLE" }
}

platforma utilizează ID-uri unice la nivel global care codifică un tip de entitate; tratați-le ca șiruri opace.

Câmpurile de listă utilizează conexiuni GraphQL. Solicitați numai câmpurile de integrare necesare, treceți un first value, and follow pageInfo.endCursor while pageInfo.hasNextPage Nu derivați cursori sau nu vă bazați pe ordonarea bazelor de date.

Confirmă numele câmpurilor de conexiune și argumentele împotriva schemei pentru implementarea ta. organization(id:) sunt organizate în scopuri; câmpuri de listă de nivel superior, cum ar fi organizations return numai înregistrările pe care tokenul le poate accesa.

Mutațiile validă autorizarea și starea înregistrării curente. Un răspuns HTTP reușit poate conține încă erori GraphQL, deci inspectați ambele data and errorsNu repetați erorile nevalide, interzise sau conflictuale fără a schimba cererea.

With curl:

curl https://eu.probo.com/api/console/v1/graphql \
  --header "Authorization: Bearer $PROBO_OAUTH_TOKEN" \
  --header "Content-Type: application/json" \
  --data '{"query":"query Viewer { viewer { id } }"}'

Cu privire la CLI:

prb api 'query { organizations { nodes { id name } } }'
prb api 'query($id: ID!) { organization(id: $id) { name } }' -f id=org_01EXAMPLE

See prb api and CLI configuration pentru utilizarea steagurilor şi stdin.

GraphQL este un endpoint de versiune, dar schema sa evoluează odată cu lansarea platformei. Generarea tipurilor de clienți din implementarea pe care o vizați și revizuirea modificărilor schemei în timpul upgrade-urilor. operațiunile MCP, CLI și n8n sunt menținute alături de GraphQL, dar capacitățile specifice transportului și timpii de lansare pot diferi.

Atunci când o interfață de nivel superior acoperă deja fluxul de lucru, preferați CLI, MCP, or n8n referințe pentru automatizarea de zi cu zi, și utilizați GraphQL atunci când aveți nevoie de un client particularizat sau formă de interogare.

Ultima actualizare: