# Send Documents with Multiple CC Recipients

The CC option is used to send a copy of the document to non-signers. The recipient added in CC will receive notifications when a signer performs any action on the document. The CC recipients can view and download the document, but they cannot sign it.

This article provides step-by-step guidance on how to set multiple `CCs` (Carbon Copies) for signers in documents using the BoldSign API.

Here are code examples you can use to set multiple `CCs` for signer:

## Code snippet
{% codetab %}
cURL
```shell 
curl -X 'POST' \
  'https://api.boldsign.com/v1/document/send' \
  -H 'accept: application/json' \
  -H 'X-API-KEY: {your API key}' \
  -H 'Content-Type: multipart/form-data' \
  -F 'CC={
  "emailAddress": "DavidJames@gmail.com",
  "emailAddress": "JamesThomas@gmail.com",
  "emailAddress": "ClaraThomas@.gmail.com",
  "emailAddress": "DianaDavid@gmail.com"
}' \ 
  -F 'Signers={
  "name": "David",
  "emailAddress": "david@cubeflakes.com",
   "formFields": [
   {
     "id": "Sign",
     "fieldType": "Signature",
     "pageNumber": 1,
     "bounds": {
       "x": 50,
       "y": 100,
       "width": 100,
       "height": 60
     },
     "isRequired": true
   }
 ],
  "locale": "EN"
}' \
  -F 'Files={your file}' \
```

C#

```csharp
var apiClient = new ApiClient("https://api.boldsign.com", "{Your API key}");
var documentClient = new DocumentClient(apiClient);

var documentFilePath = new DocumentFilePath
{
    ContentType = "application/pdf",
    FilePath = "{Your File path}"
};

var filesToUpload = new List<IDocumentFile>
{
    documentFilePath,
};

var signatureField = new FormField(
                id: "signature",
                isRequired: true,
                type: FieldType.Signature,
                pageNumber: 1,
                bounds: new Rectangle(x: 100, y: 600, width: 125, height: 25))

var formFieldCollections = new List<FormField>()
{
    signatureField
};

var signer = new DocumentSigner(
    signerName: "David",
    signerEmail: "david@cubeflakes.com",
    formFields: formFieldCollections,
    locale: Locales.EN);

var documentSigners = new List<DocumentSigner>()
{
    signer
};

var sendForSign = new SendForSign()
{
    Signers = documentSigners,
    CC = new List<DocumentCC>()
    {
        new DocumentCC(emailAddress: "DavidJames@gmail.com"),
        new DocumentCC(emailAddress: "JamesThomas@gmail.com"),
        new DocumentCC(emailAddress: "ClaraThomas@.gmail.com"),
        new DocumentCC(emailAddress: "DianaDavid@gmail.com"),
    },
    Title = "Sample Document",
    Files = filesToUpload
};
var documentCreated = documentClient.SendDocument(sendForSign);
Console.WriteLine(documentCreated.DocumentId);

```

Python

```python
import requests
import json

url = "https://api.boldsign.com/v1/document/send"

signer_data = {
    "name": "hanky",
    "emailAddress": "hankyWhites@gmail.com",
    "signerType": "Signer",
    "formFields": [
    {
      "id": "Signature",
      "type": "FieldType.Signature",
      "pageNumber": 1,
      "bounds": {
        "x": 100,
        "y": 100,
        "width": 200,
        "height": 100
      },
      "isRequired": True,
     
    }
    ],
    "locale": "EN"
}

cc_recipients = {"emailAddress": "JamesThomas@gmail.com"}
cc_recipients = {"emailAddress": "ClaraThomas@.gmail.com"}
cc_recipients = {"emailAddress": "DavidJames@gmail.com"}
cc_recipients = {"emailAddress": "DianaDavid@gmail.com"}

payload = {
    'Signers': json.dumps(signer_data),
    'Title': "Sample Document",
    'CC': json.dumps(cc_recipients)
}

files = [
    ('Files', ('{Your file name}', open('{Your file path}', 'rb'), 'application/pdf'))
]

headers = {
    'accept': 'application/json',
    'X-API-KEY': '{Your API key}'
}

response = requests.post(url, headers=headers, data=payload, files=files)

print(response.text)
```

NodeJS

```js

const axios = require('axios');
const FormData = require('form-data');
const fs = require('fs');
let data = new FormData();

data.append('Signers', '{\r\n  "name": "David",\r\n  "emailAddress": "david@cubeflakes.com",\r\n  "signerType": "Signer",\r\n  "signerRole": "Signer",\r\n  "formFields": [\r\n    {\r\n      "id": "Signature",\r\n    "Type": "FieldType.Signature", \r\n "pageNumber": 1,\r\n      "bounds": {\r\n        "x": 100,\r\n        "y": 100,\r\n        "width": 200,\r\n        "height": 100\r\n      },\r\n "isRequired": true\r\n}\r\n  ],\r\n  "locale": "EN"\r\n}');

data.append('Files', fs.createReadStream('{Your file path}'));
data.append('CC', JSON.stringify({"emailAddress": "DavidJames@gmail.com"}));
data.append('CC', JSON.stringify({"emailAddress": "JamesThomas@gmail.com"}));
data.append('CC', JSON.stringify({"emailAddress": "ClaraThomas@.gmail.com"}));
data.append('CC', JSON.stringify({"emailAddress": "DianaDavid@gmail.com"}));

data.append('Title', "Sample Document");

let config = {
  method: 'post',
  maxBodyLength: Infinity,
  url: 'https://api.boldsign.com/v1/document/send',
  headers: { 
    'accept': 'application/json', 
    'X-API-KEY': '{Your API key}', 
    ...data.getHeaders()
  },
  data : data
};

axios.request(config)
.then((response) => {
  console.log(JSON.stringify(response.data));
})
.catch((error) => {
  console.log(error);
});

```

{% /codetab %}

In the above examples, update `CC` with the email addresses of the CCs. After executing the above code, the document will be created, and notifications will be sent to the CC email addresses.
