v1

latestOpenAPI 3.1.02026-07-263644911022.4 KB
Configuration

Create a source binding

Creates a source binding tying a reconciliation source to a pull rail (file or query) plus an interval schedule. Exactly one rail payload is meaningful per kind: the file rail populates transportConfig, the query rail populates connectionId.

post/v1/contexts/{contextId}/sources/{sourceId}/bindings

Path parameters

contextIdstring uuid required

Context ID

Context ID

sourceIdstring uuid required

Source ID

Source ID

Request body

connectionIdstring uuid

Query-rail engine connection reference (UUID). Required for the query rail, rejected for the file rail.

enabledboolean

Whether the binding runs immediately. Defaults to true when omitted.

formatstring required

Declared format the binding produces, as a region/family-namespaced descriptor key.

kind'file' | 'query' required

Rail the source is pulled on. file fetches files via a transport; query pulls rows through a discovery-engine connection. Exactly one rail payload is meaningful per kind.

scheduleSpecstring required

Interval schedule spec the binding scheduler reads (cron or @every duration).

Example request

{
  "connectionId": "550e8400-e29b-41d4-a716-446655440000",
  "enabled": true,
  "format": "br/cnab400/default",
  "kind": "file",
  "scheduleSpec": "@every 1h",
  "transportConfig": {
    "credentialRef": "cred-bank-sftp",
    "glob": "*.csv",
    "host": "sftp.bank.example.com",
    "kind": "sftp",
    "path": "/statements",
    "port": 22
  }
}

Response

Created

connectionIdstring

Query-rail engine connection reference (UUID). Omitted for file-rail bindings.

contextIdstring required

Identifier of the context this binding belongs to.

createdAtstring required

Creation timestamp in RFC 3339 format.

enabledboolean required

Whether the binding runs.

formatstring required

Declared format the binding produces, as a region/family-namespaced descriptor key.

idstring required

Unique identifier of the binding.

kind'file' | 'query' required

Rail the source is pulled on. file fetches files via a transport; query pulls rows through a discovery-engine connection.

scheduleSpecstring required

Interval schedule spec the binding scheduler reads (cron or @every duration).

sourceIdstring required

Identifier of the source this binding belongs to.

updatedAtstring required

Last update timestamp in RFC 3339 format.

Example response

{
  "connectionId": "550e8400-e29b-41d4-a716-446655440000",
  "contextId": "550e8400-e29b-41d4-a716-446655440000",
  "createdAt": "2025-01-15T10:30:00Z",
  "enabled": true,
  "format": "br/cnab400/default",
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "kind": "file",
  "scheduleSpec": "@every 1h",
  "sourceId": "550e8400-e29b-41d4-a716-446655440000",
  "transportConfig": {
    "credentialRef": "cred-bank-sftp",
    "glob": "*.csv",
    "host": "sftp.bank.example.com",
    "kind": "sftp",
    "path": "/statements",
    "port": 22
  },
  "updatedAt": "2025-01-15T10:30:00Z"
}