Current section

Files

Jump to
docusign lib docusign api account_custom_fields.ex
Raw

lib/docusign/api/account_custom_fields.ex

# NOTE: This file is auto generated by OpenAPI Generator
# https://openapi-generator.tech
# Do not edit this file manually.
defmodule DocuSign.Api.AccountCustomFields do
@moduledoc """
API calls for all endpoints tagged `AccountCustomFields`.
"""
import DocuSign.RequestBuilder
alias DocuSign.Connection
alias DocuSign.Model.AccountCustomFields
alias DocuSign.Model.ErrorDetails
@doc """
Deletes an account custom field.
This method deletes an existing account custom field.
### Parameters
- `connection` (DocuSign.Connection): Connection to server
- `account_id` (String.t): The external account number (int) or account ID GUID.
- `custom_field_id` (String.t): The ID of the custom field.
- `opts` (keyword): Optional parameters
- `:apply_to_templates` (String.t):
### Returns
- `{:ok, nil}` on success
- `{:error, Req.Response.t}` on failure
"""
@spec account_custom_fields_delete_account_custom_fields(DocuSign.Connection.t(), String.t(), String.t(), keyword()) ::
{:ok, nil}
| {:error, Req.Response.t()}
def account_custom_fields_delete_account_custom_fields(connection, account_id, custom_field_id, opts \\ []) do
optional_params = %{
:apply_to_templates => :query
}
request =
%{}
|> method(:delete)
|> url("/v2.1/accounts/#{account_id}/custom_fields/#{custom_field_id}")
|> add_optional_params(optional_params, opts)
|> Enum.to_list()
connection
|> Connection.request(request)
|> evaluate_response([
{200, false},
{400, ErrorDetails}
])
end
@doc """
Gets a list of custom fields.
This method returns a list of the envelope and document custom fields associated with an account.
### Parameters
- `connection` (DocuSign.Connection): Connection to server
- `account_id` (String.t): The external account number (int) or account ID GUID.
- `opts` (keyword): Optional parameters
### Returns
- `{:ok, DocuSign.Model.AccountCustomFields.t}` on success
- `{:error, Req.Response.t}` on failure
"""
@spec account_custom_fields_get_account_custom_fields(DocuSign.Connection.t(), String.t(), keyword()) ::
{:ok, AccountCustomFields.t()}
| {:error, Req.Response.t()}
def account_custom_fields_get_account_custom_fields(connection, account_id, _opts \\ []) do
request =
%{}
|> method(:get)
|> url("/v2.1/accounts/#{account_id}/custom_fields")
|> Enum.to_list()
connection
|> Connection.request(request)
|> evaluate_response([
{200, AccountCustomFields},
{400, ErrorDetails}
])
end
@doc """
Creates an account custom field.
This method creates a custom field and makes it available for all new envelopes associated with an account.
### Parameters
- `connection` (DocuSign.Connection): Connection to server
- `account_id` (String.t): The external account number (int) or account ID GUID.
- `opts` (keyword): Optional parameters
- `:apply_to_templates` (String.t): (Optional) When **true,** the new custom field is applied to all of the templates on the account.
- `:body` (CustomField):
### Returns
- `{:ok, DocuSign.Model.AccountCustomFields.t}` on success
- `{:error, Req.Response.t}` on failure
"""
@spec account_custom_fields_post_account_custom_fields(DocuSign.Connection.t(), String.t(), keyword()) ::
{:ok, AccountCustomFields.t()}
| {:error, Req.Response.t()}
def account_custom_fields_post_account_custom_fields(connection, account_id, opts \\ []) do
optional_params = %{
:apply_to_templates => :query,
:body => :body
}
request =
%{}
|> method(:post)
|> url("/v2.1/accounts/#{account_id}/custom_fields")
|> add_optional_params(optional_params, opts)
|> ensure_body()
|> Enum.to_list()
connection
|> Connection.request(request)
|> evaluate_response([
{201, AccountCustomFields},
{400, ErrorDetails}
])
end
@doc """
Updates an account custom field.
This method updates an existing account custom field.
### Parameters
- `connection` (DocuSign.Connection): Connection to server
- `account_id` (String.t): The external account number (int) or account ID GUID.
- `custom_field_id` (String.t): The ID of the custom field.
- `opts` (keyword): Optional parameters
- `:apply_to_templates` (String.t):
- `:body` (CustomField):
### Returns
- `{:ok, DocuSign.Model.AccountCustomFields.t}` on success
- `{:error, Req.Response.t}` on failure
"""
@spec account_custom_fields_put_account_custom_fields(DocuSign.Connection.t(), String.t(), String.t(), keyword()) ::
{:ok, AccountCustomFields.t()}
| {:error, Req.Response.t()}
def account_custom_fields_put_account_custom_fields(connection, account_id, custom_field_id, opts \\ []) do
optional_params = %{
:apply_to_templates => :query,
:body => :body
}
request =
%{}
|> method(:put)
|> url("/v2.1/accounts/#{account_id}/custom_fields/#{custom_field_id}")
|> add_optional_params(optional_params, opts)
|> ensure_body()
|> Enum.to_list()
connection
|> Connection.request(request)
|> evaluate_response([
{200, AccountCustomFields},
{400, ErrorDetails}
])
end
end