View Source Eversign (eversign.com API for digitally signing PDF documents v0.1.0)
Documentation for Eversign
API Module.
This API only contains everything required to generate Documents (for now). This module is specifically just the HTTP REST Layer. Specific functionality can be found in the individual documentation for each module.
Link to this section Summary
Functions
Cancels a Document.
Gets the current configuration from Config prepared for query arguments.
Create a Document.
Delete a Document which is still in draft or cancelled status.
Download a PDF of any document.
Get Embedded Signing URLs.
Provides a Phoenix compatible script-tag embedding the eversign JavaScript API.
List all Documents.
Link to this section Functions
@spec cancel_document(Tesla.Client.t() | nil, String.t()) :: {:ok, map()} | {:error, Tesla.Client.t()}
Cancels a Document.
parameters
Parameters
- client (Tesla.Client): [optional] Tesla Client for REST Connection
- document_hash (String): Eversign Document Hash
returns
Returns
{:ok, %Eversign.ErrorResponse{success: true}}
on success{:error, %Eversign.ErrorResponse{success:false, error: %{}}}
on failure
Gets the current configuration from Config prepared for query arguments.
returns
Returns
[access_key: "", business_id: 0, language: "en", sandbox: 1]
examples
Examples
iex> Eversign.config()
[
access_key: "",
business_id: 0,
language: "en",
sandbox: 1
]
@spec create_document(Tesla.Client.t() | nil, map()) :: {:error, Tesla.Client.t()} | {:ok, map()}
Create a Document.
parameters
Parameters
- client (Tesla.Client): [optional] Tesla Client for REST Connection
- params (Map): Eversign parameters required for document creation
returns
Returns
{:ok, %Eversign.Document{}}
{:error, %Eversign.ErrorResponse{success:false, error: %{}}}
on failure
examples
Examples
iex> Eversign.create_document(%{
...> use_hidden_tags: 1,
...> files: [
...> %{name: "xyz.pdf", file_base64: "base64"},
...> ],
...> meta: %{
...> customer_id: 123,
...> offer_id: 123,
...> },
...> signers: [
...> %{id: 1, name: "Zack McCracken", email: "zack@example.int", order: 1},
...> %{id: 2, name: "Fred McCracken", email: "fred@example.int", order: 2},
...> ]
...> })
{:ok, %{}}
@spec delete_document(Tesla.Client.t() | nil, String.t()) :: {:ok, map()} | {:error, Tesla.Client.t()}
Delete a Document which is still in draft or cancelled status.
parameters
Parameters
- client (Tesla.Client): [optional] Tesla Client for REST Connection
- document_hash (String): Eversign Document Hash
returns
Returns
{:ok, %Eversign.ErrorResponse{success: true}}
on success{:error, %Eversign.ErrorResponse{success:false, error: %{}}}
on failure
@spec download_document(Tesla.Client.t() | nil, String.t(), keyword(String.t()) | nil) :: {:ok, binary()} | {:ok, map()} | {:error, Tesla.Client.t()}
Download a PDF of any document.
parameters
Parameters
- client (Tesla.Client): [optional] Tesla Client for REST Connection
- document_hash (String): Eversign Document Hash
- query (Keywords): [optional] Query parameters
returns
Returns
{:ok, [] = pdf_bytes}
on success{:error, %Eversign.ErrorResponse{success:false, error: %{}}}
on failure
examples
Examples
iex> Eversign.download_document("msFYActMfJHqNTKH8YSvF1", audit_trail: 1)
{:ok, []}
@spec get_embedded_signing_url(Tesla.Client.t() | nil, String.t()) :: {:error, Tesla.Client.t()} | {:ok, list()}
Get Embedded Signing URLs.
parameters
Parameters
- client (Tesla.Client): [optional] Tesla Client for REST Connection
- document_hash (String): Eversign Document Hash
returns
Returns
{:ok, %Eversign.SignerListResponse{}}
on success{:error, %Eversign.ErrorResponse{success:false, error: %{}}}
on failure
examples
Examples
iex> Eversign.embedded_signing_url("ABCDEFGH1234")
{:ok, %{signers: []}}
Provides a Phoenix compatible script-tag embedding the eversign JavaScript API.
returns
Returns
...
examples
Examples
iex> Eversign.javascript_tag
%Phoenix.HTML.Tag{..}
@spec list_documents(Tesla.Client.t() | nil, nil | atom()) :: {:error, Tesla.Client.t()} | {:ok, [map()]}
List all Documents.
parameters
Parameters
- client (Tesla.Client): [optional] Tesla Client for REST Connection
- type (String): Eversign document type/stage, defaults to :all
returns
Returns
{:ok, [%Eversign.Document{}]}
{:error, %Eversign.ErrorResponse{success:false, error: %{}}}
on failure
examples
Examples
iex> Eversign.list_documents(:all)
{:ok, [%{}]}