Overview#
Pluggy's status page at connector-status.pluggy.ai shows the live health of every connector, payment product and infrastructure component, plus incident history. Everything the page renders comes from a single public JSON snapshot you can consume directly — no authentication required.
If you just want notifications, you don't need this API: subscribe by email on the status page, add the Pluggy Status Slack app to a channel, or use the RSS feed.
The snapshot endpoint#
GET https://docs.pluggy.dev/api/status
- No authentication. CORS is open, so you can call it from a browser app.
- Cached for ~30 seconds. Poll at 60 seconds or slower — faster polling only re-reads the cache.
The response contains four collections:
| Field | What it holds |
|---|---|
institutions | Every connector with its current status, 90-day history and product support flags |
incidents | Open incidents and everything resolved in the last 90 days, with their update timelines |
components | Infrastructure components (API, Webhooks, Connect Widget, …) and their current status |
productStatus | Manual per-institution status overrides for payment products |
Institutions#
{
"pluggy_id": "601",
"name": "Itaú",
"type": "PERSONAL_BANK",
"logo_url": "https://cdn.pluggy.ai/assets/connector-icons/201.svg",
"status": "online",
"bars": "ooooooo…dxo",
"uptime": 99.51,
"supports_data": true,
"supports_pis": true,
"supports_pis_scheduled": true,
"supports_pix_auto": true,
"supports_smart_transfer": true
}pluggy_idis the same connectoridyou use everywhere else in the Pluggy API — match on it directly.statusis one ofonline,degraded,offline,maintenance.barsencodes the last 90 days as one character per day, oldest first:oonline,ddegraded,ppartial outage,xoffline,mmaintenance.uptimeis a weighted 90-day percentage (degraded days count 25% downtime, partial 50%, offline 100%).- The
supports_*flags tell you which products the institution offers (data, payment initiation, scheduled payments, automatic PIX, smart transfers).
Example — check one connector's health:
curl -s https://docs.pluggy.dev/api/status \
| jq '.institutions[] | select(.pluggy_id == "601") | {name, status, uptime}'Incidents#
{
"id": "4a8f1e80-…",
"kind": "incident",
"product": "pis",
"pluggy_id": "612",
"institution_name": "PagBank",
"severity": "degraded",
"state": "identified",
"apis": ["Criação de pagamento"],
"started_at": "2026-07-07T14:28:21Z",
"resolved_at": null,
"postmortem": null,
"updates": [{ "state": "identified", "body": "…", "created_at": "…" }]
}- An incident is open while
state != "resolved". productis one ofdados,pis,pis-agendado,pixauto,smart,infra(legacy incidents may carrypagamentos, which maps topis).kindisincidentormaintenance; maintenances carrywindow_starts_at/window_ends_at.- Connector-scoped incidents include
pluggy_id, so you can join them against your own connector list. - Every incident has a shareable page at
https://connector-status.pluggy.ai/incident/<id>.
Example — open incidents affecting a connector you use:
curl -s https://docs.pluggy.dev/api/status \
| jq '.incidents[] | select(.state != "resolved" and .pluggy_id == "612") | {title, state, severity}'Embeddable widget#
Show Pluggy's live status inside your own app or internal dashboard.
Floating badge — one script tag, renders a small pill (status dot + label) in the corner of the page, linking to the status page. Refreshes every 60 seconds.
<script
src="https://connector-status.pluggy.ai/widget.js"
defer
data-lang="en"
data-position="bottom-right"
></script>data-lang:pt(default),esoren.data-position:bottom-right(default) orbottom-left.data-target: a CSS selector — renders the badge inline inside that element instead of floating.
Iframe panel — a compact panel with overall status, infrastructure components and open incidents:
<iframe
src="https://connector-status.pluggy.ai/embed?lang=en"
width="360"
height="240"
style="border: 0"
title="Pluggy Status"
></iframe>Summary endpoint — both are backed by a tiny JSON summary you can also consume directly (CORS open, cached ~30s):
GET https://connector-status.pluggy.ai/api/widget
{
"status": "op",
"labels": { "pt": "…", "es": "…", "en": "All systems operational" },
"openIncidents": 0,
"updatedAt": "2026-07-10T12:00:00.000Z"
}status is op (operational), mn (maintenance), dg (degraded), pt (partial outage) or mj (major outage) — the worst across connectors, payment products and infrastructure.
Other channels#
| Channel | How |
|---|---|
| Subscribe on the status page — pick specific products or everything; double opt-in, one-click unsubscribe | |
| Slack | Install the Pluggy Status app from the page's subscribe dialog, or invite @Pluggy Status to a channel and enable it |
| RSS | https://connector-status.pluggy.ai/rss — last 50 incidents with their timelines |
| Webhooks | For connector status changes affecting your items, prefer the standard Pluggy webhooks (connector/status_updated) |
