Signeasy Users API
Fetch the authenticated user's details via GET /me/, including account information and remaining envelope credits used to gauge available signature request volume.
Fetch the authenticated user's details via GET /me/, including account information and remaining envelope credits used to gauge available signature request volume.
openapi: 3.1.0
info:
title: Signeasy API
version: '3.0'
description: >-
RESTful eSignature API (v3) for the Signeasy contract and signature platform.
Send documents for signature (envelopes), embed signing and sending inside your
own app via iframes, manage reusable templates with merge fields, upload original
documents, fetch the authenticated user, and receive signature lifecycle events
via webhooks.
Confirmed endpoints (paths and methods) were extracted from the OpenAPI
fragments embedded in the public Signeasy API reference at docs.signeasy.com.
A small number of endpoints (marked with x-modeled: true) are modeled from the
guides and the envelope object documentation where the public reference does not
embed a machine-readable definition; verify these against the developer portal.
All requests use the base URL https://api.signeasy.com/v3 and are authenticated
with an OAuth 2.0 Bearer access token (sandbox or live).
contact:
name: Signeasy API Support
url: https://docs.signeasy.com/support
license:
name: Proprietary
url: https://signeasy.com/terms-of-service
servers:
- url: https://api.signeasy.com/v3
description: Signeasy API v3 (sandbox and live tokens use the same host)
security:
- bearerAuth: []
tags:
- name: Envelopes
description: Signature requests composed of originals and templates.
- name: Originals
description: Master documents used to build signature requests.
- name: Templates
description: Reusable documents with predefined roles and merge fields.
- name: Embedded
description: Embedded signing and sending flows for iframes and pop-ups.
- name: Users
description: Authenticated account details and envelope credits.
paths:
/rs/envelope/:
post:
operationId: createEnvelope
tags:
- Envelopes
summary: Create or send an envelope
description: >-
Send a signature request containing one or more original documents and/or
templates to up to 45 recipients. Set embedded_signing to true to create an
embedded request (no emails sent by Signeasy) and generate signing URLs
yourself.
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
originals:
type: array
description: Original document IDs to include in the envelope.
items:
type: object
templates:
type: array
description: Template IDs to include in the envelope.
items:
type: object
recipients:
type: array
description: Recipients (signers) of the envelope, up to 45.
items:
type: object
embedded_signing:
type: boolean
description: When true, creates an embedded signature request; Signeasy sends no recipient emails.
message:
type: string
expiry:
type: integer
description: Days until the signature request expires.
responses:
'200':
description: Envelope created. Returns the pending file (envelope) id.
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
'401':
description: Missing or invalid access token.
/rs/envelope/{pending_file_id}:
get:
operationId: getEnvelope
x-modeled: true
tags:
- Envelopes
summary: Retrieve the envelope object
description: >-
Fetch a signature request (pending file / envelope) and its status. Status is
one of incomplete, complete, recipient_declined, or canceled; each recipient
carries a status of viewed, not_viewed, declined, or finalized. Path modeled
from the envelope object documentation.
parameters:
- name: pending_file_id
in: path
required: true
schema:
type: integer
description: The pending file (envelope) id returned when the envelope was created.
responses:
'200':
description: The envelope object.
content:
application/json:
schema:
$ref: '#/components/schemas/Envelope'
'404':
description: Envelope not found.
/rs/envelope/{pending_file_id}/cancel:
post:
operationId: cancelEnvelope
tags:
- Envelopes
summary: Cancel (void) an envelope signature request
parameters:
- name: pending_file_id
in: path
required: true
schema:
type: integer
responses:
'200':
description: Signature request canceled.
'404':
description: Envelope not found.
/rs/{rs_id}/cancel:
post:
operationId: cancelSignatureRequest
tags:
- Envelopes
summary: Cancel a signature request
description: Cancel a signature request by its request id (legacy single-document flow).
parameters:
- name: rs_id
in: path
required: true
schema:
type: integer
responses:
'200':
description: Signature request canceled.
/rs/envelope/signed/{signed_id}/{source_id}/download:
get:
operationId: downloadSignedFile
tags:
- Envelopes
summary: Download a signed file within an envelope as PDF
parameters:
- name: signed_id
in: path
required: true
schema:
type: integer
- name: source_id
in: path
required: true
schema:
type: integer
responses:
'200':
description: The signed document as a PDF.
content:
application/pdf:
schema:
type: string
format: binary
/original/:
post:
operationId: uploadOriginal
tags:
- Originals
summary: Upload an original
description: Upload a master document (up to 40 MB) that can be used to send signature requests.
requestBody:
required: true
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: string
format: binary
responses:
'200':
description: Original uploaded. Returns the original document id.
content:
application/json:
schema:
type: object
properties:
id:
type: integer
/template/{template_id}:
put:
operationId: updateTemplate
tags:
- Templates
summary: Update template
parameters:
- name: template_id
in: path
required: true
schema:
type: integer
requestBody:
required: true
content:
application/json:
schema:
type: object
responses:
'200':
description: Template updated.
/template/{template_id}/embed:
post:
operationId: fetchEmbeddedTemplateCreateUrl
tags:
- Templates
summary: Fetch embedded template create URL
description: >-
Get the embedded template-creation link for a template. Load this URL in an
iframe so users can create or update templates inside your own app.
parameters:
- name: template_id
in: path
required: true
schema:
type: integer
responses:
'200':
description: Embedded template URL.
content:
application/json:
schema:
type: object
properties:
url:
type: string
format: uri
/rs/embedded/url/:
post:
operationId: fetchEmbeddedSendingUrl
tags:
- Embedded
summary: Fetch embedded sending URL
description: >-
Return a URL that lets a user prepare and send a document for signature from
within your own app in an iframe or pop-up.
requestBody:
required: true
content:
application/json:
schema:
type: object
responses:
'200':
description: Embedded sending URL.
content:
application/json:
schema:
type: object
properties:
url:
type: string
format: uri
/rs/embedded/{pending_file_id}/cancel/:
post:
operationId: cancelEmbeddedSignatureRequest
tags:
- Embedded
summary: Cancel an embedded signature request
parameters:
- name: pending_file_id
in: path
required: true
schema:
type: integer
responses:
'200':
description: Embedded signature request canceled.
/rs/embedded/signing_url/:
post:
operationId: fetchEmbeddedSigningUrl
x-modeled: true
tags:
- Embedded
summary: Fetch embedded signing URL for a recipient
description: >-
Generate a per-recipient signing URL for an embedded signature request, to be
loaded in an iframe or pop-up. An optional redirect_url returns control to your
app (with the pending_file_id) after signing. Path modeled from the embedded
signing guide; verify exact path in the developer portal.
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
pending_file_id:
type: integer
email:
type: string
format: email
redirect_url:
type: string
format: uri
responses:
'200':
description: Signing URL for the recipient.
content:
application/json:
schema:
type: object
properties:
url:
type: string
format: uri
/me/:
get:
operationId: fetchUser
tags:
- Users
summary: Fetch user
description: Fetch the authenticated user's details, including remaining envelope credits.
responses:
'200':
description: The user object.
content:
application/json:
schema:
$ref: '#/components/schemas/User'
'401':
description: Missing or invalid access token.
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
description: OAuth 2.0 access token (sandbox or live) passed as a Bearer token in the Authorization header.
schemas:
Envelope:
type: object
description: A signature request (pending file) composed of one or more documents sent to up to 45 signers.
properties:
id:
type: integer
description: The pending file id of the signature request.
status:
type: string
enum:
- incomplete
- complete
- recipient_declined
- canceled
recipients:
type: array
items:
type: object
properties:
email:
type: string
format: email
status:
type: string
enum:
- viewed
- not_viewed
- declined
- finalized
request_info:
type: object
User:
type: object
properties:
id:
type: integer
email:
type: string
format: email
name:
type: string
envelope_credits:
type: integer
description: Remaining envelope credits on the account.