---
schema_version: "1"
id: 2510fba0c755f1d8997e3ed9dd1b3914bbabf0cc4baa58276a19902cdd4dd1a1
title: POST /contacts/v1/contacts/preferences
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/marketing-cloud/guides/mc-apis/addContactPreferences.md
canonical_url: https://developer.salesforce.com/docs/marketing/marketing-cloud/references/mc_rest_contacts/addContactPreferences.html
source_site: developer.salesforce.com
content_type: documentation
content_hash: d3cddaa7910eeddf767f36b6063cb83fc7df350a6a6cc2c7130a1ec6ff7e264a
products:
  - Marketing Cloud Engagement APIs and Programmatic Languages
  - Marketing Cloud
---
# POST /contacts/v1/contacts/preferences

## Overview

Adds consent management information to contact records for data protection and privacy concerns. The request can include multiple contact IDs in a single JSON payload. For best performance, use batches of contact ID values whenever possible.

### JSON Parameters

<!--complex table-->

| Name                          | Type    |              | Description                                                    |
| ----------------------------- | ------- | ------------ | -------------------------------------------------------------- |
| **items**                     | array   | **Required** | Array of contact IDs and other properties to add.              |
| **items.contactID**           | long    | **Required** | Unique ID for the contact.                                     |
| **items.hasOptedOutTracking** | boolean |              | Indicates whether a contact opted out of tracking information. |

### Responses

| Status  | Name                      | Type    | Description                                                                                                    |
| ------- | ------------------------- | ------- | -------------------------------------------------------------------------------------------------------------- |
| **200** | &nbsp;                    | &nbsp;  | **Added contact preferences.**                                                                                 |
| &nbsp;  | items                     | array   | Array of contact IDs and other properties to add.                                                              |
| &nbsp;  | items.contactID           | long    | Unique ID for the contact.                                                                                     |
| &nbsp;  | items.hasOptedOutTracking | boolean | Indicates whether a contact opted out of tracking information.                                                 |
| &nbsp;  | rowsInserted              | integer | Number of preferences inserted.                                                                                |
| &nbsp;  | rowsUpdated               | integer | Number of preferences updated.                                                                                 |
| &nbsp;  | rowsDeleted               | integer | Number of preferences deleted.                                                                                 |
| &nbsp;  | requestServiceMessageID   | guid    | Service message ID for the request.                                                                            |
| &nbsp;  | responseDateTime          | integer | Date and time of the retry response in UTC.                                                                    |
| &nbsp;  | resultMessages            | array   | Array of messages about the request. Includes details, such as resulttype and resultcode, about a bad request. |
| &nbsp;  | serviceMessageID          | guid    | Service message ID for the response.                                                                           |

## Usage

To issue a request, you must have these permissions.

- Contacts | Read
- Contacts | Write
- Contacts | Access

### Required Scope

- Documents and Images, Read and Write
- Saved Content, Read and Write

### Example Request

```js
Host: https://YOUR_SUBDOMAIN.rest.marketingcloudapis.com
POST /contacts/v1/contacts/preferences
Content-Type: application/json
Authorization: Bearer YOUR_ACCESS_TOKEN

{
   "items":[
      {
         "contactID":45678,
         "hasOptedOutTracking":false
      },
      {
         "contactID":12345,
         "hasOptedOutTracking":false
      }
   ]
}
```

### Example Response

```js
HTTP/1.1 200 OK

{
   "items":[
      {
         "contactID":45678,
         "hasOptedOutTracking":false
      },
      {
         "contactID":12345,
         "hasOptedOutTracking":false
      }
   ],
   "rowsInserted":2,
   "rowsUpdated":0,
   "rowsDeleted":0,
   "requestServiceMessageID":"4d08d1ff-1377-4f7b-9afe-937e3805c67f",
   "responseDateTime":"2019-01-22T16:17:32.0041492-06:00",
   "resultMessages":[

   ],
   "serviceMessageID":"47ec0720-81d1-4fee-8e03-d8a9d42af1c1"
}
```
