Create or Update Contact
Create or update a contact. This is an upsert keyed on email (within the workspace): if a contact with the same email exists it is updated, otherwise it is created. On an existing contact, scalar fields are only filled where they are currently empty (customer-entered values are preserved), and tags are attached only when the contact is newly created. The response status field tells you which happened. Contacts created through the API key are stamped primary_source: "public_api".
status field (created, updated, or unchanged) tells you which happened, so integrations can branch without a separate lookup.
On an existing contact, scalar fields are only filled where they are currently empty — customer-entered values are never overwritten — and tags are attached only when the contact is newly created.Authorizations
HTTP Basic Authentication using API Key and Secret Key. The credentials should be Base64 encoded in the format 'api_key:secret_key'. You can obtain your API Key and Secret Key from Feedspace → Automation → API (https://app.feedspace.io/automation/api).
Body
Contact email. The upsert key; lowercased and trimmed.
2552555010010010020255Date the contact was added (YYYY-MM-DD). Common date formats are accepted and normalised.
Arbitrary key/value metadata from your system. Merged per key on update (existing keys are preserved).
Tag IDs to attach (must exist in this workspace). Applied only when the contact is newly created.
Tag names to attach; missing tags are auto-created. Applied only when the contact is newly created.
100Override the source stamp. Defaults to public_api for API-key requests. Locked to the first value; never changed on later upserts.
csv, public_api, review_submission, manual, social_import, stripe