← Voltar ao estado atual

API de estado

Todos os dados desta página de estado também estão disponíveis em JSON, para que possa integrar o estado da seven.io nos seus próprios painéis, sistemas de monitorização ou widgets de estado.

Os endpoints são públicos, não requerem autenticação e permitem pedidos cross-origin (Access-Control-Allow-Origin: *). Todas as marcas temporais estão em ISO 8601 e em UTC.

Estado atual

GEThttps://status.seven.io/api/v1/statusDevolve o estado global e ainda todos os componentes e grupos de componentes.
{
  "status": "operational",
  "components": [
    {
      "id": "0a1b2c3d-4e5f-6789-abcd-ef0123456789",
      "name": "SMS Gateway",
      "description": "SMS sending and delivery",
      "status": "operational",
      "position": 0,
      "groupId": "9f8e7d6c-5b4a-3210-fedc-ba9876543210",
      "showUptime": true,
      "lastCheckAt": "2026-08-25T09:12:00.000Z",
      "createdAt": "2025-01-08T10:00:00.000Z"
    }
  ],
  "groups": [
    {
      "id": "9f8e7d6c-5b4a-3210-fedc-ba9876543210",
      "name": "Messaging",
      "description": null,
      "position": 0,
      "createdAt": "2025-01-08T10:00:00.000Z"
    }
  ]
}

O campo status de nível superior corresponde ao pior estado de todos os componentes. components.groupId remete para groups.id e position define a ordem de apresentação.

Valores possíveis para status: operational, degraded_performance, partial_outage, major_outage, under_maintenance

Incidentes e manutenções

GEThttps://status.seven.io/api/v1/incidentsDevolve as 20 entradas mais recentes, da mais nova para a mais antiga, cada uma com todas as atualizações e os componentes afetados.
[
  {
    "id": "1122aabb-ccdd-4eef-8899-001122334455",
    "type": "incident",
    "title": "Delayed SMS delivery",
    "status": "resolved",
    "impact": "minor",
    "autoCreated": false,
    "scheduledFor": null,
    "scheduledUntil": null,
    "postmortemBody": null,
    "postmortemPublishedAt": null,
    "createdAt": "2026-08-20T08:30:00.000Z",
    "updatedAt": "2026-08-20T09:45:00.000Z",
    "resolvedAt": "2026-08-20T09:45:00.000Z",
    "updates": [
      {
        "id": "5566ddee-7788-4aab-9900-aabbccddeeff",
        "incidentId": "1122aabb-ccdd-4eef-8899-001122334455",
        "status": "resolved",
        "body": "Delivery is back to normal.",
        "createdAt": "2026-08-20T09:45:00.000Z"
      }
    ],
    "affectedComponents": [
      { "id": "0a1b2c3d-4e5f-6789-abcd-ef0123456789", "name": "SMS Gateway" }
    ]
  }
]

Valores possíveis para type: incident, maintenance

Valores possíveis para status: investigating, identified, monitoring, resolved, scheduled, in_progress

Valores possíveis para impact: none, minor, major, critical

Com type = maintenance, scheduledFor e scheduledUntil estão preenchidos; nos incidentes são null. resolvedAt é preenchido assim que a entrada é encerrada.

Métricas

GEThttps://status.seven.io/api/v1/metrics?range=dayDevolve todas as métricas apresentadas na página de estado, juntamente com os respetivos pontos de medição do período selecionado.
[
  {
    "id": "aabbccdd-1122-4334-9556-778899aabbcc",
    "name": "SMS API response time",
    "suffix": "ms",
    "position": 0,
    "displayMin": 0,
    "displayMax": null,
    "createdAt": "2025-01-08T10:00:00.000Z",
    "points": [
      { "value": 128.4, "timestamp": "2026-08-25T09:00:00.000Z" },
      { "value": 131.7, "timestamp": "2026-08-25T09:05:00.000Z" }
    ]
  }
]

Valores possíveis para range (predefinição: day): day, week, month

Utilize offset para recuar no tempo: offset=1 devolve o período anterior (por exemplo ontem com range=day), offset=2 o anterior a esse, etc. Os pontos são guardados durante 31 dias, pelo que é possível recuar no máximo 30 dias ou 3 semanas; month só suporta offset=0.

Os pontos são agregados: intervalos de 5 minutos para day, de uma hora para week e de um dia para month, cada um como percentil 95 suavizado. suffix é a unidade de apresentação (por exemplo ms), ao passo que displayMin e displayMax são limites de eixo opcionais e podem ser null.

Feeds

Existem também feeds Atom e RSS, caso prefira ser notificado sobre novas entradas.

Notas

  • Não analise o HTML desta página de estado. Utilize os endpoints JSON, a sua estrutura mantém-se estável.
  • As respostas não são colocadas em cache. Consultar uma vez por minuto é suficiente para a maioria dos casos.
  • Podem ser adicionados novos campos a qualquer momento. Ignore campos desconhecidos em vez de depender de uma lista fixa.