Skip to main content
TroopyDocs
Open Troopy
Troopy

API reference / CRM

Run a list's work column

Fills a work column over the list's rows, in batches, in the order they were added: every row, the rows named, or the first few to try it. Rows with a value are skipped unless redo; a cell a person filled is never changed. Answers 202 with the run (poll statusUrl), or with run null and rows 0 when there is nothing to do. With estimate, nothing runs: rows says how many it would work on.

post/api/v1/lists/{id}/columns/{column}/run

Authorization

HeaderAuthorization: Bearer <API key>
Or the headerX-API-Key: <API key>
API keyMake one in Troopy under Settings > API keys. It acts as you, in its workspace.
Scopescrm:write

Other ways to call it

CLItroopy lists run-column
MCP tooltroopy_run_list_column
Rate limit60 calls in 60 seconds, for each key
RetriesSend an Idempotency-Key header. A retry with the same key gets the first answer back, and the operation runs one time.

Path parameters

id*string

A 24-character id

column*string

At most 40 characters

Body

application/json
rowsarray<string>

Only these rows

At most 1000 items

firstinteger

Only the first this many rows it would work on: a try

At least 1 · At most 1000

wherearray<object>

Only rows that pass these filters

At most 10 items

3 properties
column*string

A column's id

At most 40 characters

op*enum<string>

isis_notcontainsgtltemptynot_empty

valuestring | number | boolean

What to compare with; none for empty and not_empty

redoboolean

Also the rows it filled before

Default false

estimateboolean

Say how many rows it would work on, and run nothing

Default false

Response

202 · application/json
data*object
2 properties
run*object | null
14 properties
id*string

A 24-character id

list*string

A 24-character id

column*string
status*enum<string>

running: poll statusUrl every few seconds

runningdonestoppedfailed

total*integer

Rows it works on

done*integer

Rows it filled

none*integer

Rows it found nothing for

failed*integer

Rows that failed

note*string | null

While it waits: what for, and until when

error*string | null
by*object

Who wrote it

3 properties
type*enum<string>

personagentapi

id*string
name*string
createdAt*string

ISO 8601 date and time

finishedAt*string | null
statusUrl*string
rows*integer

Rows it works on, or would

Errors

400 invalid_inputFix the field named in detail. Each operation's schema is in /api/v1/openapi.json.
401 unauthorizedSend an API key as `Authorization: Bearer tr_live_...`. Create one in Troopy under Settings.
403 forbiddenThe key lacks a scope this operation needs, or its owner lacks the role. detail says which; create a key with the scope, or ask an organization owner or admin.
404 not_foundCheck the path and any id in it. Every operation is listed in /api/v1/openapi.json.
409 conflictThis Idempotency-Key was used for a different request, or that request is still running. Use a new key for a new request.
429 rate_limitedWait the number of seconds in Retry-After, then retry.