For the complete documentation index, see llms.txt. This page is also available as Markdown.

Notification Destinations

Create and manage event notification destinations for Stook.

List notification destinations

get

Returns the organization's event notification destinations. Filter by region to get the destinations a bucket in that region can use.

Path parameters
organization_uuidstringRequired

Unique identifier for the organization.

Query parameters
regionstringOptional

Only destinations in this region, for example eu-ist-1.

Responses
200

Successful response

application/json
statusbooleanOptional

Indicates whether the request succeeded.

get/api/v2/stook/{organization_uuid}/notification-destination
GET /api/v2/stook/{organization_uuid}/notification-destination HTTP/1.1
Host: cloud.medianova.com
Accept: */*
200

Successful response

{
  "status": true,
  "data": [
    {
      "uuid": "9f3c1a2e-7b44-4c1d-9a55-2f8e6d1b0c77",
      "name": "order-hook",
      "region": "eu-ist-1",
      "kind": "https",
      "endpoint": "https://api.example.com/stook-hook",
      "persistent": false,
      "used_by": 2
    }
  ]
}

Create a notification destination

post

Creates an HTTPS, Kafka, or AMQP destination that bucket notifications can send events to. The name, region, and type cannot be changed later.

Path parameters
organization_uuidstringRequired

Unique identifier for the organization.

Body
namestringRequired

3–63 characters: letters, numbers, hyphens, and underscores. Unique within the region. Cannot be changed later.

Pattern: ^[A-Za-z0-9_-]{3,63}$
regionstringRequired

Region of the buckets that will use the destination, for example eu-ist-1. Cannot be changed later.

kindstring · enumOptional

Destination type. Cannot be changed later.

Default: httpsPossible values:
endpointstringRequired

Address events are sent to: https:// for https, kafka:// for kafka, amqp:// or amqps:// for amqp. Must use a hostname that resolves to a public address. HTTPS endpoints must present a valid TLS certificate.

amqp_exchangestring · nullableOptional

amqp destinations only. The RabbitMQ exchange events are published to, with the destination name as the routing key. The exchange must already exist. Letters, numbers, hyphens, underscores, periods, and colons, up to 127 characters. Leave empty to use amq.topic.

Pattern: ^[A-Za-z0-9_.:-]{1,127}$
persistentbooleanOptional

When true, events that cannot be delivered are queued and retried. When false, they are dropped.

Default: false
max_retriesinteger · min: 1 · max: 100Optional

Maximum delivery attempts. Used when persistent is true.

time_to_liveinteger · min: 1 · max: 1209600Optional

Seconds an event may wait in the queue (up to 14 days). Used when persistent is true.

retry_sleep_durationinteger · max: 3600Optional

Seconds between delivery attempts. Used when persistent is true.

Responses
200

Successful response

application/json
statusbooleanOptional

Indicates whether the request succeeded.

post/api/v2/stook/{organization_uuid}/notification-destination
POST /api/v2/stook/{organization_uuid}/notification-destination HTTP/1.1
Host: cloud.medianova.com
Content-Type: application/json
Accept: */*
Content-Length: 183

{
  "name": "order-hook",
  "region": "eu-ist-1",
  "kind": "https",
  "endpoint": "https://api.example.com/stook-hook",
  "persistent": true,
  "max_retries": 5,
  "time_to_live": 300,
  "retry_sleep_duration": 30
}
{
  "status": true,
  "data": {
    "uuid": "text",
    "name": "text",
    "region": "text",
    "kind": "https",
    "endpoint": "text",
    "amqp_exchange": "text",
    "persistent": true,
    "max_retries": 1,
    "time_to_live": 1,
    "retry_sleep_duration": 1,
    "used_by": 1
  }
}

Get a notification destination

get

Returns a single event notification destination.

Path parameters
organization_uuidstringRequired

Unique identifier for the organization.

destination_uuidstringRequired

Unique identifier for the notification destination.

Responses
200

Successful response

application/json
statusbooleanOptional

Indicates whether the request succeeded.

get/api/v2/stook/{organization_uuid}/notification-destination/{destination_uuid}
GET /api/v2/stook/{organization_uuid}/notification-destination/{destination_uuid} HTTP/1.1
Host: cloud.medianova.com
Accept: */*
{
  "status": true,
  "data": {
    "uuid": "9f3c1a2e-7b44-4c1d-9a55-2f8e6d1b0c77",
    "name": "order-hook",
    "region": "eu-ist-1",
    "kind": "https",
    "endpoint": "https://api.example.com/stook-hook",
    "persistent": false,
    "used_by": 2
  }
}

Update a notification destination

put

Changes the endpoint, exchange, or delivery settings of a destination. The name, region, and type cannot be changed.

Path parameters
organization_uuidstringRequired

Unique identifier for the organization.

destination_uuidstringRequired

Unique identifier for the notification destination.

Body

Only these fields can be changed.

endpointstringOptional

Address events are sent to: https:// for https, kafka:// for kafka, amqp:// or amqps:// for amqp. Must use a hostname that resolves to a public address. HTTPS endpoints must present a valid TLS certificate.

amqp_exchangestring · nullableOptional

amqp destinations only. The RabbitMQ exchange events are published to. Omit to keep the current exchange; send null or an empty string to use amq.topic.

Pattern: ^[A-Za-z0-9_.:-]{1,127}$
persistentbooleanOptional

When true, events that cannot be delivered are queued and retried. When false, they are dropped.

Default: false
max_retriesinteger · min: 1 · max: 100Optional

Maximum delivery attempts. Used when persistent is true.

time_to_liveinteger · min: 1 · max: 1209600Optional

Seconds an event may wait in the queue (up to 14 days). Used when persistent is true.

retry_sleep_durationinteger · max: 3600Optional

Seconds between delivery attempts. Used when persistent is true.

Responses
200

Successful response

application/json
statusbooleanOptional

Indicates whether the request succeeded.

put/api/v2/stook/{organization_uuid}/notification-destination/{destination_uuid}
PUT /api/v2/stook/{organization_uuid}/notification-destination/{destination_uuid} HTTP/1.1
Host: cloud.medianova.com
Content-Type: application/json
Accept: */*
Content-Length: 87

{
  "endpoint": "https://api.example.com/stook-hook-v2",
  "persistent": true,
  "max_retries": 10
}
{
  "status": true,
  "data": {
    "uuid": "text",
    "name": "text",
    "region": "text",
    "kind": "https",
    "endpoint": "text",
    "amqp_exchange": "text",
    "persistent": true,
    "max_retries": 1,
    "time_to_live": 1,
    "retry_sleep_duration": 1,
    "used_by": 1
  }
}

Delete a notification destination

delete

Deletes a destination. A destination that is still used by bucket notifications cannot be deleted.

Path parameters
organization_uuidstringRequired

Unique identifier for the organization.

destination_uuidstringRequired

Unique identifier for the notification destination.

Responses
200

The destination was deleted.

application/json
statusbooleanOptionalExample: true
messagestringOptional
delete/api/v2/stook/{organization_uuid}/notification-destination/{destination_uuid}
DELETE /api/v2/stook/{organization_uuid}/notification-destination/{destination_uuid} HTTP/1.1
Host: cloud.medianova.com
Accept: */*
{
  "status": true,
  "message": "Destination removed"
}

Last updated

Was this helpful?