# Change access code

{% patch /%}
{% path text="/v1/document/changeAccessCode" /%}

The sender can change the access code on an already authenticated document, and you must communicate with the recipient and pass on the code.

## Code snippet

Use the following sample code snippet to change the access code for the signer who has already been authenticated.

{% codetab id="codetab1" %}

cURL

```shell 
curl -X PATCH "https://api.boldsign.com/v1/document/changeAccessCode?documentId={documentId}&emailId=alexgayle@cubeflakes.com" 
     -H 'X-API-KEY: {your API key}' 
     -H "Content-Type: application/json" 
     -d "{\"AccessCode\": \"123456\"}"
```

C#

```csharp
var apiClient = new ApiClient("https://api.boldsign.com", "Your_API_Key");

var documentClient = new DocumentClient(apiClient);
documentClient.ChangeAccessCode("YOUR_DOCUMENT_ID", "david@cubeflakes.com", "123456");
```

Python

```python
import boldsign

configuration = boldsign.Configuration(host = "https://api.boldsign.com", api_key="YOUR_API_KEY")

with boldsign.ApiClient(configuration) as api_client:

    document_api = boldsign.DocumentApi(api_client)
	
    access_code_details = boldsign.AccessCodeDetails(accessCode="12345")
    
    document_api.change_access_code(document_id="YOUR_DOCUMENT_ID", access_code_details=access_code_details, email_id="david@cubeflakes.com")
```

PHP

```php
<?php require_once "vendor/autoload.php";

use BoldSign\Configuration;
use BoldSign\Api\DocumentApi;
use BoldSign\Model\AccessCodeDetails;

$config = new Configuration();
$config->setHost('https://api.boldsign.com');
$config->setApiKey('YOUR_API_KEY');

$document_api = new DocumentApi($config);

$access_code_details = new AccessCodeDetails();
$access_code_details->setAccessCode('123456');

$document_api->changeAccessCode($document_id = 'YOUR_DOCUMENT_ID', $access_code_details, $email_id = 'david@cubeflakes.com');
```

Java

```java
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");
		   
DocumentApi documentApi = new DocumentApi(client);

AccessCodeDetails accessCodeDetails = new AccessCodeDetails();
accessCodeDetails.setAccessCode("123456");

documentApi.changeAccessCode("YOUR_DOCUMENT_ID", accessCodeDetails, "alexgayle@cubeflakes.com", null);
```

NodeJS

```js
import { DocumentApi, AccessCodeDetails } from "boldsign";

const documentApi = new DocumentApi("https://api.boldsign.com");
documentApi.setApiKey("YOUR_API_KEY");

const accessCodeDetails = new AccessCodeDetails();
accessCodeDetails.accessCode = "12345";

documentApi.changeAccessCode("YOUR_DOCUMENT_ID", accessCodeDetails, "alexgayle@cubeflakes.com");
```

{% /codetab %}

If a document contains a repeated signer with a signing order, in that case, the recipient's signing order can be specified along with the signer's email to change the access code, as shown in the following code snippet.

{% codetab id="codetab2" %}

cURL

```shell 
curl -X PATCH "https://api.boldsign.com/v1/document/changeAccessCode?documentId={documentId}&emailId=alexgayle@cubeflakes.com&zOrder=2" 
    -H 'X-API-KEY: {your API key}' 
    -H "Content-Type: application/json" 
    -d "{\"AccessCode\": \"123456\"}"
```

C#

```csharp
var apiClient = new ApiClient("https://api.boldsign.com", "Your_API_Key");

var documentClient = new DocumentClient(apiClient);
documentClient.ChangeAccessCode("YOUR_DOCUMENT_ID", "david@cubeflakes.com", "123456", 1);
```

Python

```python
import boldsign

configuration = boldsign.Configuration(host = "https://api.boldsign.com", api_key="YOUR_API_KEY")

with boldsign.ApiClient(configuration) as api_client:

    document_api = boldsign.DocumentApi(api_client)
	
    access_code_details = boldsign.AccessCodeDetails(accessCode="123456")
    
    document_api.change_access_code(document_id="YOUR_DOCUMENT_ID", access_code_details=access_code_details, email_id="david@cubeflakes.com", z_order=1)
```

PHP

```php
<?php require_once "vendor/autoload.php";

use BoldSign\Configuration;
use BoldSign\Api\DocumentApi;
use BoldSign\Model\AccessCodeDetails;

$config = new Configuration();
$config->setHost('https://api.boldsign.com');
$config->setApiKey('YOUR_API_KEY');

$document_api = new DocumentApi($config);

$access_code_details = new AccessCodeDetails();
$access_code_details->setAccessCode('123456');

$document_api->changeAccessCode($document_id = 'YOUR_DOCUMENT_ID', $access_code_details, $email_id = 'david@cubeflakes.com', $z_order = 1);
```

Java

```java
ApiClient client = Configuration.getDefaultApiClient();
client.setBasePath("https://api.boldsign.com");
client.setApiKey("YOUR_API_KEY");
			
DocumentApi documentApi = new DocumentApi(client);

AccessCodeDetails accessCodeDetails = new AccessCodeDetails();
accessCodeDetails.setAccessCode("123456");

documentApi.changeAccessCode("YOUR_DOCUMENT_ID", accessCodeDetails, "alexgayle@cubeflakes.com", 1);
```

NodeJS

```js
import { AccessCodeDetails, DocumentApi } from "boldsign";

const documentApi = new DocumentApi("https://api.boldsign.com");
documentApi.setApiKey("YOUR_API_KEY");

const accessCodeDetails = new AccessCodeDetails();
accessCodeDetails.accessCode = "123456";

documentApi.changeAccessCode("YOUR_DOCUMENT_ID", accessCodeDetails, "alexgayle@cubeflakes.com", 1);
```

{% /codetab %}

## Query parameters

{% nestedtable %}

- {% arguments name="documentId" /%}{% batch datatype="string" /%}{% required /%}
- ID of the requested document.

---

- {% arguments name="emailId" /%}{% batch datatype="string" /%}{% required /%}
- Email address of the signer.

---

- {% arguments name="zOrder" /%}{% batch datatype="Int" /%}
- A number that denotes the signer's order, which targets the given email address present in the recipient list.

{% /nestedtable %}

## Request body

{% nestedtable %}

- {% arguments name="AccessCode" /%}{% batch datatype="string" /%}{% required /%}  
- A set of alphanumeric characters will be specified by the sender that the recipient wants to change.

---

- {% arguments name="OnBehalfOf" /%}{% batch datatype="string" /%} 
- If the document is created on behalf of the sender, the sender's identity email address must be specified.

{% /nestedtable %}

## Example response

***204 No Content***
