# `DocuSign.Api.TemplateCustomFields`
[🔗](https://github.com/neilberkman/docusign_elixir/blob/v3.5.1/lib/docusign/api/template_custom_fields.ex#L5)

API calls for all endpoints tagged `TemplateCustomFields`.

# `custom_fields_delete_template_custom_fields`

```elixir
@spec custom_fields_delete_template_custom_fields(
  DocuSign.Connection.t(),
  String.t(),
  String.t(),
  keyword()
) :: {:ok, DocuSign.Model.CustomFields.t()} | {:error, Req.Response.t()}
```

Deletes envelope custom fields in a template.
Deletes envelope custom fields in a template.

### Parameters

- `connection` (DocuSign.Connection): Connection to server
- `account_id` (String.t): The external account number (int) or account ID GUID.
- `template_id` (String.t): The ID of the template.
- `opts` (keyword): Optional parameters
  - `:body` (TemplateCustomFields): 

### Returns

- `{:ok, DocuSign.Model.CustomFields.t}` on success
- `{:error, Req.Response.t}` on failure

# `custom_fields_get_template_custom_fields`

```elixir
@spec custom_fields_get_template_custom_fields(
  DocuSign.Connection.t(),
  String.t(),
  String.t(),
  keyword()
) :: {:ok, DocuSign.Model.CustomFields.t()} | {:error, Req.Response.t()}
```

Gets the custom document fields from a template.
Retrieves the custom document field information from an existing template.

### Parameters

- `connection` (DocuSign.Connection): Connection to server
- `account_id` (String.t): The external account number (int) or account ID GUID.
- `template_id` (String.t): The ID of the template.
- `opts` (keyword): Optional parameters

### Returns

- `{:ok, DocuSign.Model.CustomFields.t}` on success
- `{:error, Req.Response.t}` on failure

# `custom_fields_post_template_custom_fields`

```elixir
@spec custom_fields_post_template_custom_fields(
  DocuSign.Connection.t(),
  String.t(),
  String.t(),
  keyword()
) :: {:ok, DocuSign.Model.CustomFields.t()} | {:error, Req.Response.t()}
```

Creates custom document fields in an existing template document.
Creates custom document fields in an existing template document.

### Parameters

- `connection` (DocuSign.Connection): Connection to server
- `account_id` (String.t): The external account number (int) or account ID GUID.
- `template_id` (String.t): The ID of the template.
- `opts` (keyword): Optional parameters
  - `:body` (TemplateCustomFields): 

### Returns

- `{:ok, DocuSign.Model.CustomFields.t}` on success
- `{:error, Req.Response.t}` on failure

# `custom_fields_put_template_custom_fields`

```elixir
@spec custom_fields_put_template_custom_fields(
  DocuSign.Connection.t(),
  String.t(),
  String.t(),
  keyword()
) :: {:ok, DocuSign.Model.CustomFields.t()} | {:error, Req.Response.t()}
```

Updates envelope custom fields in a template.
Updates the custom fields in a template.  Each custom field used in a template must have a unique name.

### Parameters

- `connection` (DocuSign.Connection): Connection to server
- `account_id` (String.t): The external account number (int) or account ID GUID.
- `template_id` (String.t): The ID of the template.
- `opts` (keyword): Optional parameters
  - `:body` (TemplateCustomFields): 

### Returns

- `{:ok, DocuSign.Model.CustomFields.t}` on success
- `{:error, Req.Response.t}` on failure

---

*Consult [api-reference.md](api-reference.md) for complete listing*
