Black Friday tra 20 giorni: i Suoi clienti potranno pagare? -25 % il 1° anno e configurazione offerta, fino al 30 novembreVedi l’offerta →

Integrazione

Documentazione per sviluppatori

API /v1, Terraform, webhook HMAC e SDK. Scelga una pagina a sinistra, o segua il quickstart.

Ottenere la mia chiave APIContratto OpenAPI

Documento completo, senza autenticazione, da passare al Suo generatore di client.

# PATHLY_API_TOKEN viene dai secret della CI, mai dal codice
curl -sS -X POST https://api.pathlyhq.com/v1/scenarios \
  -H "Authorization: Bearer $PATHLY_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"type": "http", "name": "Home", "url": "https://www.example.com/", "intervalSec": 300}'

Conservi PATHLY_API_TOKEN nei secret della Sua CI, mai nel repository.

Per iniziare

Modello mentale

  1. ScenarioUn Ping, un Flow o una Chain, creato nella console, tramite l’API o Terraform.
  2. EsecuzionePathly lo riproduce dall’Europa, a intervalli o su richiesta dalla CI.
  3. IncidenteUn errore confermato apre un incidente, con lo screenshot del passaggio.
  4. WebhookIl Suo sistema riceve l’evento firmato con HMAC.
In dettaglio

Pathly espone un’API pubblica versionata sotto https://api.pathlyhq.com/v1. Un’organizzazione possiede scenari, run, incidenti, webhook, finestre di manutenzione e obiettivi di disponibilità. Console e API condividono la stessa verità di configurazione: ciò che crea qui compare là, e viceversa.

Due porte, uno stack: il business registra un Flow nella console; il team tecnico versiona Ping, Chain, webhook e SLA tramite IaC o SDK. Una Chain si crea con `httpChain` su POST /v1/scenarios (hop login → API). I segreti di un Flow non devono mai finire in uno stato Terraform né in un repository Git.

Il contratto OpenAPI servito dalla piattaforma è la fonte di verità degli endpoint. Questa pagina lo legge al rendering: un endpoint rimosso scompare da solo dal riferimento qui sotto.

Quickstart in 5 minuti

Obiettivo: una chiave, un Ping, un webhook di test, un riferimento Terraform. Conti cinque minuti se l’account Solo esiste già. Una Chain si crea poi con httpChain (API) o http_chain (provider).

1) Apra la Console Pathly (crei un account gratuito dal link qui sotto) → Impostazioni → Chiavi API → emetta una chiave con scenarios:write e alerting:write. Copi il segreto una sola volta (prefisso sp_). 2) Esporti PATHLY_API_TOKEN. 3) Crei lo scenario (esempio qui sotto). 4) Crei un webhook verso un ricevitore di test (webhook.site o il Suo /hooks). 5) Provider Terraform pathlyhq/pathly per versionare il resto.

1 — Auth + elenco

export PATHLY_API_TOKEN=sp_…

curl -sS https://api.pathlyhq.com/v1/scenarios \
  -H "Authorization: Bearer $PATHLY_API_TOKEN" | jq .

2 — Creare un Ping (idempotente)

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 in uscita firmato

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 in the CI / shell environment, never in .tf files

Pagine della documentazione

Autenticazione e chiavi API

Bearer, TTL, conservazione del segreto PATHLY_API_TOKEN, senza mai esporre la chiave in Git.

Apri →

Ambiti (scope) e privilegio minimo

Matrice risorsa:azione, implicazione write→read e chiavi separate per ogni uso in CI.

Apri →

Contratto HTTP: limiti di frequenza, idempotenza, errori

Retry-After, Idempotency-Key, cursori e codici 4xx: il comportamento stabile da implementare una volta sola.

Apri →

Ping, Flow, Chain — run, incidenti e SLA

Ping, Flow o Chain, avvio dei run, manutenzione e obiettivi di disponibilità.

Apri →

Webhook in uscita firmati HMAC

Eventi run.failed / run.recovered, intestazioni X-Pathly-* e verifica della firma.

Apri →

Terraform e OpenTofu per Pathly

Provider pathlyhq/pathly: scenari, webhook, manutenzione e SLA come codice.

Apri →

Catalogo delle integrazioni Pathly

Un’API /v1, una variabile PATHLY_API_TOKEN: ogni strumento ha la sua pagina di esempi.

Apri →

SDK TypeScript / JavaScript @pathly/sdk

Client npm ufficiale: creare scenari, paginare, Idempotency-Key e Retry-After.

Apri →

SDK Python di Pathly (PyPI)

pip install pathly: client stdlib tipizzato per Lambda, Cloud Run e cron.

Apri →

SDK Go di Pathly

Modulo github.com/pathlyhq/pathly-sdk-go: idempotenza e Retry-After come il provider Terraform.

Apri →

SDK PHP di Pathly (Composer)

composer require pathlyhq/sdk: PHP 8.1+, PSR-4, per Symfony, Laravel e script degli hosting provider.

Apri →

SDK Ruby di Pathly

Gem pathly da GitHub: la stessa API /v1 degli altri client ufficiali.

Apri →

Pulumi per Pathly (@pathly/pulumi)

Monitoring as code in TypeScript con Pulumi, collegato alla stessa API di Terraform.

Apri →

CDK for Terraform per Pathly

npm @pathly/cdktf: Terraform tipizzato sopra il provider pathlyhq/pathly.

Apri →

Collection Ansible di Pathly

Moduli pathly_scenario, webhook, manutenzione e SLA: idempotenti, token fuori dal playbook.

Apri →

GitHub Action di Pathly (pathly-action)

Smoke post-deploy: run-scenario fa fallire il job se il run non è ok. Alias run-and-wait.

Apri →

Componenti GitLab CI di Pathly

pathly-ping e pathly-scenario nel catalogo GitLab: pipeline rossa se lo smoke fallisce.

Apri →

Operatore Kubernetes e Crossplane per Pathly

CRD PathlyScenario, immagini GHCR, token in un Secret del cluster.

Apri →

Collection Postman di Pathly

Esplorare /v1 senza codice: import da GitHub, ambiente baseUrl + apiToken.

Apri →

Cookbook, sicurezza UE e drift

Ricette for_each, smoke CI, verifica dei webhook, GDPR e regola UI o Terraform.

Apri →

Riferimento degli endpoint /v1

Elenco letto dal contratto OpenAPI al rendering: un endpoint rimosso scompare da solo.

Apri →