Skip to main content
PATCH
Rename or complete a contact

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

x-api-key
string | null

Path Parameters

contact_id
string<uuid>
required

Body

application/json

Request to update a contact.

The display name is freely mutable. Requisites, address and relationship are fill-only: a field that is already set on the contact keeps its value, and only the still-empty ones are filled in. Recreating the contact to add a missing field is what produced duplicate rows — the requisites identity changes with the added field, so the upsert misses the original and its provider account ids are stranded on the deleted row.

name
string | null
Required string length: 1 - 200
address
UserAddress · object | null

Address schema for user.

Canonical field names: street_address, address_line_2, city, state, country, zip. Accepts legacy Align/IBAN field names (street_line_1, street_line_2, postal_code) for backward compatibility with existing JSONB data.

relationship
enum<string> | null

How a payout contact relates to the user.

The vocabulary mirrors Swipelux's recipient relationships so the common values project onto their API unchanged, but this is our own domain type: SELF marks a first-party payout to the user's own account at another bank and has no Swipelux counterpart. Providers own that projection — see SwipeluxRecipients._recipient_relationship — so nothing here depends on a provider, and no provider enum has to carry a value it cannot accept.

Available options:
employee,
contractor,
vendor,
subsidiary,
merchant,
customer,
landlord,
family,
other,
self
bic
string | null

BIC for an IBAN contact saved without one — Align requires it on IBAN beneficiaries. Ignored when the contact already has a BIC.

bankAddress
BankAddressDetails · object | null

The beneficiary bank's own address (street + city), required by the banking provider payouts. Parts the contact already carries are kept; missing ones are filled, so a legacy free-text address can gain its city.

Response

Successful Response