HTTP API

Ritual

GET/api/v1/rituals/attempts/{attempt_id}
GET
/api/v1/rituals/attempts/{attempt_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

attempt_id*string

Response Body

application/json

curl -X GET "https://example.com/api/v1/rituals/attempts/string"
{  "armed_at_ms": 0,  "attempt_id": "string",  "deadline_ms": 0,  "performances": [    {      "part_id": "string",      "performed_by": "string",      "server_ts_ms": 0    }  ],  "rehearsal": true,  "report": null,  "ritual_def_id": "string",  "status": "armed"}
POST/api/v1/rituals/attempts/{attempt_id}/checkin
POST
/api/v1/rituals/attempts/{attempt_id}/checkin

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

attempt_id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/rituals/attempts/string/checkin" \  -H "Content-Type: application/json" \  -d '{    "part_id": "string"  }'
{  "attempt_id": "string",  "next_deadline_ms": 0,  "part_id": "string",  "status": "armed"}
POST/api/v1/rituals/attempts/{attempt_id}/countdown
POST
/api/v1/rituals/attempts/{attempt_id}/countdown

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

attempt_id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/rituals/attempts/string/countdown" \  -H "Content-Type: application/json" \  -d '{}'
{  "attempt_id": "string",  "channel": "string",  "seconds": 0,  "window_open_ms": 0}
POST/api/v1/rituals/attempts/{attempt_id}/perform
POST
/api/v1/rituals/attempts/{attempt_id}/perform

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

attempt_id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/rituals/attempts/string/perform" \  -H "Content-Type: application/json" \  -d '{    "part_id": "string"  }'
{  "attempt_id": "string",  "part_id": "string",  "performed": 0,  "report": null,  "required": 0,  "status": "armed"}
GET/api/v1/rituals/definitions
GET
/api/v1/rituals/definitions

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Query Parameters

q?string

Full-text search query applied to name and description

page?integer

1-indexed page number

Formatint64
Range0 <= value
page_size?integer

Page size

Formatint64
Range0 <= value
sort_by?string

Sort field (created_at, name, version)

sort_order?string

Sort order (asc or desc)

Value in

  • "asc"
  • "desc"
filter?array<string>

Additional filter expressions in the form field:operator:value

Response Body

application/json

curl -X GET "https://example.com/api/v1/rituals/definitions"
{  "definitions": [    {      "arm_ttl_seconds": 0,      "checkin_interval_seconds": 0,      "created_at": "2019-08-24T14:15:22Z",      "created_by": "string",      "description": "string",      "escalation": [        {          "action": "notify",          "after_missed_seconds": 0,          "pubsub_channel": "string",          "webhook_ids": [            "string"          ]        }      ],      "mode": "forward",      "name": "string",      "on_complete": null,      "on_dispute": "none",      "ordering": [        "string"      ],      "parts": [        {          "actor_type": "user",          "assigned_to": "string",          "part_id": "string"        }      ],      "quorum": {        "of": 0,        "required": 0      },      "ritual_def_id": "string",      "updated_at": "2019-08-24T14:15:22Z",      "version": 0,      "window_ms": 0    }  ],  "pagination": {    "has_more": true,    "page": 0,    "page_size": 0,    "total": 0  }}
POST/api/v1/rituals/definitions
POST
/api/v1/rituals/definitions

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/rituals/definitions" \  -H "Content-Type: application/json" \  -d '{    "name": "string",    "parts": [      {        "assigned_to": "string",        "part_id": "string"      }    ],    "window_ms": 0  }'
{  "created_at": "2019-08-24T14:15:22Z",  "name": "string",  "ritual_def_id": "string",  "version": 0}
GET/api/v1/rituals/definitions/{def_id}
GET
/api/v1/rituals/definitions/{def_id}

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

def_id*string

Response Body

application/json

curl -X GET "https://example.com/api/v1/rituals/definitions/string"
{  "arm_ttl_seconds": 0,  "checkin_interval_seconds": 0,  "created_at": "2019-08-24T14:15:22Z",  "created_by": "string",  "description": "string",  "escalation": [    {      "action": "notify",      "after_missed_seconds": 0,      "pubsub_channel": "string",      "webhook_ids": [        "string"      ]    }  ],  "mode": "forward",  "name": "string",  "on_complete": null,  "on_dispute": "none",  "ordering": [    "string"  ],  "parts": [    {      "actor_type": "user",      "assigned_to": "string",      "part_id": "string"    }  ],  "quorum": {    "of": 0,    "required": 0  },  "ritual_def_id": "string",  "updated_at": "2019-08-24T14:15:22Z",  "version": 0,  "window_ms": 0}
GET/api/v1/rituals/{def_id}/analytics
GET
/api/v1/rituals/{def_id}/analytics

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

def_id*string

Query Parameters

sample_size?integer

Maximum number of recent terminal attempts to sample

Formatint64
Range0 <= value

Response Body

application/json

curl -X GET "https://example.com/api/v1/rituals/string/analytics"
{  "completed": 0,  "failed": 0,  "lateness_leaders": [    {      "near_miss_count": 0,      "part_id": "string"    }  ],  "median_spread_ms": 0,  "ritual_def_id": "string",  "success_rate": 0.1,  "total_attempts": 0}
POST/api/v1/rituals/{def_id}/arm
POST
/api/v1/rituals/{def_id}/arm

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

def_id*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

curl -X POST "https://example.com/api/v1/rituals/string/arm" \  -H "Content-Type: application/json" \  -d '{}'
{  "armed_at_ms": 0,  "attempt_id": "string",  "deadline_ms": 0,  "rehearsal": true,  "ritual_def_id": "string",  "status": "armed"}
GET/api/v1/rituals/{def_id}/history
GET
/api/v1/rituals/{def_id}/history

Authorization

bearer_token
AuthorizationBearer <token>

In: header

Path Parameters

def_id*string

Query Parameters

page?integer

1-indexed page number

Formatint64
Range0 <= value
page_size?integer

Page size

Formatint64
Range0 <= value
status?string

Filter by attempt status

Response Body

application/json

curl -X GET "https://example.com/api/v1/rituals/string/history"
{  "attempts": [    {      "armed_at_ms": 0,      "attempt_id": "string",      "deadline_ms": 0,      "performances": [        {          "part_id": "string",          "performed_by": "string",          "server_ts_ms": 0        }      ],      "rehearsal": true,      "report": null,      "ritual_def_id": "string",      "status": "armed"    }  ],  "pagination": {    "has_more": true,    "page": 0,    "page_size": 0,    "total": 0  }}

On this page