Aller au contenu
PentAGI
API

Aperçu de l'API

Automatisez PentAGI via REST et GraphQL — créez un jeton Bearer, lancez des flows depuis votre CI/CD, récupérez les résultats dans vos propres outils et générez un client.

La plupart des actions que vous pouvez effectuer dans l'interface web sont disponibles via l'API — lancez des flows depuis votre CI/CD, récupérez les résultats dans vos propres outils ou créez des intégrations.

APIPoint de terminaisonDocumentation interactive
GraphQL/api/v1/graphql/api/v1/graphql/playground
REST/api/v1/.../api/v1/swagger/index.html

Créer un jeton

  1. Ouvrez Settings → API Tokens dans l'interface web.
  2. Cliquez sur Create Token, nommez-le éventuellement et définissez une expiration comprise entre 1 minute et 3 ans.
  3. Copiez le jeton immédiatement — il n'est affiché qu'une seule fois.

Un jeton est associé à votre compte et hérite des permissions de votre rôle. Les utilisateurs, les rôles et les jetons API, les modèles de flow, les favoris et vos paramètres sont gérés uniquement depuis une session de navigateur connectée : un jeton reçoit une erreur 403 sur les routes REST /users, /roles et /tokens ainsi qu’une erreur pour ces opérations GraphQL.

Appeler l'API

curl -X POST https://your-pentagi-host:8443/api/v1/graphql \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"query": "{ flows { id title status } }"}'

curl https://your-pentagi-host:8443/api/v1/flows/ \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Lancez un flow avec une mutation GraphQL :

mutation CreateFlow {
  createFlow(modelProvider: "openai", input: "Test the security of https://example.com") {
    id
    title
    status
    createdAt
  }
}

Générer un client

  • GraphQL — le schéma est disponible à l'adresse backend/pkg/graph/schema.graphqls dans le dépôt ; utilisez GraphQL Code Generator, genqlient ou Apollo.
  • REST — la spécification OpenAPI est servie à l'adresse /api/v1/swagger/doc.json :
openapi-generator-cli generate \
  -i https://your-pentagi-host:8443/api/v1/swagger/doc.json \
  -g python \
  -o ./pentagi-client

Dernière mise à jour le