# 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​/](https://waapi.pepipost.com/api/v2/consent/manage%E2%80%8B/)&#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.  |
