Skip to main content
PUT
/
v1
/
projects
/
{projectID}
/
subscriptions
/
{subscriptionID}
Update a subscription
curl --request PUT \
  --url https://us.getconvoy.cloud/api/v1/projects/{projectID}/subscriptions/{subscriptionID} \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "alert_config": {
    "count": 123,
    "threshold": "<string>"
  },
  "app_id": "<string>",
  "delivery_mode": "at_least_once",
  "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>",
    "delivery_mode": "at_least_once",
    "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>"
        },
        "basic_auth": {
          "password": "<string>",
          "username": "<string>"
        },
        "oauth2": {
          "audience": "<string>",
          "authentication_type": "shared_secret",
          "client_id": "<string>",
          "client_secret": "<string>",
          "expiry_time_unit": "seconds",
          "field_mapping": {
            "access_token": "<string>",
            "expires_in": "<string>",
            "token_type": "<string>"
          },
          "grant_type": "<string>",
          "issuer": "<string>",
          "scope": "<string>",
          "signing_algorithm": "<string>",
          "signing_key": {
            "crv": "<string>",
            "d": "<string>",
            "dp": "<string>",
            "dq": "<string>",
            "e": "<string>",
            "kid": "<string>",
            "kty": "<string>",
            "n": "<string>",
            "p": "<string>",
            "q": "<string>",
            "qi": "<string>",
            "x": "<string>",
            "y": "<string>"
          },
          "subject": "<string>",
          "url": "<string>"
        },
        "type": "api_key"
      },
      "content_type": "<string>",
      "created_at": "<string>",
      "deleted_at": "<string>",
      "description": "<string>",
      "events": 123,
      "failure_rate": 123,
      "http_timeout": 123,
      "mtls_client_cert": {
        "client_cert": "<string>",
        "client_key": "<string>"
      },
      "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>",
    "project_id": "<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": {
          "host": "<string>",
          "auth": {
            "password": "<string>",
            "user": "<string>"
          },
          "bindedExchange": "<string>",
          "deadLetterExchange": "<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>",
          "endpoint": "<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>"
  }
}

Documentation Index

Fetch the complete documentation index at: https://getconvoy.io/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Path Parameters

projectID
string
required

Project ID

subscriptionID
string
required

subscription id

Body

application/json

Subscription Details

alert_config
object

Alert configuration

app_id
string

Deprecated but necessary for backward compatibility

delivery_mode
enum<string>

Delivery mode configuration

Available options:
at_least_once,
at_most_once
endpoint_id
string

Destination endpoint ID

filter_config
object

Filter configuration

function
string

Convoy supports mutating your request payload using a js function. Use this field to specify a transform function for this purpose. See this[https://docs.getconvoy.io/product-manual/subscriptions#functions] for more

name
string

Subscription Nme

rate_limit_config
object

Rate limit configuration

retry_config
object

Retry configuration

source_id
string

Source Id

Response

Accepted

message
string
status
boolean
data
object