Subscriptions
Create a subscription
Subscriptions
Create a subscription
This endpoint creates a subscriptions
POST
/
v1
/
projects
/
{projectID}
/
subscriptions
curl --request POST \
--url https://dashboard.getconvoy.io/api/v1/projects/{projectID}/subscriptions \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"alert_config": {
"count": 123,
"threshold": "<string>"
},
"app_id": "<string>",
"endpoint_id": "<string>",
"filter_config": {
"event_types": [
"<string>"
],
"filter": {
"body": {},
"headers": {}
}
},
"function": "<string>",
"name": "<string>",
"rate_limit_config": {
"count": 123,
"duration": 123
},
"retry_config": {
"duration": "<string>",
"interval_seconds": 123,
"retry_count": 123,
"type": "linear"
},
"source_id": "<string>"
}'
{
"message": "<string>",
"status": true,
"data": {
"alert_config": {
"count": 123,
"threshold": "<string>"
},
"created_at": "<string>",
"deleted_at": "<string>",
"device_metadata": {
"created_at": "<string>",
"deleted_at": "<string>",
"endpoint_id": "<string>",
"host_name": "<string>",
"last_seen_at": "<string>",
"project_id": "<string>",
"status": "offline",
"uid": "<string>",
"updated_at": "<string>"
},
"endpoint_metadata": {
"advanced_signatures": true,
"authentication": {
"api_key": {
"header_name": "<string>",
"header_value": "<string>"
},
"type": "api_key"
},
"created_at": "<string>",
"deleted_at": "<string>",
"description": "<string>",
"events": 123,
"failure_rate": 123,
"http_timeout": 123,
"name": "<string>",
"owner_id": "<string>",
"project_id": "<string>",
"rate_limit": 123,
"rate_limit_duration": 123,
"secrets": [
{
"created_at": "<string>",
"deleted_at": "<string>",
"expires_at": "<string>",
"uid": "<string>",
"updated_at": "<string>",
"value": "<string>"
}
],
"slack_webhook_url": "<string>",
"status": "active",
"support_email": "<string>",
"uid": "<string>",
"updated_at": "<string>",
"url": "<string>"
},
"filter_config": {
"event_types": [
"<string>"
],
"filter": {
"body": {},
"headers": {},
"is_flattened": true
}
},
"function": "<string>",
"name": "<string>",
"rate_limit_config": {
"count": 123,
"duration": 123
},
"retry_config": {
"duration": 123,
"retry_count": 123,
"type": "linear"
},
"source_metadata": {
"body_function": "<string>",
"created_at": "<string>",
"custom_response": {
"body": "<string>",
"content_type": "<string>"
},
"deleted_at": "<string>",
"forward_headers": [
"<string>"
],
"header_function": "<string>",
"idempotency_keys": [
"<string>"
],
"is_disabled": true,
"mask_id": "<string>",
"name": "<string>",
"project_id": "<string>",
"provider": "github",
"provider_config": {
"twitter": {
"crc_verified_at": "<string>"
}
},
"pub_sub": {
"amqp": {
"auth": {
"password": "<string>",
"user": "<string>"
},
"bindedExchange": "<string>",
"deadLetterExchange": "<string>",
"host": "<string>",
"port": "<string>",
"queue": "<string>",
"routingKey": "<string>",
"schema": "<string>",
"vhost": "<string>"
},
"google": {
"project_id": "<string>",
"service_account": [
123
],
"subscription_id": "<string>"
},
"kafka": {
"auth": {
"hash": "<string>",
"password": "<string>",
"tls": true,
"type": "<string>",
"username": "<string>"
},
"brokers": [
"<string>"
],
"consumer_group_id": "<string>",
"topic_name": "<string>"
},
"sqs": {
"access_key_id": "<string>",
"default_region": "<string>",
"queue_name": "<string>",
"secret_key": "<string>"
},
"type": "sqs",
"workers": 123
},
"type": "http",
"uid": "<string>",
"updated_at": "<string>",
"url": "<string>",
"verifier": {
"api_key": {
"header_name": "<string>",
"header_value": "<string>"
},
"basic_auth": {
"password": "<string>",
"username": "<string>"
},
"hmac": {
"encoding": "base64",
"hash": "<string>",
"header": "<string>",
"secret": "<string>"
},
"type": "noop"
}
},
"type": "cli",
"uid": "<string>",
"updated_at": "<string>"
}
}
Authorizations
Path Parameters
Project ID
Body
application/json
Subscription details
Deprecated but necessary for backward compatibility
Destination endpoint ID
Convoy supports mutating your request payload using a js function. Use this field
to specify a transform
function for this purpose. See this[https://getconvoy.io/docs/product-manual/subscriptions#functions] for more
Subscription Nme
Retry configuration
Used to specify a valid Go time duration e.g 10s, 1h3m for how long to wait between event delivery retries
Used to specify a time in seconds for how long to wait between event delivery retries,
Used to specify the max number of retries
Retry Strategy type
Available options:
linear
, exponential
Source Id
Response
201
application/json
Created
Available options:
offline
, online
, disabled
Available options:
active
, inactive
, pending
, paused
Available options:
github
, twitter
, shopify
Available options:
sqs
, google
, kafka
, amqp
Available options:
http
, rest_api
, pub_sub
, db_change_stream
Available options:
noop
, hmac
, basic_auth
, api_key
Available options:
cli
, api
Was this page helpful?
curl --request POST \
--url https://dashboard.getconvoy.io/api/v1/projects/{projectID}/subscriptions \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
"alert_config": {
"count": 123,
"threshold": "<string>"
},
"app_id": "<string>",
"endpoint_id": "<string>",
"filter_config": {
"event_types": [
"<string>"
],
"filter": {
"body": {},
"headers": {}
}
},
"function": "<string>",
"name": "<string>",
"rate_limit_config": {
"count": 123,
"duration": 123
},
"retry_config": {
"duration": "<string>",
"interval_seconds": 123,
"retry_count": 123,
"type": "linear"
},
"source_id": "<string>"
}'
{
"message": "<string>",
"status": true,
"data": {
"alert_config": {
"count": 123,
"threshold": "<string>"
},
"created_at": "<string>",
"deleted_at": "<string>",
"device_metadata": {
"created_at": "<string>",
"deleted_at": "<string>",
"endpoint_id": "<string>",
"host_name": "<string>",
"last_seen_at": "<string>",
"project_id": "<string>",
"status": "offline",
"uid": "<string>",
"updated_at": "<string>"
},
"endpoint_metadata": {
"advanced_signatures": true,
"authentication": {
"api_key": {
"header_name": "<string>",
"header_value": "<string>"
},
"type": "api_key"
},
"created_at": "<string>",
"deleted_at": "<string>",
"description": "<string>",
"events": 123,
"failure_rate": 123,
"http_timeout": 123,
"name": "<string>",
"owner_id": "<string>",
"project_id": "<string>",
"rate_limit": 123,
"rate_limit_duration": 123,
"secrets": [
{
"created_at": "<string>",
"deleted_at": "<string>",
"expires_at": "<string>",
"uid": "<string>",
"updated_at": "<string>",
"value": "<string>"
}
],
"slack_webhook_url": "<string>",
"status": "active",
"support_email": "<string>",
"uid": "<string>",
"updated_at": "<string>",
"url": "<string>"
},
"filter_config": {
"event_types": [
"<string>"
],
"filter": {
"body": {},
"headers": {},
"is_flattened": true
}
},
"function": "<string>",
"name": "<string>",
"rate_limit_config": {
"count": 123,
"duration": 123
},
"retry_config": {
"duration": 123,
"retry_count": 123,
"type": "linear"
},
"source_metadata": {
"body_function": "<string>",
"created_at": "<string>",
"custom_response": {
"body": "<string>",
"content_type": "<string>"
},
"deleted_at": "<string>",
"forward_headers": [
"<string>"
],
"header_function": "<string>",
"idempotency_keys": [
"<string>"
],
"is_disabled": true,
"mask_id": "<string>",
"name": "<string>",
"project_id": "<string>",
"provider": "github",
"provider_config": {
"twitter": {
"crc_verified_at": "<string>"
}
},
"pub_sub": {
"amqp": {
"auth": {
"password": "<string>",
"user": "<string>"
},
"bindedExchange": "<string>",
"deadLetterExchange": "<string>",
"host": "<string>",
"port": "<string>",
"queue": "<string>",
"routingKey": "<string>",
"schema": "<string>",
"vhost": "<string>"
},
"google": {
"project_id": "<string>",
"service_account": [
123
],
"subscription_id": "<string>"
},
"kafka": {
"auth": {
"hash": "<string>",
"password": "<string>",
"tls": true,
"type": "<string>",
"username": "<string>"
},
"brokers": [
"<string>"
],
"consumer_group_id": "<string>",
"topic_name": "<string>"
},
"sqs": {
"access_key_id": "<string>",
"default_region": "<string>",
"queue_name": "<string>",
"secret_key": "<string>"
},
"type": "sqs",
"workers": 123
},
"type": "http",
"uid": "<string>",
"updated_at": "<string>",
"url": "<string>",
"verifier": {
"api_key": {
"header_name": "<string>",
"header_value": "<string>"
},
"basic_auth": {
"password": "<string>",
"username": "<string>"
},
"hmac": {
"encoding": "base64",
"hash": "<string>",
"header": "<string>",
"secret": "<string>"
},
"type": "noop"
}
},
"type": "cli",
"uid": "<string>",
"updated_at": "<string>"
}
}