BotanaryBotanary

Notifications

Alerts feed - every action, every block, every depeg drift.

List alerts

GET
/notifications

Authorization

sessionToken
AuthorizationBearer <token>

Botanary session token from POST /auth/session. Not a key - a revocable session bearer.

In: header

Query Parameters

unreadOnly?boolean
Defaultfalse

Response Body

application/json

application/json

curl -X GET "https://api.app.botanary.xyz/notifications"
[
  {
    "id": "n1",
    "tone": "danger",
    "title": "Action blocked",
    "body": "Uniswap tried to spend 120 USDC - over the 50 USDC per-action cap.",
    "createdAt": "2019-08-24T14:15:22Z",
    "timeLabel": "2m ago",
    "read": false,
    "relatedType": "activity",
    "relatedId": "a2",
    "action": {
      "label": "View in log",
      "target": "activity"
    }
  }
]
{
  "error": {
    "code": "unauthorized",
    "message": "Session token missing or expired."
  }
}

Mark one notification as read

POST
/notifications/{notificationId}/read

Authorization

sessionToken
AuthorizationBearer <token>

Botanary session token from POST /auth/session. Not a key - a revocable session bearer.

In: header

Path Parameters

notificationId*string

Response Body

application/json

application/json

application/json

curl -X POST "https://api.app.botanary.xyz/notifications/string/read"
{
  "id": "n1",
  "tone": "danger",
  "title": "Action blocked",
  "body": "Uniswap tried to spend 120 USDC - over the 50 USDC per-action cap.",
  "createdAt": "2019-08-24T14:15:22Z",
  "timeLabel": "2m ago",
  "read": false,
  "relatedType": "activity",
  "relatedId": "a2",
  "action": {
    "label": "View in log",
    "target": "activity"
  }
}
{
  "error": {
    "code": "unauthorized",
    "message": "Session token missing or expired."
  }
}
{
  "error": {
    "code": "out_of_scope",
    "message": "This action exceeds the per-action cap.",
    "declineReason": "cap_exceeded",
    "details": {},
    "requestId": "string"
  }
}

Mark all notifications as read

POST
/notifications/read-all

Authorization

sessionToken
AuthorizationBearer <token>

Botanary session token from POST /auth/session. Not a key - a revocable session bearer.

In: header

Response Body

application/json

curl -X POST "https://api.app.botanary.xyz/notifications/read-all"
Empty
{
  "error": {
    "code": "unauthorized",
    "message": "Session token missing or expired."
  }
}