# Manage Opt IN /Opt OUT

This endpoint creates an OPTIN for a phone number or OPTOUT for a phone number.

Optin is a consent which is mandatory before sending whatsapp message to any number. Use this endpoint to store optin details for a number. Each and every message request will internally check optin first before attempting a actual message send.

If you want to optout for a phone number which was previously opted then use this endpoint.&#x20;

**URL:​** <https://waapi.pepipost.com/api/v2/consent/manage​/>&#x20;

**Method:** POST

#### Parameters

| Parameter   | Description                                                                                             | Data Type | Required |
| ----------- | ------------------------------------------------------------------------------------------------------- | --------- | -------- |
| type        | Action: optin or optout a phone number                                                                  | String    | Yes      |
| recipient   | <p>Phone number for optin. Phone number must be valid.<br>Phone number must include a country code.</p> | long      | Yes      |
| source      | Source of optin                                                                                         | String    | Yes      |
| user\_agent | User agent of a source                                                                                  | String    | No       |
| ip          | Ip of a source of optin. If mentioned than it must be valid ip                                          | String    | No       |

### Request Body

```
{ 
"type":"optin", 
"recipients":[ 
{ "recipient":"919869566055", 
"source":"WEB", 
"user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 
(KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36", 
"ip":"192.168.7.26" 
}]  
} 
 
```

#### In case of success

```
{ 
    "status": "success", 
    "message": "Optin successfully added." 
} 
  
```

Status is success means optin added successfully.

#### In case of failure

```
{ 
    "status": "failure", 
    "error": { 
        "code": "8006", 
        "message": " source cannot be empty." 
    } 
} 
```

According to error, code and message will change.

### Error Codes

| Code | Message                                            |
| ---- | -------------------------------------------------- |
| 8006 | type is required.                                  |
| 8006 | type is invalid. type must be optin/optout.        |
| 8006 | recipients is required.                            |
| 8006 | source cannot be empty.                            |
| 8006 | source value cannot be greater than 25 characters. |
| 8006 | Invalid recipient. Only numeric values allowed.    |
| 8006 | recipient value cannot be less than 10 digits.     |
| 8006 | recipient value cannot be greater than 15 digits.  |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://wadocs.pepipost.com/sending-message/consent-api/manage-opt-in-opt-out.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
