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.

# Create Unclaimed Draft

POST https://api.hellosign.com/v3/unclaimed_draft/create
Content-Type: application/json

Creates a new Draft that can be claimed using the claim URL. The first authenticated user to access the URL will claim the Draft and will be shown either the "Sign and send" or the "Request signature" page with the Draft loaded. Subsequent access to the claim URL will result in a 404.

Reference: https://developers.hellosign.com/api/unclaimed-draft/create

## 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");

$signers_1 = (new Dropbox\Sign\Model\SubUnclaimedDraftSigner())
    ->setName("Jack")
    ->setEmailAddress("jack@example.com")
    ->setOrder(0);

$signers = [
    $signers_1,
];

$unclaimed_draft_create_request = (new Dropbox\Sign\Model\UnclaimedDraftCreateRequest())
    ->setType(Dropbox\Sign\Model\UnclaimedDraftCreateRequest::TYPE_REQUEST_SIGNATURE)
    ->setTestMode(true)
    ->setFiles([
    ])
    ->setSigners($signers);

try {
    $response = (new Dropbox\Sign\Api\UnclaimedDraftApi(config: $config))->unclaimedDraftCreate(
        unclaimed_draft_create_request: $unclaimed_draft_create_request,
    );

    print_r($response);
} catch (Dropbox\Sign\ApiException $e) {
    echo "Exception when calling UnclaimedDraftApi#unclaimedDraftCreate: {$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 UnclaimedDraftCreateExample
{
    public static void Run()
    {
        var config = new Configuration();
        config.Username = "YOUR_API_KEY";
        // config.AccessToken = "YOUR_ACCESS_TOKEN";

        var signers1 = new SubUnclaimedDraftSigner(
            name: "Jack",
            emailAddress: "jack@example.com",
            order: 0
        );

        var signers = new List<SubUnclaimedDraftSigner>
        {
            signers1,
        };

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest(
            type: UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
            testMode: true,
            files: new List<Stream>
            {
                new FileStream(
                    path: "./example_signature_request.pdf",
                    mode: FileMode.Open
                ),
            },
            signers: signers
        );

        try
        {
            var response = new UnclaimedDraftApi(config).UnclaimedDraftCreate(
                unclaimedDraftCreateRequest: unclaimedDraftCreateRequest
            );

            Console.WriteLine(response);
        }
        catch (ApiException e)
        {
            Console.WriteLine("Exception when calling UnclaimedDraftApi#UnclaimedDraftCreate: " + 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 signers1: models.SubUnclaimedDraftSigner = {
  name: "Jack",
  emailAddress: "jack@example.com",
  order: 0,
};

const signers = [
  signers1,
];

const unclaimedDraftCreateRequest: models.UnclaimedDraftCreateRequest = {
  type: models.UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
  testMode: true,
  files: [
    fs.createReadStream("./example_signature_request.pdf"),
  ],
  signers: signers,
};

apiCaller.unclaimedDraftCreate(
  unclaimedDraftCreateRequest,
).then(response => {
  console.log(response.body);
}).catch(error => {
  console.log("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate:");
  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 UnclaimedDraftCreateExample
{
    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 signers1 = new SubUnclaimedDraftSigner();
        signers1.name("Jack");
        signers1.emailAddress("jack@example.com");
        signers1.order(0);

        var signers = new ArrayList<SubUnclaimedDraftSigner>(List.of (
            signers1
        ));

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest();
        unclaimedDraftCreateRequest.type(UnclaimedDraftCreateRequest.TypeEnum.REQUEST_SIGNATURE);
        unclaimedDraftCreateRequest.testMode(true);
        unclaimedDraftCreateRequest.files(List.of (
            new File("./example_signature_request.pdf")
        ));
        unclaimedDraftCreateRequest.signers(signers);

        try
        {
            var response = new UnclaimedDraftApi(config).unclaimedDraftCreate(
                unclaimedDraftCreateRequest
            );

            System.out.println(response);
        } catch (ApiException e) {
            System.err.println("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate");
            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

signers_1 = Dropbox::Sign::SubUnclaimedDraftSigner.new
signers_1.name = "Jack"
signers_1.email_address = "jack@example.com"
signers_1.order = 0

signers = [
    signers_1,
]

unclaimed_draft_create_request = Dropbox::Sign::UnclaimedDraftCreateRequest.new
unclaimed_draft_create_request.type = "request_signature"
unclaimed_draft_create_request.test_mode = true
unclaimed_draft_create_request.files = [
    File.new("./example_signature_request.pdf", "r"),
]
unclaimed_draft_create_request.signers = signers

begin
    response = Dropbox::Sign::UnclaimedDraftApi.new.unclaimed_draft_create(
        unclaimed_draft_create_request,
    )

    p response
rescue Dropbox::Sign::ApiError => e
    puts "Exception when calling UnclaimedDraftApi#unclaimed_draft_create: #{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:
    signers_1 = models.SubUnclaimedDraftSigner(
        name="Jack",
        email_address="jack@example.com",
        order=0,
    )

    signers = [
        signers_1,
    ]

    unclaimed_draft_create_request = models.UnclaimedDraftCreateRequest(
        type="request_signature",
        test_mode=True,
        files=[
            open("./example_signature_request.pdf", "rb").read(),
        ],
        signers=signers,
    )

    try:
        response = api.UnclaimedDraftApi(api_client).unclaimed_draft_create(
            unclaimed_draft_create_request=unclaimed_draft_create_request,
        )

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

```

```go Unclaimed Draft Create
package main

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

func main() {

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

	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 Create
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/create")! 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");

$signers_1 = (new Dropbox\Sign\Model\SubUnclaimedDraftSigner())
    ->setName("Jack")
    ->setEmailAddress("jack@example.com")
    ->setOrder(0);

$signers = [
    $signers_1,
];

$unclaimed_draft_create_request = (new Dropbox\Sign\Model\UnclaimedDraftCreateRequest())
    ->setType(Dropbox\Sign\Model\UnclaimedDraftCreateRequest::TYPE_REQUEST_SIGNATURE)
    ->setTestMode(true)
    ->setFiles([
    ])
    ->setSigners($signers);

try {
    $response = (new Dropbox\Sign\Api\UnclaimedDraftApi(config: $config))->unclaimedDraftCreate(
        unclaimed_draft_create_request: $unclaimed_draft_create_request,
    );

    print_r($response);
} catch (Dropbox\Sign\ApiException $e) {
    echo "Exception when calling UnclaimedDraftApi#unclaimedDraftCreate: {$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 UnclaimedDraftCreateExample
{
    public static void Run()
    {
        var config = new Configuration();
        config.Username = "YOUR_API_KEY";
        // config.AccessToken = "YOUR_ACCESS_TOKEN";

        var signers1 = new SubUnclaimedDraftSigner(
            name: "Jack",
            emailAddress: "jack@example.com",
            order: 0
        );

        var signers = new List<SubUnclaimedDraftSigner>
        {
            signers1,
        };

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest(
            type: UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
            testMode: true,
            files: new List<Stream>
            {
                new FileStream(
                    path: "./example_signature_request.pdf",
                    mode: FileMode.Open
                ),
            },
            signers: signers
        );

        try
        {
            var response = new UnclaimedDraftApi(config).UnclaimedDraftCreate(
                unclaimedDraftCreateRequest: unclaimedDraftCreateRequest
            );

            Console.WriteLine(response);
        }
        catch (ApiException e)
        {
            Console.WriteLine("Exception when calling UnclaimedDraftApi#UnclaimedDraftCreate: " + 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 signers1: models.SubUnclaimedDraftSigner = {
  name: "Jack",
  emailAddress: "jack@example.com",
  order: 0,
};

const signers = [
  signers1,
];

const unclaimedDraftCreateRequest: models.UnclaimedDraftCreateRequest = {
  type: models.UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
  testMode: true,
  files: [
    fs.createReadStream("./example_signature_request.pdf"),
  ],
  signers: signers,
};

apiCaller.unclaimedDraftCreate(
  unclaimedDraftCreateRequest,
).then(response => {
  console.log(response.body);
}).catch(error => {
  console.log("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate:");
  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 UnclaimedDraftCreateExample
{
    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 signers1 = new SubUnclaimedDraftSigner();
        signers1.name("Jack");
        signers1.emailAddress("jack@example.com");
        signers1.order(0);

        var signers = new ArrayList<SubUnclaimedDraftSigner>(List.of (
            signers1
        ));

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest();
        unclaimedDraftCreateRequest.type(UnclaimedDraftCreateRequest.TypeEnum.REQUEST_SIGNATURE);
        unclaimedDraftCreateRequest.testMode(true);
        unclaimedDraftCreateRequest.files(List.of (
            new File("./example_signature_request.pdf")
        ));
        unclaimedDraftCreateRequest.signers(signers);

        try
        {
            var response = new UnclaimedDraftApi(config).unclaimedDraftCreate(
                unclaimedDraftCreateRequest
            );

            System.out.println(response);
        } catch (ApiException e) {
            System.err.println("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate");
            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

signers_1 = Dropbox::Sign::SubUnclaimedDraftSigner.new
signers_1.name = "Jack"
signers_1.email_address = "jack@example.com"
signers_1.order = 0

signers = [
    signers_1,
]

unclaimed_draft_create_request = Dropbox::Sign::UnclaimedDraftCreateRequest.new
unclaimed_draft_create_request.type = "request_signature"
unclaimed_draft_create_request.test_mode = true
unclaimed_draft_create_request.files = [
    File.new("./example_signature_request.pdf", "r"),
]
unclaimed_draft_create_request.signers = signers

begin
    response = Dropbox::Sign::UnclaimedDraftApi.new.unclaimed_draft_create(
        unclaimed_draft_create_request,
    )

    p response
rescue Dropbox::Sign::ApiError => e
    puts "Exception when calling UnclaimedDraftApi#unclaimed_draft_create: #{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:
    signers_1 = models.SubUnclaimedDraftSigner(
        name="Jack",
        email_address="jack@example.com",
        order=0,
    )

    signers = [
        signers_1,
    ]

    unclaimed_draft_create_request = models.UnclaimedDraftCreateRequest(
        type="request_signature",
        test_mode=True,
        files=[
            open("./example_signature_request.pdf", "rb").read(),
        ],
        signers=signers,
    )

    try:
        response = api.UnclaimedDraftApi(api_client).unclaimed_draft_create(
            unclaimed_draft_create_request=unclaimed_draft_create_request,
        )

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

```

```go Default Example
package main

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

func main() {

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

	payload := strings.NewReader("{\n  \"type\": \"request_signature\",\n  \"file_urls\": [\n    \"https://www.dropbox.com/s/ad9qnhbrjjn64tu/mutual-NDA-example.pdf?dl=1\"\n  ],\n  \"signers\": [\n    {\n      \"email_address\": \"jack@example.com\",\n      \"name\": \"Jack\",\n      \"order\": 0\n    }\n  ],\n  \"test_mode\": true\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 = [
  "type": "request_signature",
  "file_urls": ["https://www.dropbox.com/s/ad9qnhbrjjn64tu/mutual-NDA-example.pdf?dl=1"],
  "signers": [
    [
      "email_address": "jack@example.com",
      "name": "Jack",
      "order": 0
    ]
  ],
  "test_mode": true
] as [String : Any]

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

let request = NSMutableURLRequest(url: NSURL(string: "https://api.hellosign.com/v3/unclaimed_draft/create")! 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()
```

```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");

$signers_1 = (new Dropbox\Sign\Model\SubUnclaimedDraftSigner())
    ->setName("Jack")
    ->setEmailAddress("jack@example.com")
    ->setOrder(0);

$signers = [
    $signers_1,
];

$unclaimed_draft_create_request = (new Dropbox\Sign\Model\UnclaimedDraftCreateRequest())
    ->setType(Dropbox\Sign\Model\UnclaimedDraftCreateRequest::TYPE_REQUEST_SIGNATURE)
    ->setTestMode(true)
    ->setFiles([
    ])
    ->setSigners($signers);

try {
    $response = (new Dropbox\Sign\Api\UnclaimedDraftApi(config: $config))->unclaimedDraftCreate(
        unclaimed_draft_create_request: $unclaimed_draft_create_request,
    );

    print_r($response);
} catch (Dropbox\Sign\ApiException $e) {
    echo "Exception when calling UnclaimedDraftApi#unclaimedDraftCreate: {$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 UnclaimedDraftCreateExample
{
    public static void Run()
    {
        var config = new Configuration();
        config.Username = "YOUR_API_KEY";
        // config.AccessToken = "YOUR_ACCESS_TOKEN";

        var signers1 = new SubUnclaimedDraftSigner(
            name: "Jack",
            emailAddress: "jack@example.com",
            order: 0
        );

        var signers = new List<SubUnclaimedDraftSigner>
        {
            signers1,
        };

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest(
            type: UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
            testMode: true,
            files: new List<Stream>
            {
                new FileStream(
                    path: "./example_signature_request.pdf",
                    mode: FileMode.Open
                ),
            },
            signers: signers
        );

        try
        {
            var response = new UnclaimedDraftApi(config).UnclaimedDraftCreate(
                unclaimedDraftCreateRequest: unclaimedDraftCreateRequest
            );

            Console.WriteLine(response);
        }
        catch (ApiException e)
        {
            Console.WriteLine("Exception when calling UnclaimedDraftApi#UnclaimedDraftCreate: " + 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 signers1: models.SubUnclaimedDraftSigner = {
  name: "Jack",
  emailAddress: "jack@example.com",
  order: 0,
};

const signers = [
  signers1,
];

const unclaimedDraftCreateRequest: models.UnclaimedDraftCreateRequest = {
  type: models.UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
  testMode: true,
  files: [
    fs.createReadStream("./example_signature_request.pdf"),
  ],
  signers: signers,
};

apiCaller.unclaimedDraftCreate(
  unclaimedDraftCreateRequest,
).then(response => {
  console.log(response.body);
}).catch(error => {
  console.log("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate:");
  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 UnclaimedDraftCreateExample
{
    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 signers1 = new SubUnclaimedDraftSigner();
        signers1.name("Jack");
        signers1.emailAddress("jack@example.com");
        signers1.order(0);

        var signers = new ArrayList<SubUnclaimedDraftSigner>(List.of (
            signers1
        ));

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest();
        unclaimedDraftCreateRequest.type(UnclaimedDraftCreateRequest.TypeEnum.REQUEST_SIGNATURE);
        unclaimedDraftCreateRequest.testMode(true);
        unclaimedDraftCreateRequest.files(List.of (
            new File("./example_signature_request.pdf")
        ));
        unclaimedDraftCreateRequest.signers(signers);

        try
        {
            var response = new UnclaimedDraftApi(config).unclaimedDraftCreate(
                unclaimedDraftCreateRequest
            );

            System.out.println(response);
        } catch (ApiException e) {
            System.err.println("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate");
            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

signers_1 = Dropbox::Sign::SubUnclaimedDraftSigner.new
signers_1.name = "Jack"
signers_1.email_address = "jack@example.com"
signers_1.order = 0

signers = [
    signers_1,
]

unclaimed_draft_create_request = Dropbox::Sign::UnclaimedDraftCreateRequest.new
unclaimed_draft_create_request.type = "request_signature"
unclaimed_draft_create_request.test_mode = true
unclaimed_draft_create_request.files = [
    File.new("./example_signature_request.pdf", "r"),
]
unclaimed_draft_create_request.signers = signers

begin
    response = Dropbox::Sign::UnclaimedDraftApi.new.unclaimed_draft_create(
        unclaimed_draft_create_request,
    )

    p response
rescue Dropbox::Sign::ApiError => e
    puts "Exception when calling UnclaimedDraftApi#unclaimed_draft_create: #{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:
    signers_1 = models.SubUnclaimedDraftSigner(
        name="Jack",
        email_address="jack@example.com",
        order=0,
    )

    signers = [
        signers_1,
    ]

    unclaimed_draft_create_request = models.UnclaimedDraftCreateRequest(
        type="request_signature",
        test_mode=True,
        files=[
            open("./example_signature_request.pdf", "rb").read(),
        ],
        signers=signers,
    )

    try:
        response = api.UnclaimedDraftApi(api_client).unclaimed_draft_create(
            unclaimed_draft_create_request=unclaimed_draft_create_request,
        )

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

```

```go Form Fields Per Document Example
package main

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

func main() {

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

	payload := strings.NewReader("{\n  \"type\": \"request_signature\",\n  \"file_urls\": [\n    \"https://www.dropbox.com/s/ad9qnhbrjjn64tu/mutual-NDA-example.pdf?dl=1\"\n  ],\n  \"form_fields_per_document\": [\n    {\n      \"type\": \"text\",\n      \"api_id\": \"uniqueIdHere_1\",\n      \"document_index\": 0,\n      \"height\": 16,\n      \"required\": true,\n      \"signer\": \"1\",\n      \"width\": 100,\n      \"x\": 112,\n      \"y\": 328,\n      \"name\": \"\",\n      \"page\": 1,\n      \"placeholder\": \"\",\n      \"validation_type\": \"numbers_only\"\n    },\n    {\n      \"type\": \"signature\",\n      \"api_id\": \"uniqueIdHere_2\",\n      \"document_index\": 0,\n      \"height\": 30,\n      \"required\": true,\n      \"signer\": \"0\",\n      \"width\": 120,\n      \"x\": 530,\n      \"y\": 415,\n      \"name\": \"\",\n      \"page\": 1\n    }\n  ],\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 Form Fields Per Document Example
import Foundation

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

let headers = [
  "Authorization": "Basic \(credentials)",
  "Content-Type": "application/json"
]
let parameters = [
  "type": "request_signature",
  "file_urls": ["https://www.dropbox.com/s/ad9qnhbrjjn64tu/mutual-NDA-example.pdf?dl=1"],
  "form_fields_per_document": [
    [
      "type": "text",
      "api_id": "uniqueIdHere_1",
      "document_index": 0,
      "height": 16,
      "required": true,
      "signer": "1",
      "width": 100,
      "x": 112,
      "y": 328,
      "name": "",
      "page": 1,
      "placeholder": "",
      "validation_type": "numbers_only"
    ],
    [
      "type": "signature",
      "api_id": "uniqueIdHere_2",
      "document_index": 0,
      "height": 30,
      "required": true,
      "signer": "0",
      "width": 120,
      "x": 530,
      "y": 415,
      "name": "",
      "page": 1
    ]
  ],
  "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/create")! 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()
```

```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");

$signers_1 = (new Dropbox\Sign\Model\SubUnclaimedDraftSigner())
    ->setName("Jack")
    ->setEmailAddress("jack@example.com")
    ->setOrder(0);

$signers = [
    $signers_1,
];

$unclaimed_draft_create_request = (new Dropbox\Sign\Model\UnclaimedDraftCreateRequest())
    ->setType(Dropbox\Sign\Model\UnclaimedDraftCreateRequest::TYPE_REQUEST_SIGNATURE)
    ->setTestMode(true)
    ->setFiles([
    ])
    ->setSigners($signers);

try {
    $response = (new Dropbox\Sign\Api\UnclaimedDraftApi(config: $config))->unclaimedDraftCreate(
        unclaimed_draft_create_request: $unclaimed_draft_create_request,
    );

    print_r($response);
} catch (Dropbox\Sign\ApiException $e) {
    echo "Exception when calling UnclaimedDraftApi#unclaimedDraftCreate: {$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 UnclaimedDraftCreateExample
{
    public static void Run()
    {
        var config = new Configuration();
        config.Username = "YOUR_API_KEY";
        // config.AccessToken = "YOUR_ACCESS_TOKEN";

        var signers1 = new SubUnclaimedDraftSigner(
            name: "Jack",
            emailAddress: "jack@example.com",
            order: 0
        );

        var signers = new List<SubUnclaimedDraftSigner>
        {
            signers1,
        };

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest(
            type: UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
            testMode: true,
            files: new List<Stream>
            {
                new FileStream(
                    path: "./example_signature_request.pdf",
                    mode: FileMode.Open
                ),
            },
            signers: signers
        );

        try
        {
            var response = new UnclaimedDraftApi(config).UnclaimedDraftCreate(
                unclaimedDraftCreateRequest: unclaimedDraftCreateRequest
            );

            Console.WriteLine(response);
        }
        catch (ApiException e)
        {
            Console.WriteLine("Exception when calling UnclaimedDraftApi#UnclaimedDraftCreate: " + 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 signers1: models.SubUnclaimedDraftSigner = {
  name: "Jack",
  emailAddress: "jack@example.com",
  order: 0,
};

const signers = [
  signers1,
];

const unclaimedDraftCreateRequest: models.UnclaimedDraftCreateRequest = {
  type: models.UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
  testMode: true,
  files: [
    fs.createReadStream("./example_signature_request.pdf"),
  ],
  signers: signers,
};

apiCaller.unclaimedDraftCreate(
  unclaimedDraftCreateRequest,
).then(response => {
  console.log(response.body);
}).catch(error => {
  console.log("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate:");
  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 UnclaimedDraftCreateExample
{
    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 signers1 = new SubUnclaimedDraftSigner();
        signers1.name("Jack");
        signers1.emailAddress("jack@example.com");
        signers1.order(0);

        var signers = new ArrayList<SubUnclaimedDraftSigner>(List.of (
            signers1
        ));

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest();
        unclaimedDraftCreateRequest.type(UnclaimedDraftCreateRequest.TypeEnum.REQUEST_SIGNATURE);
        unclaimedDraftCreateRequest.testMode(true);
        unclaimedDraftCreateRequest.files(List.of (
            new File("./example_signature_request.pdf")
        ));
        unclaimedDraftCreateRequest.signers(signers);

        try
        {
            var response = new UnclaimedDraftApi(config).unclaimedDraftCreate(
                unclaimedDraftCreateRequest
            );

            System.out.println(response);
        } catch (ApiException e) {
            System.err.println("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate");
            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

signers_1 = Dropbox::Sign::SubUnclaimedDraftSigner.new
signers_1.name = "Jack"
signers_1.email_address = "jack@example.com"
signers_1.order = 0

signers = [
    signers_1,
]

unclaimed_draft_create_request = Dropbox::Sign::UnclaimedDraftCreateRequest.new
unclaimed_draft_create_request.type = "request_signature"
unclaimed_draft_create_request.test_mode = true
unclaimed_draft_create_request.files = [
    File.new("./example_signature_request.pdf", "r"),
]
unclaimed_draft_create_request.signers = signers

begin
    response = Dropbox::Sign::UnclaimedDraftApi.new.unclaimed_draft_create(
        unclaimed_draft_create_request,
    )

    p response
rescue Dropbox::Sign::ApiError => e
    puts "Exception when calling UnclaimedDraftApi#unclaimed_draft_create: #{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:
    signers_1 = models.SubUnclaimedDraftSigner(
        name="Jack",
        email_address="jack@example.com",
        order=0,
    )

    signers = [
        signers_1,
    ]

    unclaimed_draft_create_request = models.UnclaimedDraftCreateRequest(
        type="request_signature",
        test_mode=True,
        files=[
            open("./example_signature_request.pdf", "rb").read(),
        ],
        signers=signers,
    )

    try:
        response = api.UnclaimedDraftApi(api_client).unclaimed_draft_create(
            unclaimed_draft_create_request=unclaimed_draft_create_request,
        )

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

```

```go Form Fields Per Document and Groups Example
package main

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

func main() {

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

	payload := strings.NewReader("{\n  \"type\": \"request_signature\",\n  \"file_urls\": [\n    \"https://www.dropbox.com/s/ad9qnhbrjjn64tu/mutual-NDA-example.pdf?dl=1\"\n  ],\n  \"form_field_groups\": [\n    {\n      \"group_id\": \"RadioItemGroup1\",\n      \"group_label\": \"Radio Item Group 1\",\n      \"requirement\": \"require_0-1\"\n    }\n  ],\n  \"form_fields_per_document\": [\n    {\n      \"type\": \"radio\",\n      \"api_id\": \"uniqueIdHere_1\",\n      \"document_index\": 0,\n      \"group\": \"RadioItemGroup1\",\n      \"height\": 18,\n      \"is_checked\": 1,\n      \"required\": false,\n      \"signer\": \"0\",\n      \"width\": 18,\n      \"x\": 112,\n      \"y\": 328,\n      \"name\": \"\",\n      \"page\": 1\n    },\n    {\n      \"type\": \"radio\",\n      \"api_id\": \"uniqueIdHere_2\",\n      \"document_index\": 0,\n      \"group\": \"RadioItemGroup1\",\n      \"height\": 18,\n      \"is_checked\": 0,\n      \"required\": false,\n      \"signer\": \"0\",\n      \"width\": 18,\n      \"x\": 112,\n      \"y\": 370,\n      \"name\": \"\",\n      \"page\": 1\n    }\n  ],\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 Form Fields Per Document and Groups Example
import Foundation

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

let headers = [
  "Authorization": "Basic \(credentials)",
  "Content-Type": "application/json"
]
let parameters = [
  "type": "request_signature",
  "file_urls": ["https://www.dropbox.com/s/ad9qnhbrjjn64tu/mutual-NDA-example.pdf?dl=1"],
  "form_field_groups": [
    [
      "group_id": "RadioItemGroup1",
      "group_label": "Radio Item Group 1",
      "requirement": "require_0-1"
    ]
  ],
  "form_fields_per_document": [
    [
      "type": "radio",
      "api_id": "uniqueIdHere_1",
      "document_index": 0,
      "group": "RadioItemGroup1",
      "height": 18,
      "is_checked": 1,
      "required": false,
      "signer": "0",
      "width": 18,
      "x": 112,
      "y": 328,
      "name": "",
      "page": 1
    ],
    [
      "type": "radio",
      "api_id": "uniqueIdHere_2",
      "document_index": 0,
      "group": "RadioItemGroup1",
      "height": 18,
      "is_checked": 0,
      "required": false,
      "signer": "0",
      "width": 18,
      "x": 112,
      "y": 370,
      "name": "",
      "page": 1
    ]
  ],
  "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/create")! 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()
```

```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");

$signers_1 = (new Dropbox\Sign\Model\SubUnclaimedDraftSigner())
    ->setName("Jack")
    ->setEmailAddress("jack@example.com")
    ->setOrder(0);

$signers = [
    $signers_1,
];

$unclaimed_draft_create_request = (new Dropbox\Sign\Model\UnclaimedDraftCreateRequest())
    ->setType(Dropbox\Sign\Model\UnclaimedDraftCreateRequest::TYPE_REQUEST_SIGNATURE)
    ->setTestMode(true)
    ->setFiles([
    ])
    ->setSigners($signers);

try {
    $response = (new Dropbox\Sign\Api\UnclaimedDraftApi(config: $config))->unclaimedDraftCreate(
        unclaimed_draft_create_request: $unclaimed_draft_create_request,
    );

    print_r($response);
} catch (Dropbox\Sign\ApiException $e) {
    echo "Exception when calling UnclaimedDraftApi#unclaimedDraftCreate: {$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 UnclaimedDraftCreateExample
{
    public static void Run()
    {
        var config = new Configuration();
        config.Username = "YOUR_API_KEY";
        // config.AccessToken = "YOUR_ACCESS_TOKEN";

        var signers1 = new SubUnclaimedDraftSigner(
            name: "Jack",
            emailAddress: "jack@example.com",
            order: 0
        );

        var signers = new List<SubUnclaimedDraftSigner>
        {
            signers1,
        };

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest(
            type: UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
            testMode: true,
            files: new List<Stream>
            {
                new FileStream(
                    path: "./example_signature_request.pdf",
                    mode: FileMode.Open
                ),
            },
            signers: signers
        );

        try
        {
            var response = new UnclaimedDraftApi(config).UnclaimedDraftCreate(
                unclaimedDraftCreateRequest: unclaimedDraftCreateRequest
            );

            Console.WriteLine(response);
        }
        catch (ApiException e)
        {
            Console.WriteLine("Exception when calling UnclaimedDraftApi#UnclaimedDraftCreate: " + 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 signers1: models.SubUnclaimedDraftSigner = {
  name: "Jack",
  emailAddress: "jack@example.com",
  order: 0,
};

const signers = [
  signers1,
];

const unclaimedDraftCreateRequest: models.UnclaimedDraftCreateRequest = {
  type: models.UnclaimedDraftCreateRequest.TypeEnum.RequestSignature,
  testMode: true,
  files: [
    fs.createReadStream("./example_signature_request.pdf"),
  ],
  signers: signers,
};

apiCaller.unclaimedDraftCreate(
  unclaimedDraftCreateRequest,
).then(response => {
  console.log(response.body);
}).catch(error => {
  console.log("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate:");
  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 UnclaimedDraftCreateExample
{
    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 signers1 = new SubUnclaimedDraftSigner();
        signers1.name("Jack");
        signers1.emailAddress("jack@example.com");
        signers1.order(0);

        var signers = new ArrayList<SubUnclaimedDraftSigner>(List.of (
            signers1
        ));

        var unclaimedDraftCreateRequest = new UnclaimedDraftCreateRequest();
        unclaimedDraftCreateRequest.type(UnclaimedDraftCreateRequest.TypeEnum.REQUEST_SIGNATURE);
        unclaimedDraftCreateRequest.testMode(true);
        unclaimedDraftCreateRequest.files(List.of (
            new File("./example_signature_request.pdf")
        ));
        unclaimedDraftCreateRequest.signers(signers);

        try
        {
            var response = new UnclaimedDraftApi(config).unclaimedDraftCreate(
                unclaimedDraftCreateRequest
            );

            System.out.println(response);
        } catch (ApiException e) {
            System.err.println("Exception when calling UnclaimedDraftApi#unclaimedDraftCreate");
            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

signers_1 = Dropbox::Sign::SubUnclaimedDraftSigner.new
signers_1.name = "Jack"
signers_1.email_address = "jack@example.com"
signers_1.order = 0

signers = [
    signers_1,
]

unclaimed_draft_create_request = Dropbox::Sign::UnclaimedDraftCreateRequest.new
unclaimed_draft_create_request.type = "request_signature"
unclaimed_draft_create_request.test_mode = true
unclaimed_draft_create_request.files = [
    File.new("./example_signature_request.pdf", "r"),
]
unclaimed_draft_create_request.signers = signers

begin
    response = Dropbox::Sign::UnclaimedDraftApi.new.unclaimed_draft_create(
        unclaimed_draft_create_request,
    )

    p response
rescue Dropbox::Sign::ApiError => e
    puts "Exception when calling UnclaimedDraftApi#unclaimed_draft_create: #{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:
    signers_1 = models.SubUnclaimedDraftSigner(
        name="Jack",
        email_address="jack@example.com",
        order=0,
    )

    signers = [
        signers_1,
    ]

    unclaimed_draft_create_request = models.UnclaimedDraftCreateRequest(
        type="request_signature",
        test_mode=True,
        files=[
            open("./example_signature_request.pdf", "rb").read(),
        ],
        signers=signers,
    )

    try:
        response = api.UnclaimedDraftApi(api_client).unclaimed_draft_create(
            unclaimed_draft_create_request=unclaimed_draft_create_request,
        )

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

```

```go Form Fields Per Document and Rules Example
package main

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

func main() {

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

	payload := strings.NewReader("{\n  \"type\": \"request_signature\",\n  \"file_urls\": [\n    \"https://www.dropbox.com/s/ad9qnhbrjjn64tu/mutual-NDA-example.pdf?dl=1\"\n  ],\n  \"form_field_rules\": [\n    {\n      \"id\": \"rule_1\",\n      \"trigger_operator\": \"AND\",\n      \"triggers\": [\n        {\n          \"id\": \"uniqueIdHere_1\",\n          \"operator\": \"is\",\n          \"value\": \"foo\"\n        }\n      ],\n      \"actions\": [\n        {\n          \"hidden\": true,\n          \"type\": \"change-field-visibility\",\n          \"field_id\": \"uniqueIdHere_2\"\n        }\n      ]\n    }\n  ],\n  \"form_fields_per_document\": [\n    {\n      \"type\": \"text\",\n      \"api_id\": \"uniqueIdHere_1\",\n      \"document_index\": 0,\n      \"height\": 16,\n      \"required\": true,\n      \"signer\": \"0\",\n      \"width\": 100,\n      \"x\": 112,\n      \"y\": 328,\n      \"name\": \"\",\n      \"page\": 1,\n      \"validation_type\": \"numbers_only\"\n    },\n    {\n      \"type\": \"signature\",\n      \"api_id\": \"uniqueIdHere_2\",\n      \"document_index\": 0,\n      \"height\": 30,\n      \"required\": true,\n      \"signer\": \"0\",\n      \"width\": 120,\n      \"x\": 530,\n      \"y\": 415,\n      \"name\": \"\",\n      \"page\": 1\n    }\n  ],\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 Form Fields Per Document and Rules Example
import Foundation

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

let headers = [
  "Authorization": "Basic \(credentials)",
  "Content-Type": "application/json"
]
let parameters = [
  "type": "request_signature",
  "file_urls": ["https://www.dropbox.com/s/ad9qnhbrjjn64tu/mutual-NDA-example.pdf?dl=1"],
  "form_field_rules": [
    [
      "id": "rule_1",
      "trigger_operator": "AND",
      "triggers": [
        [
          "id": "uniqueIdHere_1",
          "operator": "is",
          "value": "foo"
        ]
      ],
      "actions": [
        [
          "hidden": true,
          "type": "change-field-visibility",
          "field_id": "uniqueIdHere_2"
        ]
      ]
    ]
  ],
  "form_fields_per_document": [
    [
      "type": "text",
      "api_id": "uniqueIdHere_1",
      "document_index": 0,
      "height": 16,
      "required": true,
      "signer": "0",
      "width": 100,
      "x": 112,
      "y": 328,
      "name": "",
      "page": 1,
      "validation_type": "numbers_only"
    ],
    [
      "type": "signature",
      "api_id": "uniqueIdHere_2",
      "document_index": 0,
      "height": 30,
      "required": true,
      "signer": "0",
      "width": 120,
      "x": 530,
      "y": 415,
      "name": "",
      "page": 1
    ]
  ],
  "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/create")! 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()
```