---
title: "Update a contact"
method: PUT
path: "/v1/contacts/{contact}"
tags: ["Contacts"]
---

# Update a contact

`PUT /v1/contacts/{contact}`

## Path parameters

- `contact` integer, required

## Request body

- UpdateContactRequest
  - `first_name` string, nullable — Required for individual contacts. Optional for company contacts, which require company_name instead.
  - `last_name` string, nullable — Required for individual contacts. Optional for company contacts, which require company_name instead.
  - `middle_name` string, nullable
  - `preferred_name` string, nullable
  - `gender` 'male' | 'female' | 'other'
  - `pronouns` string, nullable
  - `suffix` string, nullable
  - `prefix` string, nullable
  - `type` 'individual' | 'company'
  - `company_name` string, nullable — Required for company contacts. Optional for individual contacts, which require first_name and last_name instead.
  - `employer` string, nullable
  - `company` string, nullable
  - `title` string, nullable
  - `twitter_url` string, nullable
  - `linkedin_url` string, nullable
  - `facebook_url` string, nullable
  - `tiktok_url` string, nullable
  - `website_url` string, uri, nullable
  - `note` string, nullable
  - `bio` string, nullable
  - `external_id` string, nullable
  - `contact_since` string, date-time, nullable
  - `dob` string
  - `email_opt_in` boolean, nullable
  - `sms_opt_in` boolean, nullable
  - `address_subscription` boolean, nullable
  - `custom_fields` string[], nullable
  - `tags` string[], nullable
  - `remove_emails` string[], nullable
  - `remove_phones` string[], nullable
  - `remove_address_ids` integer[], nullable
  - `emails` object[], nullable
    - `value` string, email, nullable
    - `type` string, nullable
    - `is_primary` boolean
  - `phones` object[], nullable
    - `value` string, nullable
    - `type` string, nullable
    - `is_primary` boolean
  - `addresses` object[], nullable
    - `id` integer
    - `address_1` string, nullable
    - `address_2` string, nullable
    - `city` string, nullable
    - `state` string, nullable
    - `zipcode` string, nullable
    - `country` string, nullable
    - `is_primary` boolean

## Response `200`

`ContactResource`

- ContactResource
  - `id` string, required
  - `external_id` string, required
  - `contact_since` string, required
  - `type` string, required
  - `prefix` string, required
  - `first_name` string, required
  - `preferred_name` string, required
  - `middle_name` string, required
  - `last_name` string, required
  - `suffix` string, required
  - `gender` string, required
  - `pronouns` string, required
  - `dob` string, required
  - `company` string, required
  - `employer` string, required
  - `company_name` string, required
  - `point_of_contact` PointOfContactResource
    - `id` string, required
    - `type` string, required
    - `prefix` string, required
    - `first_name` string, required
    - `middle_name` string, required
    - `last_name` string, required
    - `suffix` string, required
    - `gender` string, required
    - `pronouns` string, required
    - `dob` string, required
    - `employer` string, required
    - `title` string, required
    - `twitter_url` string, required
    - `linkedin_url` string, required
    - `facebook_url` string, required
    - `tiktok_url` string, required
    - `instagram_url` string, required
    - `website_url` string, required
    - `emails` object, required
    - `phones` object, required
    - `primary_email` string, required
    - `primary_phone` string, required
    - `is_email_subscribed` string, required
    - `is_phone_subscribed` string, required
    - `is_address_subscribed` string, required
    - `address_unsubscribed_at` string, required
    - `archived_at` string, required
    - `created_at` string, required
    - `updated_at` string, required
    - `first_time_supporter_at` string, required
  - `associated_companies` AssociatedCompanyResource[], nullable
    - `id` string, required
    - `type` string, required
    - `company_name` string, required
    - `name_display` string, required
    - `title` string, required
    - `twitter_url` string, required
    - `linkedin_url` string, required
    - `facebook_url` string, required
    - `tiktok_url` string, required
    - `instagram_url` string, required
    - `website_url` string, required
    - `image_url` string, nullable, required
    - `emails` object, required
    - `phones` object, required
    - `primary_email` string, required
    - `primary_phone` string, required
    - `is_email_subscribed` string, required
    - `is_phone_subscribed` string, required
    - `is_address_subscribed` string, required
    - `address_unsubscribed_at` string, required
    - `note` string, required
    - `addresses` AddressResource[], required
      - `id` integer, required
      - `account_id` integer, nullable, required
      - `name` string, nullable, required
      - `address_1` string, required
      - `address_2` string, nullable, required
      - `city` string, required
      - `state` string, nullable, required
      - `zipcode` string, nullable, required
      - `country` string, required
      - `type` string, required
      - `is_primary` boolean, required
      - `created_at` string, date-time, nullable, required
      - `updated_at` string, date-time, nullable, required
    - `primary_address` AddressResource, required
      - `id` integer, required
      - `account_id` integer, nullable, required
      - `name` string, nullable, required
      - `address_1` string, required
      - `address_2` string, nullable, required
      - `city` string, required
      - `state` string, nullable, required
      - `zipcode` string, nullable, required
      - `country` string, required
      - `type` string, required
      - `is_primary` boolean, required
      - `created_at` string, date-time, nullable, required
      - `updated_at` string, date-time, nullable, required
    - `archived_at` string, required
    - `created_at` string, required
    - `updated_at` string, required
    - `first_time_supporter_at` string, required
  - `title` string, required
  - `website_url` string, required
  - `twitter_url` string, required
  - `linkedin_url` string, required
  - `facebook_url` string, required
  - `tiktok_url` string, required
  - `instagram_url` string, required
  - `emails` EmailResource[], required
    - `type` string, nullable, required
    - `value` string, nullable, required
  - `phones` PhoneResource[], required
    - `type` string, nullable, required
    - `value` string, nullable, required
  - `primary_email` string, required
  - `primary_phone` string, required
  - `note` string, required
  - `addresses` AppHttpResourcesAPIAddressResource[], required
    - `address_1` string, required
    - `address_2` string, nullable, required
    - `city` string, required
    - `state` string, nullable, required
    - `zipcode` string, nullable, required
    - `country` string, required
    - `type` string, required
    - `is_primary` boolean, required
    - `created_at` string, date-time, nullable, required
    - `updated_at` string, date-time, nullable, required
  - `primary_address` AppHttpResourcesAPIAddressResource, required
    - `address_1` string, required
    - `address_2` string, nullable, required
    - `city` string, required
    - `state` string, nullable, required
    - `zipcode` string, nullable, required
    - `country` string, required
    - `type` string, required
    - `is_primary` boolean, required
    - `created_at` string, date-time, nullable, required
    - `updated_at` string, date-time, nullable, required
  - `last_donation_amount` string, required
  - `stats` object, required
    - `total_contributions` string, required
    - `recurring_contributions` string, required
  - `tags` string, required
  - `custom_fields` unknown[], required
    - unknown
  - `external_ids` ExternalIdResource[], required
    - `id` integer, required
    - `label` string, required
    - `external_id` string, required
    - `created_at` string, required
    - `updated_at` string, required
  - `is_email_subscribed` string, required
  - `is_phone_subscribed` string, required
  - `is_address_subscribed` string, required
  - `email_opt_in` string, required
  - `sms_opt_in` string, required
  - `address_unsubscribed_at` string, required
  - `archived_at` string, required
  - `created_at` string, required
  - `updated_at` string, required
  - `salutation_name` string, required

## Other responses

- `403` — Authorization error
- `404` — Not found
- `422` — Validation error

---

[API](https://skmtc.net/givebutter/apis/givebutter-api-documentation.md) · [All operations](https://skmtc.net/givebutter/apis/givebutter-api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/givebutter/givebutter-api-documentation/revisions/b788722bbaf6/schema)
