Add or update user labels
Upsert one or more labels for a wallet. Accepts either a single label object or an array of labels. Labels with the same tag_id (and chain_id, if provided) are overwritten. Requires profiles:write scope.
Authorizations
Workspace API key (e.g. formo_xxx). Create one in the Formo dashboard under Team Settings > API Keys.
Headers
Optional unique value (e.g. a UUID v4) that lets you safely retry POST/PUT/PATCH/DELETE requests. The first request runs normally; subsequent requests with the same key replay the stored response (status + body) for 24 hours, so retries can never double-create or double-charge. Two concurrent requests with the same key return 409 IDEMPOTENCY_IN_PROGRESS. Generate a fresh key per logical operation.
255Path Parameters
Wallet address. Accepts an EVM (0x...) or Solana address, or an ENS name (e.g. vitalik.eth) which is resolved to an address.
Body
- object
- object[]
Label identifier (lowercased on write). e.g. vip, airdrop_eligible, coinbase.verified_account
Optional label value (e.g. tier name, country code)
Optional chain identifier the label applies to
Optional ISO-8601 event-time for the label. When provided, the label is recorded at this time instead of the server's current time; used to backfill historical values (e.g. an open_interest reading from a past week) so label-based retention can evaluate them at the right point in time. Must not be in the future. Defaults to server time when omitted.
Optional tombstone flag for backfilled removals. 1 records the row as a soft-delete (label removed) instead of a live value; pair it with a past timestamp to express "label removed at past time T" so point-in-time retention drops the wallet from that week. The future-timestamp guard still applies. Defaults to 0 (a live label) when omitted.
0, 1 Response
Labels upserted. Single label in → bare UserLabel; array in → array of UserLabel. Echoes the normalised entries (lowercased tag_id; the caller-supplied timestamp when present, otherwise the server write time).
- object
- object[]
Canonical user-label resource. Echoed back from upsert calls so callers can cache the normalised entry without a follow-up read.
Wallet address the label applies to
Label identifier (lowercased + trimmed on write)
Label value, empty string when omitted
Chain identifier, empty string when omitted
Origin of the label (e.g. 'import')
Event-time of the label: the caller-supplied timestamp when provided (retrospective backfill), otherwise the server's write time.