
Clay PushRows
CertifiedPush rows to a Clay table
Clay PushRows
Push rows to a Clay table
Sends records to a Clay table through its inbound webhook, in sequential batches. Network errors, HTTP 429 and HTTP 5xx responses are retried up to 3 times with exponential backoff.
type: io.kestra.plugin.clay.PushRowsExamples
Send rows to a Clay table
id: push_leads_to_clay
namespace: company.growth
tasks:
- id: push_to_clay
type: io.kestra.plugin.clay.PushRows
webhookUrl: "{{ secret('CLAY_WEBHOOK_URL') }}"
authToken: "{{ secret('CLAY_WEBHOOK_TOKEN') }}"
rows:
- email: alice@example.com
company: Acme
- email: bob@example.com
company: Globex
chunkSize: 100
failOnPartialError: true
Send rows produced by another task
id: push_query_results_to_clay
namespace: company.growth
tasks:
- id: query_contacts
type: io.kestra.plugin.jdbc.postgresql.Query
url: "jdbc:postgresql://localhost:5432/crm"
username: "{{ secret('PG_USER') }}"
password: "{{ secret('PG_PASSWORD') }}"
sql: "SELECT email, first_name, company FROM contacts WHERE enriched_at IS NULL"
fetchType: FETCH
- id: push_to_clay
type: io.kestra.plugin.clay.PushRows
webhookUrl: "{{ secret('CLAY_WEBHOOK_URL') }}"
rows: "{{ outputs.query_contacts.rows }}"
chunkSize: 100
Properties
rows *stringarrayobject
Structured data items, either as a map, a list of map, a URI, or a JSON string.
Structured data items can be defined in the following ways:
- A single item as a map (a document).
- A list of items as a list of maps (a list of documents).
- A URI, supported schemes are
kestrafor internal storage files,filefor host local files, andnsfilefor namespace files. - A JSON String that will then be serialized either as a single item or a list of items.
webhookUrl *string
Clay webhook URL
Absolute HTTP(S) URL generated for the Clay table webhook. Store it as a Kestra secret.
authToken string
Clay webhook authentication token
Optional token sent as a Bearer authorization header. Store it as a Kestra secret.
chunkSize integerstring
100Rows per HTTP request
Maximum rows in each request. Must be between 1 and 5,000. Defaults to 100. A single execution accepts at most 50,000 rows in total.
failOnPartialError booleanstring
trueFail when a chunk cannot be sent
When true, fail after the first chunk exhausts retries. When false, record the failed chunk and continue. Defaults to true.
Outputs
chunkCount integer
Number of logical chunks submitted
Logical chunks the input was split into using chunkSize. This is not the number of raw HTTP attempts: retries are not counted.
failedChunks array
Zero-based indices of failed chunks
Chunks that still failed after retries. Only populated when failOnPartialError is false.
rowCount integer
Number of rows accepted by Clay
Rows contained in the chunks Clay accepted. Rows from failed chunks are excluded.