Integration

/v1 route reference

List loaded from the OpenAPI contract at render — a removed route disappears on its own.

OpenAPI contractIssue an API keyFree Solo account

Full document, no authentication, ready for your client generator.

Endpoints

Read from the contract at render time: it cannot describe an endpoint that no longer exists.

Summaries, descriptions and limits come from the OpenAPI contract, served in this page's language. Paths, types and scopes are identical across languages.

30 / 30

scenarios

  • GET/v1/scenariosList scenariosscenarios:read

    A browser scenario's journey is not returned — it carries login credentials. `scenarioFingerprint` changes as soon as it is modified, which is enough to detect drift.

    Parameters

    NameInTypeLimitsDefaultDescription
    limitqueryinteger1–500100Page size, 100 by default.
    cursorquerystring——The `nextCursor` value from the previous response. Absent on the last page.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/scenarios?limit=100" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • POST/v1/scenariosCreate a scenarioscenarios:writereplayable

    `type: http` requires `url` or `httpChain`. `type: browser` requires `scenario`. `enabled: false` prepares a scenario without raising any alert. Replayable with `Idempotency-Key`.

    Parameters

    NameInTypeLimitsDefaultDescription
    Idempotency-Keyheaderstring8–128 car., /^[A-Za-z0-9._:-]+$/—Replays the same response for 24 hours instead of creating a duplicate. Essential in a pipeline that may retry.

    Request body

    NameTypeLimitsDefaultDescription
    name*string≤ 120 car.—
    type"http" | "browser"—"http"
    urlstring <uri>——Required for an HTTP check.
    intervalSec*integer0–2592000—0 = no scheduling.
    method"GET" | "HEAD"—"GET"
    expectedStatusinteger100–599—
    maxLatencyMsinteger100–600000—
    expectTextstring≤ 500 car.—
    regionsarray<string>≤ 8 élém.—
    scenarioobject——Journey tree: a list of steps (`goto`, `click`, `fill`, `assert_text`…) and, for an HTTP chain, `httpChain`. See the scenario documentation.
    tagsarray<string>≤ 10 élém.—
    folderstring≤ 60 car.—
    severity"critical" | "major" | "minor"——
    runbookstring≤ 2000 car.—
    cronstring≤ 120 car.—5 fields, e.g. `0 9 * * 1-5`.
    enabledboolean——
    httpChainarray<object>——

    Responses

    CodeDescription
    201Success.
    400Invalid body or parameter.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    409`Idempotency-Key` already used with a different body.
    429Too many calls for this key.

    Example call

    curl -X POST "https://api.pathlyhq.com/v1/scenarios" \
      -H "Authorization: Bearer $PATHLY_TOKEN" \
      -H "Idempotency-Key: deploy-2026-09-23-01" \
      -H "Content-Type: application/json" \
      -d '{"type":"http","name":"Page d'\''accueil","url":"https://www.example.com","intervalSec":300,"expectedStatus":200,"maxLatencyMs":2000,"severity":"major","tags":["prod"]}'
  • GET/v1/scenarios/{id}Read a scenarioscenarios:read

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/scenarios/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • PATCH/v1/scenarios/{id}Update a scenarioscenarios:write

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Request body

    Optional body: only the fields you send are changed.

    NameTypeLimitsDefaultDescription
    namestring≤ 120 car.—
    urlstring <uri>——HTTP check only.
    intervalSecinteger0–2592000—
    method"GET" | "HEAD"——
    expectedStatusinteger100–599—
    maxLatencyMsinteger100–600000—
    enabledboolean——
    expectTextstring≤ 500 car.—
    regionsarray<string>≤ 8 élém.—
    scenarioobject——Journey tree: a list of steps (`goto`, `click`, `fill`, `assert_text`…) and, for an HTTP chain, `httpChain`. See the scenario documentation.
    tagsarray<string>≤ 10 élém.—
    folderstring≤ 60 car.—
    severity"critical" | "major" | "minor"——
    runbookstring≤ 2000 car.—
    cronstring≤ 120 car.—
    httpChainarray<object>——

    Responses

    CodeDescription
    200Success.
    400Invalid body or parameter.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X PATCH "https://api.pathlyhq.com/v1/scenarios/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"intervalSec":600,"maxLatencyMs":3000,"severity":"critical"}'
  • DELETE/v1/scenarios/{id}Delete a scenarioscenarios:write

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X DELETE "https://api.pathlyhq.com/v1/scenarios/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • POST/v1/scenarios/{id}/muteMute a scenarioscenarios:write

    `mutedUntil: null` wakes the scenario up. The deadline is capped at 30 days.

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Request body

    NameTypeLimitsDefaultDescription
    mutedUntil*string <date-time>——

    Responses

    CodeDescription
    200Success.
    400Invalid body or parameter.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X POST "https://api.pathlyhq.com/v1/scenarios/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90/mute" \
      -H "Authorization: Bearer $PATHLY_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"mutedUntil":"2026-10-01T06:00:00.000Z"}'
  • POST/v1/scenarios/{id}/baselineSet the comparison baseline to the last successful runscenarios:write

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X POST "https://api.pathlyhq.com/v1/scenarios/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90/baseline" \
      -H "Authorization: Bearer $PATHLY_TOKEN"

runs

  • POST/v1/scenarios/{id}/runTrigger a runruns:trigger

    Queues a run and returns its `jobId`. Consumes quota: scope `runs:trigger`.

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X POST "https://api.pathlyhq.com/v1/scenarios/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90/run" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • GET/v1/runsList runsruns:read

    Parameters

    NameInTypeLimitsDefaultDescription
    scenarioIdquerystring <uuid>——Filters on one scenario.
    limitqueryinteger1–500100Page size, 100 by default.
    cursorquerystring——The `nextCursor` value from the previous response. Absent on the last page.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/runs?limit=100" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • GET/v1/runs/{id}Read a run and its verdictruns:read

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/runs/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"

incidents

  • GET/v1/incidentsList incidentsincidents:read

    Parameters

    NameInTypeLimitsDefaultDescription
    limitqueryinteger1–500100Page size, 100 by default.
    cursorquerystring——The `nextCursor` value from the previous response. Absent on the last page.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/incidents?limit=100" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • PATCH/v1/incidents/{id}Close an incident or publish its postmortemincidents:write

    Reopening an incident clears its resolution date. `publicPostmortem` publishes the postmortem on the status page: keep it for proofread text.

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Request body

    Optional body: only the fields you send are changed.

    NameTypeLimitsDefaultDescription
    status"open" | "resolved"——
    postmortemstring≤ 20000 car.—
    publicPostmortemboolean——

    Responses

    CodeDescription
    200Success.
    400Invalid body or parameter.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X PATCH "https://api.pathlyhq.com/v1/incidents/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"status":"resolved","postmortem":"Certificat renouvelé, le contrôle repasse au vert.","publicPostmortem":false}'

alerting

  • GET/v1/webhooksList outgoing webhooksalerting:read

    The stored URL is never returned: it is encrypted at rest. `urlFingerprint` changes if the destination changes, which is enough to detect drift.

    Parameters

    No parameters.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/webhooks" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • POST/v1/webhooksCreate an outgoing webhookalerting:writereplayable

    Returns the signing secret once only, at creation. Only public https URLs are accepted.

    Parameters

    NameInTypeLimitsDefaultDescription
    Idempotency-Keyheaderstring8–128 car., /^[A-Za-z0-9._:-]+$/—Replays the same response for 24 hours instead of creating a duplicate. Essential in a pipeline that may retry.

    Request body

    NameTypeLimitsDefaultDescription
    url*string <uri>≤ 500 car.—
    eventsarray<"run.failed" | "run.recovered">≥ 1 élém.—

    Responses

    CodeDescription
    201Success.
    400Invalid body or parameter.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    409`Idempotency-Key` already used with a different body.
    429Too many calls for this key.

    Example call

    curl -X POST "https://api.pathlyhq.com/v1/webhooks" \
      -H "Authorization: Bearer $PATHLY_TOKEN" \
      -H "Idempotency-Key: deploy-2026-09-23-01" \
      -H "Content-Type: application/json" \
      -d '{"url":"https://www.example.com/hooks/pathly","events":["run.failed","run.recovered"]}'
  • GET/v1/webhooks/{id}Read an outgoing webhookalerting:read

    Subscribed events, state, and fingerprint of the destination. The URL stays encrypted.

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/webhooks/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • DELETE/v1/webhooks/{id}Delete an outgoing webhookalerting:write

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X DELETE "https://api.pathlyhq.com/v1/webhooks/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"

maintenance

  • GET/v1/maintenance-windowsList maintenance windowsmaintenance:read

    Parameters

    No parameters.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/maintenance-windows" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • POST/v1/maintenance-windowsCreate a maintenance windowmaintenance:writereplayable

    Two forms: one-off (`startsAt` and `endsAt`) or weekly (`weekday`, `startMinute`, `durationMin`).

    Parameters

    NameInTypeLimitsDefaultDescription
    Idempotency-Keyheaderstring8–128 car., /^[A-Za-z0-9._:-]+$/—Replays the same response for 24 hours instead of creating a duplicate. Essential in a pipeline that may retry.

    Request body

    NameTypeLimitsDefaultDescription
    monitorIdstring <uuid>——Absent = the whole organisation.
    startsAtstring <date-time>——One-off window.
    endsAtstring <date-time>——One-off window, 90 days at most.
    reasonstring≤ 500 car.—
    weekdayinteger1–7—Weekly window, 1 = Monday.
    startMinuteinteger0–1439—
    durationMininteger15–1440—

    Responses

    CodeDescription
    201Success.
    400Invalid body or parameter.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    409`Idempotency-Key` already used with a different body.
    429Too many calls for this key.

    Example call

    curl -X POST "https://api.pathlyhq.com/v1/maintenance-windows" \
      -H "Authorization: Bearer $PATHLY_TOKEN" \
      -H "Idempotency-Key: deploy-2026-09-23-01" \
      -H "Content-Type: application/json" \
      -d '{"startsAt":"2026-10-04T01:00:00.000Z","endsAt":"2026-10-04T03:00:00.000Z","reason":"Migration de base"}'
  • GET/v1/maintenance-windows/{id}Read a maintenance windowmaintenance:read

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/maintenance-windows/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • DELETE/v1/maintenance-windows/{id}Delete a maintenance windowmaintenance:write

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X DELETE "https://api.pathlyhq.com/v1/maintenance-windows/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"

sla

  • GET/v1/slaAvailability objective measurementssla:read

    Measured rate and remaining error budget, per objective.

    Parameters

    No parameters.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/sla" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • GET/v1/sla-targetsList the objectives' configurationsla:read

    Parameters

    No parameters.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/sla-targets" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • PUT/v1/sla-targetsCreate or replace an objectivesla:writereplayable

    One objective per scenario, plus a global objective without `monitorId`. Calling again on the same target replaces the existing objective.

    Parameters

    NameInTypeLimitsDefaultDescription
    Idempotency-Keyheaderstring8–128 car., /^[A-Za-z0-9._:-]+$/—Replays the same response for 24 hours instead of creating a duplicate. Essential in a pipeline that may retry.

    Request body

    NameTypeLimitsDefaultDescription
    monitorIdstring <uuid>——
    namestring≤ 120 car.—
    objectivePct*number50–100—
    windowDays*integer1–365—
    excludeMaintenanceboolean——
    warnAtBudgetRationumber0.1–1—
    enabledboolean——

    Responses

    CodeDescription
    200Success.
    400Invalid body or parameter.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    409`Idempotency-Key` already used with a different body.
    429Too many calls for this key.

    Example call

    curl -X PUT "https://api.pathlyhq.com/v1/sla-targets" \
      -H "Authorization: Bearer $PATHLY_TOKEN" \
      -H "Idempotency-Key: deploy-2026-09-23-01" \
      -H "Content-Type: application/json" \
      -d '{"name":"Disponibilité globale","objectivePct":99.9,"windowDays":30,"excludeMaintenance":true}'
  • GET/v1/sla-targets/{id}Read an objectivesla:read

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/sla-targets/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • DELETE/v1/sla-targets/{id}Delete an objectivesla:write

    Parameters

    NameInTypeLimitsDefaultDescription
    id*pathstring <uuid>——Identifier.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    404Resource not found in this organisation.
    429Too many calls for this key.

    Example call

    curl -X DELETE "https://api.pathlyhq.com/v1/sla-targets/8f14e45f-ea8d-4b4c-9c0a-3b2d1e6f7a90" \
      -H "Authorization: Bearer $PATHLY_TOKEN"

org

  • GET/v1/settingsRead the organisation's settingsorg:read

    Integration secrets never leave: they appear as `has*` booleans.

    Parameters

    No parameters.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/settings" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • PATCH/v1/settingsUpdate the organisation's settingsorg:write

    A secret-free subset. Slack, Teams, Discord, PagerDuty, Opsgenie, Datadog and Sentry stay reserved for the back-office, so that no secret is ever written into an infrastructure file.

    Parameters

    No parameters.

    Request body

    Optional body: only the fields you send are changed.

    NameTypeLimitsDefaultDescription
    alertEmailstring <email>——
    alertOnRecoveryboolean——
    escalationAfterFailsinteger2–20—
    escalationEmailstring <email>——
    weeklyDigestEmailstring <email>——
    weeklyDigestEnabledboolean——
    statusSlugstring≤ 64 car.—
    statusPublicboolean——
    timezonestring≤ 64 car.—
    sslWarnDaysarray<integer>≤ 6 élém.—
    domainWarnDaysarray<integer>≤ 6 élém.—
    triageEnabledboolean——
    triageConfirmEnabledboolean——
    triageLatencyFactornumber1.5–10—

    Responses

    CodeDescription
    200Success.
    400Invalid body or parameter.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl -X PATCH "https://api.pathlyhq.com/v1/settings" \
      -H "Authorization: Bearer $PATHLY_TOKEN" \
      -H "Content-Type: application/json" \
      -d '{"alertEmail":"supervision@example.com","alertOnRecovery":true,"escalationAfterFails":3,"timezone":"Europe/Paris"}'
  • GET/v1/usageConsumption for the periodorg:read

    Enough to stop a pipeline before the quota runs out.

    Parameters

    No parameters.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/usage" \
      -H "Authorization: Bearer $PATHLY_TOKEN"
  • GET/v1/status/componentsPublic status page componentsorg:read

    Parameters

    No parameters.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/status/components" \
      -H "Authorization: Bearer $PATHLY_TOKEN"

members

  • GET/v1/membersList the organisation's membersmembers:read

    Name, address and role of the attached accounts, to match an incident with the person in charge. No invitation or change through an API key.

    Parameters

    No parameters.

    Responses

    CodeDescription
    200Success.
    401API key missing, unknown, revoked or expired.
    403The key does not carry the required scope.
    429Too many calls for this key.

    Example call

    curl "https://api.pathlyhq.com/v1/members" \
      -H "Authorization: Bearer $PATHLY_TOKEN"