Intégration
API /v1, Terraform, webhooks HMAC et SDK. Choisissez une page à gauche, ou suivez le quickstart.
Contrat OpenAPIÉmettre une clé d’APICompte Solo gratuit
Obtenir ma clé API (inscription gratuite)
Document complet, sans authentification, à donner à votre générateur de client.
Pathly expose une API publique versionnée sous https://api.pathlyhq.com/v1. Une organisation possède des scénarios, des runs, des incidents, des webhooks, des fenêtres de maintenance et des objectifs de disponibilité. La console et l’API partagent la même vérité de configuration : ce que vous créez ici apparaît là, et inversement.
Deux portes, une stack : le métier enregistre un Flow dans la console ; le tech versionne Ping, Chain, webhooks et SLA via IaC ou SDK. Une Chain se crée avec `httpChain` sur POST /v1/scenarios (hops login → API). Les secrets d’un Flow ne doivent jamais entrer dans un état Terraform ni un dépôt Git.
Le contrat OpenAPI servi par la plateforme est la source de vérité des routes. Cette page le lit au rendu : une route retirée disparaît d’elle-même de la référence ci-dessous.
Objectif : une clé, un Ping, un webhook de test, un lien Terraform. Comptez cinq minutes si le compte Solo existe déjà. Une Chain se pose ensuite avec httpChain (API) ou http_chain (provider).
1) Allez sur la Console Pathly (créez un compte gratuit via le lien ci-dessous) → Réglages → Clés d’API → émettre une clé avec scenarios:write et alerting:write. Copier le secret une seule fois (préfixe sp_). 2) Exporter PATHLY_API_TOKEN. 3) Créer le scénario (exemple ci-dessous). 4) Créer un webhook vers un récepteur de test (webhook.site ou votre /hooks). 5) Provider Terraform pathlyhq/pathly pour versionner la suite.
1 — Auth + liste
export PATHLY_API_TOKEN=sp_…
curl -sS https://api.pathlyhq.com/v1/scenarios \
-H "Authorization: Bearer $PATHLY_API_TOKEN" | jq .2 — Créer un Ping (idempotent)
curl -sS -X POST https://api.pathlyhq.com/v1/scenarios \
-H "Authorization: Bearer $PATHLY_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: qs-$(date +%Y%m%d)-home" \
-d '{
"type": "http",
"name": "Home",
"url": "https://www.example.com/",
"intervalSec": 300,
"expectedStatus": 200
}'3 — Webhook sortant signé
curl -sS -X POST https://api.pathlyhq.com/v1/webhooks \
-H "Authorization: Bearer $PATHLY_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: qs-hook-1" \
-d '{
"url": "https://www.example.com/hooks/pathly",
"events": ["run.failed", "run.recovered"]
}'4 — Terraform
terraform {
required_providers {
pathly = { source = "pathlyhq/pathly", version = "~> 0.1" }
}
}
provider "pathly" {}
# PATHLY_API_TOKEN dans l'environnement CI / shell — jamais dans .tfBearer, TTL, stockage du secret PATHLY_API_TOKEN — sans jamais exposer la clé dans Git.
Ouvrir →Matrice ressource:action, implication write→read, et clés séparées par usage CI.
Ouvrir →Retry-After, Idempotency-Key, curseurs et codes 4xx — le comportement stable à coder une fois.
Ouvrir →Ping vs Flow vs Chain, déclenchement de runs, maintenance et objectifs de disponibilité.
Ouvrir →Événements run.failed / run.recovered, en-têtes X-Pathly-* et vérification de signature.
Ouvrir →Provider pathlyhq/pathly : scénarios, webhooks, maintenance et SLA en code.
Ouvrir →Une API /v1, une variable PATHLY_API_TOKEN — chaque outil a sa page d’exemples.
Ouvrir →Client npm officiel : créer des scénarios, paginer, Idempotency-Key et Retry-After.
Ouvrir →pip install pathly — client stdlib typé pour Lambda, Cloud Run et cron.
Ouvrir →Module github.com/pathlyhq/pathly-sdk-go — idempotence et Retry-After comme le provider Terraform.
Ouvrir →composer require pathlyhq/sdk — PHP 8.1+, PSR-4, pour Symfony, Laravel et scripts hébergeur.
Ouvrir →Gem pathly depuis GitHub — même API /v1 que les autres clients officiels.
Ouvrir →Monitoring as code en TypeScript via Pulumi, branché sur la même API que Terraform.
Ouvrir →npm @pathly/cdktf — Terraform typé au-dessus du provider pathlyhq/pathly.
Ouvrir →Modules pathly_scenario, webhook, maintenance et SLA — idempotents, jeton hors playbook.
Ouvrir →Smoke post-deploy : run-scenario échoue le job si le run n’est pas ok. Alias run-and-wait.
Ouvrir →pathly-ping et pathly-scenario dans le catalogue GitLab — pipeline rouge si le smoke échoue.
Ouvrir →CRDs PathlyScenario, images GHCR, jeton dans un Secret cluster.
Ouvrir →Explorer /v1 sans code : import GitHub, environnement baseUrl + apiToken.
Ouvrir →Recettes for_each, smoke CI, vérif webhook, RGPD et règle UI ou Terraform.
Ouvrir →Liste lue dans le contrat OpenAPI au rendu — une route retirée disparaît d’elle-même.
Ouvrir →Intentions de pages pas encore créées. Passer une entrée en status live + sectionIds suffit pour l’ouvrir.
Landing SEO « monitoring as code » / alternative Checkly — prévu aussi en /cas-usage/.