Pipedream rate limits

The following rate limits apply to all Connect API endpoints:
EndpointLimitScope
POST /token100 requests/minutePer external user
GET | DELETE /accounts/*200 requests/minutePer project
POST /components/*100 requests/minutePer project
GET /components/*3000 requests/5 minutesPer project
GET | POST /proxy1000 requests/5 minutesPer project
Component endpoints include /components, /actions, and /triggers.
Need higher limits? Contact our support team to discuss your requirements.

Custom rate limits

You can set custom rate limits for your users to control their usage of the Connect API and prevent runaway requests or abuse.

Create rate limit

Create a rate limit by specifying a time window and maximum requests allowed within that window. The API returns a rate_limit_token that you include in subsequent Connect API requests.
POST /rate_limits

Parameters

ParameterTypeDescription
window_size_secondsintegerTime window duration in seconds
requests_per_windowintegerMaximum requests allowed per window

Example request

# First, obtain an OAuth access token
curl -X POST https://api.pipedream.com/v1/oauth/token \
  -H "Content-Type: application/json" \
  -d '{
    "grant_type": "client_credentials",
    "client_id": "{oauth_client_id}",
    "client_secret": "{oauth_client_secret}"
  }'

# Create the rate limit
curl -X POST https://api.pipedream.com/v1/connect/rate_limits \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer {access_token}" \
  -d '{
    "window_size_seconds": 10,
    "requests_per_window": 1000
  }'

Response

{
  "token": "CiKpqRdTmNwLfhzSvYxBjAkMnVbXuQrWeZyHgPtJsDcEvFpLnE"
}

Using rate limit tokens

Include the rate_limit_token in the x-pd-rate-limit header for all Connect API requests:
curl -X POST "https://api.pipedream.com/v1/connect/{project_id}/actions/run" \
  -H "Authorization: Bearer {access_token}" \
  -H "Content-Type: application/json" \
  -H "x-pd-rate-limit: {rate_limit_token}" \
  -d '{
    "external_user_id": "user123",
    "id": "gitlab-list-commits",
    "configured_props": {
      "gitlab": {
        "authProvisionId": "apn_kVh9AoD"
      },
      "projectId": 45672541,
      "refName": "main"
    }
  }'