Skip to main content
This guide covers the partner-facing flow for pulling active Shield incidents and submitting new incidents. It does not cover admin-only incident operations. For the concepts and security model behind incidents, see Proactive Intents Security.
For non-programmatic viewing and submitting incidents, use https://partners.near-intents.org/shield/console.
All requests use:
Authorization: Bearer <PARTNER_TOKEN>
Accept: application/json

Pull active incidents

Use GET https://shield.chaindefuser.com/incident to check whether Shield currently has active incidents.
curl -sS "https://shield.chaindefuser.com/incident" \
  -H "Authorization: Bearer $PARTNER_TOKEN" \
  -H "Accept: application/json"
When there are no active incidents, Shield returns:
{
  "status": "operational"
}
When incidents are active, Shield returns:
{
  "status": "incidents",
  "incidents": [
    {
      "scopeType": "chain",
      "scopeValue": "eth",
      "direction": "withdraw",
      "publicDescription": "ETH withdrawals are delayed"
    }
  ]
}
Partners with the status_read grant receive the full internal incident record, including id, status, description, createdBy, metadata, and timestamps.

Submit an incident

Use POST https://shield.chaindefuser.com/incident to open a scoped incident. A matching active incident blocks Shield evaluation for that scope and direction.
curl -sS -X POST "https://shield.chaindefuser.com/incident" \
  -H "Authorization: Bearer $PARTNER_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "scopeType": "chain",
    "scopeValue": "eth",
    "direction": "withdraw",
    "description": "ETH withdrawals are temporarily unavailable"
  }'
Successful response:
{
  "incident": {
    "id": "<id>",
    "status": "active",
    "scopeType": "chain",
    "scopeValue": "eth",
    "direction": "withdraw",
    "description": "ETH withdrawals are temporarily unavailable",
    "publicDescription": null,
    "createdBy": "partner-id",
    "resolvedBy": null,
    "metadata": null,
    "createdAt": "2026-06-29T08:00:00.000Z",
    "updatedAt": "2026-06-29T08:00:00.000Z",
    "resolvedAt": null
  }
}

Incident scope

FieldRequiredValuesNotes
scopeTypeYeschain, bridge, token, addressWhat kind of surface is affected
scopeValueYesScope-specific stringExamples: eth, poa, nep141:<contract>, or an address
descriptionNoStringIncident context