Skip to main content
POST
/
platform
/
pipeline-api
Create a pipeline
curl --request POST \
  --url https://api.covalenthq.com/platform/pipeline-api/ \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "project": "<string>",
  "topic": "<string>",
  "destination_type": "postgres",
  "destination_config": {
    "type": "<string>",
    "url": "<string>",
    "user": "<string>",
    "password": "<string>"
  },
  "execution_mode": "bounded",
  "description": "<string>",
  "transforms": {},
  "execution_start_from": "<string>",
  "execution_stop_from": "<string>",
  "abi_file": {},
  "abi_contract_addresses": [
    "<string>"
  ],
  "abi_unmatched": "",
  "status": "running"
}
'
{
  "data": {
    "id": "pipe_3e8678c5fc9e48a7bf9879ca729",
    "name": "From Base Swap to Postgres",
    "project": "pipeline-api-hr-1wk-unbounded",
    "description": "Base swaps, unbounded",
    "topic": "base.mainnet.ref.block.swap.v3",
    "destination_type": "postgres",
    "destination_config": {
      "type": "<string>",
      "url": "<string>",
      "user": "<string>",
      "password": "<string>"
    },
    "transforms": {
      "swaps": "SELECT chain_name, block_height, tx_hash FROM swaps WHERE protocol = 'uniswap_v3'"
    },
    "execution_mode": "bounded",
    "execution_start_from": "44745000",
    "execution_stop_from": "",
    "abi_file": {},
    "abi_contract_addresses": [
      "<string>"
    ],
    "abi_unmatched": "",
    "status": "running",
    "created_by": {
      "id": "user_fb22f43e38ac44edabc7f566c5d",
      "email": "jsmith@example.com",
      "display_name": "<string>",
      "full_name": "<string>"
    },
    "group": {
      "id": "group_d632592ddbde4a499452d25b",
      "name": "<string>",
      "slug": "<string>",
      "is_paid": true,
      "is_over_limit": true,
      "is_free_trial_expired": true
    },
    "created_at": "2023-11-07T05:31:56Z",
    "updated_at": "2023-11-07T05:31:56Z"
  },
  "error": true,
  "error_message": "<string>",
  "error_code": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://goldrush.dev/docs/llms.txt

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

Requires a ServiceKey. See Service Keys.
The request body mirrors the YAML pipeline configuration documented under Configuration, expressed as JSON. The same destination_type values, topic format, and transforms semantics apply.

Authorizations

Authorization
string
header
required

Pipeline REST endpoints require a ServiceKey. Regular GoldRush API keys are rejected with 403. See Service Keys.

Body

application/json

Body for creating a pipeline. Read-only fields (id, created_by, group, created_at, updated_at) are ignored if supplied.

name
string
required
project
string
required
topic
string
required
destination_type
enum<string>
required
Available options:
postgres,
clickhouse,
kafka,
object_storage,
sqs,
webhook
destination_config
object
required

Destination-specific connection details. The accepted keys depend on destination_type. Examples: Postgres uses url, user, password; webhook uses url. On read, secret fields are masked as ****** and must be re-supplied in full on a PUT.

execution_mode
enum<string>
required
Available options:
bounded,
unbounded
description
string
transforms
object
execution_start_from
string
execution_stop_from
string
abi_file
object
abi_contract_addresses
string[]
abi_unmatched
enum<string>
Available options:
,
skip,
raw
status
enum<string>

Set to paused to create the pipeline without starting it. Defaults to running.

Available options:
running,
paused

Response

Pipeline created.

data
object

A configured pipeline. Sensitive fields inside destination_config (such as passwords) are masked as ****** on read.

error
boolean
error_message
string | null
error_code
string | null