Skip to main content

Create or replace the flow's record action

PUT 

/v1/flows/:flow_id/record-action

The API face of the editor's Records card: what completing this flow does to a register. A full replacement; 201 when the flow had no action, 200 when it had one. Omitting register_id uses the flow's own backing register, created and named after the flow the first time and reused after that. record_id_key must be an option list of the flow's current version bound to that register; label_key and every excluded_keys entry must be fields of that version (any named component, including pickers). update or create_or_update with a null record_id_key is allowed, and means only sends started from a record can aim the flow. Field-referencing settings need a version WhatsApp has processed: while the flow's version is still pending they are 422 validation_failed (no_processed_version); a field-free action (mode alone) is accepted at any time. Other errors[] codes: unknown, not_register_bound, not_applicable (a record_id_key with create), not_a_flow_register (a CSV register). The current version is the published one when there is one, else the newest. No Idempotency-Key: the request is a full replace, so retrying after a lost response lands on the same state; the only difference a retry sees is 200 where the first attempt would have said 201. Requires flows:write.

Request​

Responses​

Existing action replaced.