Skip to main content
PATCH
/
v1
/
contacts
/
:id
Update Contact
curl --request PATCH \
  --url https://api.example.com/v1/contacts/:id \
  --header 'Content-Type: application/json' \
  --data '
{
  "full_name": "<string>",
  "email": "<string>",
  "phone": "<string>",
  "job_title": "<string>",
  "company_name": "<string>",
  "linkedin_url": "<string>",
  "notes": "<string>"
}
'
{
  "data": {
    "id": "<string>",
    "full_name": "<string>",
    "updated_date": "<string>"
  }
}

Request

Path Parameters

id
string
required
Contact UUID

Headers

Authorization: Bearer wbk_your_api_key_here
Content-Type: application/json

Body Parameters

Only include fields you want to update. Omitted fields will remain unchanged.
full_name
string
Contact’s full name
email
string
Email address
phone
string
Phone number with country code
job_title
string
Job title or position
company_name
string
Company name
linkedin_url
string
LinkedIn profile URL
notes
string
Additional notes (appends to existing notes)

Response

data
object
The updated contact object
curl -X PATCH \
  https://nbkxaqxwvkgbddekwsma.supabase.co/functions/v1/api-gateway/v1/contacts/123e4567-e89b-12d3-a456-426614174000 \
  -H "Authorization: Bearer wbk_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "job_title": "Chief Legal Officer",
    "notes": "Promoted to CLO in Q1 2026"
  }'

Example Response

{
  "data": {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "full_name": "Jane Doe",
    "email": "jane@example.com",
    "job_title": "Chief Legal Officer",
    "company_name": "Acme Legal",
    "notes": "Met at conference. Interested in legal automation tools.\nPromoted to CLO in Q1 2026",
    "updated_date": "2026-02-24T15:00:00Z"
  }
}

Partial Updates

You can update a single field without affecting others:
# Update only the phone number
curl -X PATCH \
  https://nbkxaqxwvkgbddekwsma.supabase.co/functions/v1/api-gateway/v1/contacts/123e4567 \
  -H "Authorization: Bearer wbk_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{"phone": "+1-555-9999"}'

Errors

StatusCodeDescription
400validation_errorInvalid field format
401invalid_keyInvalid API key
403insufficient_permissionsMissing write permission
404not_foundContact not found
429rate_limitedRate limit exceeded

Example Validation Error

{
  "error": {
    "code": "validation_error",
    "message": "Invalid request parameters",
    "details": {
      "fields": {
        "email": "Invalid email format"
      }
    }
  }
}