Batch update user properties
Set first-party properties for up to 100 wallets in one request. Each item is a flat object with a required address (literal EVM 0x... or Solana; ENS names are NOT resolved here) plus any of the allowed profile keys. Unknown keys are ignored; a row left with no valid keys, or with an invalid address, is quarantined (skipped and reported) rather than failing the batch. A request where every row is invalid returns 400. Requires profiles:write scope.
Authorizations
Workspace API key (e.g. formo_xxx). Create one in the Formo dashboard under Team Settings > API Keys.
Body
1 - 100 elementsWallet address. Literal EVM (0x...) or Solana address only; ENS names are not resolved in batch requests.
Response
Batch processed. Returns counts of forwarded vs quarantined rows, with a per-row errors entry for each quarantined row.
Acknowledgement for a batch write. successful_rows counts rows accepted and forwarded to ingest after a 2xx (ingestion is async/eventually-consistent; there is no follow-up read). quarantined_rows counts rows skipped for an invalid address or no valid keys; errors (omitted when nothing was quarantined) maps each skipped row back to its request index.