For clean Markdown of any page, append .md to the page URL. For a complete documentation index, see https://developers.hellosign.com/api/unclaimed-draft/llms.txt. For full documentation content, see https://developers.hellosign.com/api/unclaimed-draft/llms-full.txt.

# Edit and Resend Unclaimed Draft

POST https://api.hellosign.com/v3/unclaimed_draft/edit_and_resend/{signature_request_id}
Content-Type: application/json

Creates a new signature request from an embedded request that can be edited prior to being sent to the recipients. Parameter `test_mode` can be edited prior to request. Signers can be edited in embedded editor. Requester's email address will remain unchanged if `requester_email_address` parameter is not set.

**NOTE:** Embedded unclaimed drafts can only be accessed in embedded iFrames whereas normal drafts can be used and accessed on Dropbox Sign.

Reference: https://developers.hellosign.com/api/unclaimed-draft/edit-and-resend

## OpenAPI Specification

```yaml
openapi: 3.1.0
info:
  title: Dropbox Sign API
  version: 1.0.0
paths:
  /unclaimed_draft/edit_and_resend/{signature_request_id}:
    post:
      operationId: edit-and-resend
      summary: Edit and Resend Unclaimed Draft
      description: >-
        Creates a new signature request from an embedded request that can be
        edited prior to being sent to the recipients. Parameter `test_mode` can
        be edited prior to request. Signers can be edited in embedded editor.
        Requester's email address will remain unchanged if
        `requester_email_address` parameter is not set.


        **NOTE:** Embedded unclaimed drafts can only be accessed in embedded
        iFrames whereas normal drafts can be used and accessed on Dropbox Sign.
      tags:
        - subpackage_unclaimedDraft
      parameters:
        - name: signature_request_id
          in: path
          description: The ID of the signature request to edit and resend.
          required: true
          schema:
            type: string
        - name: Authorization
          in: header
          description: Basic authentication
          required: true
          schema:
            type: string
      responses:
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnclaimedDraftCreateResponse'
        '400':
          description: failed_operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UnclaimedDraftEditAndResendRequest'
servers:
  - url: https://api.hellosign.com/v3
components:
  schemas:
    SubEditorOptions:
      type: object
      properties:
        allow_edit_signers:
          type: boolean
          default: false
          description: Allows requesters to edit the list of signers
        allow_edit_documents:
          type: boolean
          default: false
          description: Allows requesters to edit documents, including delete and add
      description: >-
        This allows the requester to specify editor options when a preparing a
        document
      title: SubEditorOptions
    UnclaimedDraftEditAndResendRequest:
      type: object
      properties:
        client_id:
          type: string
          description: >-
            Client id of the app used to create the draft. Used to apply the
            branding and callback url defined for the app.
        editor_options:
          $ref: '#/components/schemas/SubEditorOptions'
        is_for_embedded_signing:
          type: boolean
          description: >-
            The request created from this draft will also be signable in
            embedded mode if set to `true`.
        requester_email_address:
          type: string
          format: email
          description: >-
            The email address of the user that should be designated as the
            requester of this draft. If not set, original requester's email
            address will be used.
        requesting_redirect_url:
          type: string
          description: >-
            The URL you want signers redirected to after they successfully
            request a signature.
        show_progress_stepper:
          type: boolean
          default: true
          description: >-
            When only one step remains in the signature request process and this
            parameter is set to `false` then the progress stepper will be
            hidden.
        signing_redirect_url:
          type: string
          description: The URL you want signers redirected to after they successfully sign.
        test_mode:
          type: boolean
          default: false
          description: >-
            Whether this is a test, the signature request created from this
            draft will not be legally binding if set to `true`. Defaults to
            `false`.
      required:
        - client_id
      title: UnclaimedDraftEditAndResendRequest
    UnclaimedDraftResponse:
      type: object
      properties:
        signature_request_id:
          type:
            - string
            - 'null'
          description: >-
            The ID of the signature request that is represented by this
            UnclaimedDraft.
        claim_url:
          type: string
          description: The URL to be used to claim this UnclaimedDraft.
        signing_redirect_url:
          type:
            - string
            - 'null'
          description: The URL you want signers redirected to after they successfully sign.
        requesting_redirect_url:
          type:
            - string
            - 'null'
          description: >-
            The URL you want signers redirected to after they successfully
            request a signature (Will only be returned in the response if it is
            applicable to the request.).
        expires_at:
          type:
            - integer
            - 'null'
          description: When the link expires.
        test_mode:
          type: boolean
          description: >-
            Whether this is a test draft. Signature requests made from test
            drafts have no legal value.
      description: >-
        A group of documents that a user can take ownership of via the claim
        URL.
      title: UnclaimedDraftResponse
    WarningResponse:
      type: object
      properties:
        warning_msg:
          type: string
          description: Warning message
        warning_name:
          type: string
          description: Warning name
      required:
        - warning_msg
        - warning_name
      description: A list of warnings.
      title: WarningResponse
    UnclaimedDraftCreateResponse:
      type: object
      properties:
        unclaimed_draft:
          $ref: '#/components/schemas/UnclaimedDraftResponse'
        warnings:
          type: array
          items:
            $ref: '#/components/schemas/WarningResponse'
          description: A list of warnings.
      required:
        - unclaimed_draft
      title: UnclaimedDraftCreateResponse
    ErrorResponseError:
      type: object
      properties:
        error_msg:
          type: string
          description: Message describing an error.
        error_path:
          type: string
          description: Path at which an error occurred.
        error_name:
          type: string
          description: Name of the error.
      required:
        - error_msg
        - error_name
      description: Contains information about an error that occurred.
      title: ErrorResponseError
    ErrorResponse:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/ErrorResponseError'
      required:
        - error
      title: ErrorResponse
  securitySchemes:
    Basic:
      type: http
      scheme: basic
    Bearer:
      type: http
      scheme: bearer

```

## SDK Code Examples

```php PHP
<?php

namespace Dropbox\SignSandbox;

require_once __DIR__ . '/../vendor/autoload.php';

use SplFileObject;
use Dropbox;

$config = Dropbox\Sign\Configuration::getDefaultConfiguration();
$config->setUsername("YOUR_API_KEY");
// $config->setAccessToken("YOUR_ACCESS_TOKEN");

$unclaimed_draft_edit_and_resend_request = (new Dropbox\Sign\Model\UnclaimedDraftEditAndResendRequest())
    ->setClientId("b6b8e7deaf8f0b95c029dca049356d4a2cf9710a")
    ->setTestMode(false);

try {
    $response = (new Dropbox\Sign\Api\UnclaimedDraftApi(config: $config))->unclaimedDraftEditAndResend(
        signature_request_id: "fa5c8a0b0f492d768749333ad6fcc214c111e967",
        unclaimed_draft_edit_and_resend_request: $unclaimed_draft_edit_and_resend_request,
    );

    print_r($response);
} catch (Dropbox\Sign\ApiException $e) {
    echo "Exception when calling UnclaimedDraftApi#unclaimedDraftEditAndResend: {$e->getMessage()}";
}

```

```csharp C#
using System;
using System.Collections.Generic;
using System.IO;
using System.Text.Json;

using Dropbox.Sign.Api;
using Dropbox.Sign.Client;
using Dropbox.Sign.Model;

namespace Dropbox.SignSandbox;

public class UnclaimedDraftEditAndResendExample
{
    public static void Run()
    {
        var config = new Configuration();
        config.Username = "YOUR_API_KEY";
        // config.AccessToken = "YOUR_ACCESS_TOKEN";

        var unclaimedDraftEditAndResendRequest = new UnclaimedDraftEditAndResendRequest(
            clientId: "b6b8e7deaf8f0b95c029dca049356d4a2cf9710a",
            testMode: false
        );

        try
        {
            var response = new UnclaimedDraftApi(config).UnclaimedDraftEditAndResend(
                signatureRequestId: "fa5c8a0b0f492d768749333ad6fcc214c111e967",
                unclaimedDraftEditAndResendRequest: unclaimedDraftEditAndResendRequest
            );

            Console.WriteLine(response);
        }
        catch (ApiException e)
        {
            Console.WriteLine("Exception when calling UnclaimedDraftApi#UnclaimedDraftEditAndResend: " + e.Message);
            Console.WriteLine("Status Code: " + e.ErrorCode);
            Console.WriteLine(e.StackTrace);
        }
    }
}

```

```typescript TypeScript
import * as fs from 'fs';
import api from "@dropbox/sign"
import models from "@dropbox/sign"

const apiCaller = new api.UnclaimedDraftApi();
apiCaller.username = "YOUR_API_KEY";
// apiCaller.accessToken = "YOUR_ACCESS_TOKEN";

const unclaimedDraftEditAndResendRequest: models.UnclaimedDraftEditAndResendRequest = {
  clientId: "b6b8e7deaf8f0b95c029dca049356d4a2cf9710a",
  testMode: false,
};

apiCaller.unclaimedDraftEditAndResend(
  "fa5c8a0b0f492d768749333ad6fcc214c111e967", // signatureRequestId
  unclaimedDraftEditAndResendRequest,
).then(response => {
  console.log(response.body);
}).catch(error => {
  console.log("Exception when calling UnclaimedDraftApi#unclaimedDraftEditAndResend:");
  console.log(error.body);
});

```

```java Java
package com.dropbox.sign_sandbox;

import com.dropbox.sign.ApiException;
import com.dropbox.sign.Configuration;
import com.dropbox.sign.api.*;
import com.dropbox.sign.auth.*;
import com.dropbox.sign.JSON;
import com.dropbox.sign.model.*;

import java.io.File;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

public class UnclaimedDraftEditAndResendExample
{
    public static void main(String[] args)
    {
        var config = Configuration.getDefaultApiClient();
        ((HttpBasicAuth) config.getAuthentication("api_key")).setUsername("YOUR_API_KEY");
        // ((HttpBearerAuth) config.getAuthentication("oauth2")).setBearerToken("YOUR_ACCESS_TOKEN");

        var unclaimedDraftEditAndResendRequest = new UnclaimedDraftEditAndResendRequest();
        unclaimedDraftEditAndResendRequest.clientId("b6b8e7deaf8f0b95c029dca049356d4a2cf9710a");
        unclaimedDraftEditAndResendRequest.testMode(false);

        try
        {
            var response = new UnclaimedDraftApi(config).unclaimedDraftEditAndResend(
                "fa5c8a0b0f492d768749333ad6fcc214c111e967", // signatureRequestId
                unclaimedDraftEditAndResendRequest
            );

            System.out.println(response);
        } catch (ApiException e) {
            System.err.println("Exception when calling UnclaimedDraftApi#unclaimedDraftEditAndResend");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Reason: " + e.getResponseBody());
            System.err.println("Response headers: " + e.getResponseHeaders());
            e.printStackTrace();
        }
    }
}

```

```ruby Ruby
require "json"
require "dropbox-sign"

Dropbox::Sign.configure do |config|
    config.username = "YOUR_API_KEY"
    # config.access_token = "YOUR_ACCESS_TOKEN"
end

unclaimed_draft_edit_and_resend_request = Dropbox::Sign::UnclaimedDraftEditAndResendRequest.new
unclaimed_draft_edit_and_resend_request.client_id = "b6b8e7deaf8f0b95c029dca049356d4a2cf9710a"
unclaimed_draft_edit_and_resend_request.test_mode = false

begin
    response = Dropbox::Sign::UnclaimedDraftApi.new.unclaimed_draft_edit_and_resend(
        "fa5c8a0b0f492d768749333ad6fcc214c111e967", # signature_request_id
        unclaimed_draft_edit_and_resend_request,
    )

    p response
rescue Dropbox::Sign::ApiError => e
    puts "Exception when calling UnclaimedDraftApi#unclaimed_draft_edit_and_resend: #{e}"
end

```

```python Python
import json
from datetime import date, datetime
from pprint import pprint

from dropbox_sign import ApiClient, ApiException, Configuration, api, models

configuration = Configuration(
    username="YOUR_API_KEY",
    # access_token="YOUR_ACCESS_TOKEN",
)

with ApiClient(configuration) as api_client:
    unclaimed_draft_edit_and_resend_request = models.UnclaimedDraftEditAndResendRequest(
        client_id="b6b8e7deaf8f0b95c029dca049356d4a2cf9710a",
        test_mode=False,
    )

    try:
        response = api.UnclaimedDraftApi(api_client).unclaimed_draft_edit_and_resend(
            signature_request_id="fa5c8a0b0f492d768749333ad6fcc214c111e967",
            unclaimed_draft_edit_and_resend_request=unclaimed_draft_edit_and_resend_request,
        )

        pprint(response)
    except ApiException as e:
        print("Exception when calling UnclaimedDraftApi#unclaimed_draft_edit_and_resend: %s\n" % e)

```

```go Unclaimed Draft Edit and Resend
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.hellosign.com/v3/unclaimed_draft/edit_and_resend/fa5c8a0b0f492d768749333ad6fcc214c111e967"

	req, _ := http.NewRequest("POST", url, nil)

	req.SetBasicAuth("<apiKey>", "")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```swift Unclaimed Draft Edit and Resend
import Foundation

let credentials = Data("<apiKey>:".utf8).base64EncodedString()

let headers = [
  "Authorization": "Basic \(credentials)",
  "Content-Type": "application/json"
]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.hellosign.com/v3/unclaimed_draft/edit_and_resend/fa5c8a0b0f492d768749333ad6fcc214c111e967")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```

```php PHP
<?php

namespace Dropbox\SignSandbox;

require_once __DIR__ . '/../vendor/autoload.php';

use SplFileObject;
use Dropbox;

$config = Dropbox\Sign\Configuration::getDefaultConfiguration();
$config->setUsername("YOUR_API_KEY");
// $config->setAccessToken("YOUR_ACCESS_TOKEN");

$unclaimed_draft_edit_and_resend_request = (new Dropbox\Sign\Model\UnclaimedDraftEditAndResendRequest())
    ->setClientId("b6b8e7deaf8f0b95c029dca049356d4a2cf9710a")
    ->setTestMode(false);

try {
    $response = (new Dropbox\Sign\Api\UnclaimedDraftApi(config: $config))->unclaimedDraftEditAndResend(
        signature_request_id: "fa5c8a0b0f492d768749333ad6fcc214c111e967",
        unclaimed_draft_edit_and_resend_request: $unclaimed_draft_edit_and_resend_request,
    );

    print_r($response);
} catch (Dropbox\Sign\ApiException $e) {
    echo "Exception when calling UnclaimedDraftApi#unclaimedDraftEditAndResend: {$e->getMessage()}";
}

```

```csharp C#
using System;
using System.Collections.Generic;
using System.IO;
using System.Text.Json;

using Dropbox.Sign.Api;
using Dropbox.Sign.Client;
using Dropbox.Sign.Model;

namespace Dropbox.SignSandbox;

public class UnclaimedDraftEditAndResendExample
{
    public static void Run()
    {
        var config = new Configuration();
        config.Username = "YOUR_API_KEY";
        // config.AccessToken = "YOUR_ACCESS_TOKEN";

        var unclaimedDraftEditAndResendRequest = new UnclaimedDraftEditAndResendRequest(
            clientId: "b6b8e7deaf8f0b95c029dca049356d4a2cf9710a",
            testMode: false
        );

        try
        {
            var response = new UnclaimedDraftApi(config).UnclaimedDraftEditAndResend(
                signatureRequestId: "fa5c8a0b0f492d768749333ad6fcc214c111e967",
                unclaimedDraftEditAndResendRequest: unclaimedDraftEditAndResendRequest
            );

            Console.WriteLine(response);
        }
        catch (ApiException e)
        {
            Console.WriteLine("Exception when calling UnclaimedDraftApi#UnclaimedDraftEditAndResend: " + e.Message);
            Console.WriteLine("Status Code: " + e.ErrorCode);
            Console.WriteLine(e.StackTrace);
        }
    }
}

```

```typescript TypeScript
import * as fs from 'fs';
import api from "@dropbox/sign"
import models from "@dropbox/sign"

const apiCaller = new api.UnclaimedDraftApi();
apiCaller.username = "YOUR_API_KEY";
// apiCaller.accessToken = "YOUR_ACCESS_TOKEN";

const unclaimedDraftEditAndResendRequest: models.UnclaimedDraftEditAndResendRequest = {
  clientId: "b6b8e7deaf8f0b95c029dca049356d4a2cf9710a",
  testMode: false,
};

apiCaller.unclaimedDraftEditAndResend(
  "fa5c8a0b0f492d768749333ad6fcc214c111e967", // signatureRequestId
  unclaimedDraftEditAndResendRequest,
).then(response => {
  console.log(response.body);
}).catch(error => {
  console.log("Exception when calling UnclaimedDraftApi#unclaimedDraftEditAndResend:");
  console.log(error.body);
});

```

```java Java
package com.dropbox.sign_sandbox;

import com.dropbox.sign.ApiException;
import com.dropbox.sign.Configuration;
import com.dropbox.sign.api.*;
import com.dropbox.sign.auth.*;
import com.dropbox.sign.JSON;
import com.dropbox.sign.model.*;

import java.io.File;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

public class UnclaimedDraftEditAndResendExample
{
    public static void main(String[] args)
    {
        var config = Configuration.getDefaultApiClient();
        ((HttpBasicAuth) config.getAuthentication("api_key")).setUsername("YOUR_API_KEY");
        // ((HttpBearerAuth) config.getAuthentication("oauth2")).setBearerToken("YOUR_ACCESS_TOKEN");

        var unclaimedDraftEditAndResendRequest = new UnclaimedDraftEditAndResendRequest();
        unclaimedDraftEditAndResendRequest.clientId("b6b8e7deaf8f0b95c029dca049356d4a2cf9710a");
        unclaimedDraftEditAndResendRequest.testMode(false);

        try
        {
            var response = new UnclaimedDraftApi(config).unclaimedDraftEditAndResend(
                "fa5c8a0b0f492d768749333ad6fcc214c111e967", // signatureRequestId
                unclaimedDraftEditAndResendRequest
            );

            System.out.println(response);
        } catch (ApiException e) {
            System.err.println("Exception when calling UnclaimedDraftApi#unclaimedDraftEditAndResend");
            System.err.println("Status code: " + e.getCode());
            System.err.println("Reason: " + e.getResponseBody());
            System.err.println("Response headers: " + e.getResponseHeaders());
            e.printStackTrace();
        }
    }
}

```

```ruby Ruby
require "json"
require "dropbox-sign"

Dropbox::Sign.configure do |config|
    config.username = "YOUR_API_KEY"
    # config.access_token = "YOUR_ACCESS_TOKEN"
end

unclaimed_draft_edit_and_resend_request = Dropbox::Sign::UnclaimedDraftEditAndResendRequest.new
unclaimed_draft_edit_and_resend_request.client_id = "b6b8e7deaf8f0b95c029dca049356d4a2cf9710a"
unclaimed_draft_edit_and_resend_request.test_mode = false

begin
    response = Dropbox::Sign::UnclaimedDraftApi.new.unclaimed_draft_edit_and_resend(
        "fa5c8a0b0f492d768749333ad6fcc214c111e967", # signature_request_id
        unclaimed_draft_edit_and_resend_request,
    )

    p response
rescue Dropbox::Sign::ApiError => e
    puts "Exception when calling UnclaimedDraftApi#unclaimed_draft_edit_and_resend: #{e}"
end

```

```python Python
import json
from datetime import date, datetime
from pprint import pprint

from dropbox_sign import ApiClient, ApiException, Configuration, api, models

configuration = Configuration(
    username="YOUR_API_KEY",
    # access_token="YOUR_ACCESS_TOKEN",
)

with ApiClient(configuration) as api_client:
    unclaimed_draft_edit_and_resend_request = models.UnclaimedDraftEditAndResendRequest(
        client_id="b6b8e7deaf8f0b95c029dca049356d4a2cf9710a",
        test_mode=False,
    )

    try:
        response = api.UnclaimedDraftApi(api_client).unclaimed_draft_edit_and_resend(
            signature_request_id="fa5c8a0b0f492d768749333ad6fcc214c111e967",
            unclaimed_draft_edit_and_resend_request=unclaimed_draft_edit_and_resend_request,
        )

        pprint(response)
    except ApiException as e:
        print("Exception when calling UnclaimedDraftApi#unclaimed_draft_edit_and_resend: %s\n" % e)

```

```go Default Example
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.hellosign.com/v3/unclaimed_draft/edit_and_resend/fa5c8a0b0f492d768749333ad6fcc214c111e967"

	payload := strings.NewReader("{\n  \"client_id\": \"b6b8e7deaf8f0b95c029dca049356d4a2cf9710a\",\n  \"test_mode\": false\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.SetBasicAuth("<apiKey>", "")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```swift Default Example
import Foundation

let credentials = Data("<apiKey>:".utf8).base64EncodedString()

let headers = [
  "Authorization": "Basic \(credentials)",
  "Content-Type": "application/json"
]
let parameters = [
  "client_id": "b6b8e7deaf8f0b95c029dca049356d4a2cf9710a",
  "test_mode": false
] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.hellosign.com/v3/unclaimed_draft/edit_and_resend/fa5c8a0b0f492d768749333ad6fcc214c111e967")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```