Skip to content
Produit

Automatisez vos automatisations : SDK JieGou pour CI/CD et bots Slack

Exécutez les recettes, workflows et agents de code JieGou de manière programmatique avec la nouvelle API SDK. Authentification par clé API, exécution sync et async, streaming SSE — conçu pour les développeurs.

JT
JieGou Team
· · 4 min de lecture

JieGou a toujours été une plateforme visuelle — vous construisez des recettes et des workflows dans le navigateur, les exécutez d’un clic et voyez les résultats en temps réel. Mais que faire si vous voulez déclencher un workflow depuis une GitHub Action ? Ou exécuter une recette depuis un bot Slack ? Ou intégrer l’exécution JieGou dans votre pipeline CI/CD existant ?

Aujourd’hui nous lançons l’API SDK — une couche d’exécution headless qui vous permet d’exécuter n’importe quoi dans JieGou de manière programmatique.

Un endpoint, quatre actions

L’API SDK est un endpoint unifié unique à POST /api/sdk. Authentifiez-vous avec un token bearer, spécifiez une action et obtenez des résultats :

# Exécuter une recette de manière synchrone
curl -X POST https://console.jiegou.ai/api/sdk \
  -H "Authorization: Bearer jg_a7f2b1c3e9d4..." \
  -H "Content-Type: application/json" \
  -d '{
    "action": "run_recipe",
    "recipeId": "abc123",
    "input": { "topic": "AI trends in 2026" }
  }'

Quatre actions sont disponibles :

ActionCe qu’elle faitRéponse
run_recipeExécuter une seule recetteSynchrone — renvoie le résultat immédiatement
run_workflowExécuter un workflow multi-étapesAsync — renvoie runId pour polling
run_coding_agentExécuter une tâche d’agent de codeAsync — renvoie runId avec streaming
send_messageEnvoyer un message à une conversationSynchrone — renvoie la réponse de l’assistant

Clés API avec permissions granulaires

Les clés API SDK sont séparées de vos clés de fournisseur LLM (BYOK). Créez-les depuis la page de paramètres du compte avec des permissions ciblées :

  • recipes:read / recipes:execute
  • workflows:read / workflows:execute
  • runs:read
  • conversations:read / conversations:write
  • coding-agent:execute
  • skills:read

Les clés utilisent le préfixe jg_ pour une identification facile dans les logs et les scanners de secrets. Le token en clair n’est montré qu’une fois à la création — après cela, seuls les 8 premiers caractères sont visibles. Les clés sont stockées comme hashes SHA-256, jamais en clair.

Chaque clé peut avoir une date d’expiration optionnelle. Faites la rotation des clés instantanément — l’ancien token est révoqué et un nouveau est généré avec la même configuration.

Exécution asynchrone avec polling et streaming

Les workflows et les tâches d’agent de code s’exécutent de manière asynchrone. La réponse initiale vous donne un runId et un pollUrl :

{
  "status": "queued",
  "runId": "run_xyz789",
  "pollUrl": "/api/sdk/runs/run_xyz789"
}

Interrogez le statut :

curl https://console.jiegou.ai/api/sdk/runs/run_xyz789 \
  -H "Authorization: Bearer jg_a7f2b1c3..."

Ou streamez les événements en temps réel via SSE :

curl -N https://console.jiegou.ai/api/sdk/runs/run_xyz789/stream \
  -H "Authorization: Bearer jg_a7f2b1c3..." \
  -H "Accept: text/event-stream"

Les événements incluent les démarrages d’étapes, les complétions d’étapes, les appels d’outils de l’agent de code et le résultat final.

Limitation de débit et suivi d’utilisation

Chaque clé API a ses propres limites de débit :

  • 60 requêtes par minute par clé
  • 1 000 requêtes par heure par clé
  • 10 requêtes concurrentes par clé

L’utilisation SDK est suivie séparément de l’utilisation web dans le tableau de bord de facturation, ventilée par clé API et type d’action. La consommation de tokens alimente la même facturation BYOK que l’utilisation web.

Exemples d’intégration

GitHub Actions

- name: Generate changelog
  run: |
    curl -X POST $JIEGOU_URL/api/sdk \
      -H "Authorization: Bearer ${{ secrets.JIEGOU_SDK_KEY }}" \
      -d '{"action": "run_recipe", "recipeId": "changelog-gen", "input": {"diff": "${{ steps.diff.outputs.content }}"}}'

Bot Slack

app.message('summarize', async ({ message, say }) => {
  const result = await fetch(`${JIEGOU_URL}/api/sdk`, {
    method: 'POST',
    headers: { 'Authorization': `Bearer ${JIEGOU_KEY}` },
    body: JSON.stringify({
      action: 'run_recipe',
      recipeId: 'thread-summarizer',
      input: { thread: message.text },
    }),
  });
  const data = await result.json();
  await say(data.result.output);
});

Traitement par lots planifié

#!/bin/bash
# Exécuter le workflow de traitement de données nocturne
RESPONSE=$(curl -s -X POST "$JIEGOU_URL/api/sdk" \
  -H "Authorization: Bearer $JIEGOU_KEY" \
  -d '{"action": "run_workflow", "workflowId": "nightly-etl", "input": {"date": "'$(date -I)'"}}')

RUN_ID=$(echo $RESPONSE | jq -r '.runId')

# Interroger jusqu'à complétion
while true; do
  STATUS=$(curl -s "$JIEGOU_URL/api/sdk/runs/$RUN_ID" \
    -H "Authorization: Bearer $JIEGOU_KEY" | jq -r '.status')
  [ "$STATUS" = "completed" ] && break
  [ "$STATUS" = "failed" ] && exit 1
  sleep 10
done

Disponible maintenant

L’API SDK est disponible sur les plans Pro et supérieurs. Créez votre première clé API dans Paramètres du compte > Clés API SDK.

Nous travaillons aussi sur un package npm (@jiegou/sdk) qui encapsule l’API REST avec des types TypeScript, des helpers de streaming et une logique de réessai automatique. Restez à l’écoute.

Créez une clé API et commencez à automatiser vos automatisations.

sdk api ci-cd headless developer integration automation
Partager cet article

Vous avez aime cet article ?

Recevez des astuces workflows, des mises a jour produit et des guides d'automatisation dans votre boite de reception.

No spam. Unsubscribe anytime.