Getting Started

Welcome to TheDocumentWizard documentation! This guide will help you get started with our digital document signing platform and show you how to integrate it with your existing systems.

What is TheDocumentWizard?

TheDocumentWizard is a secure, legally binding electronic signature platform that allows you to sign documents from anywhere, on any device. Our platform complies with eSign, UETA, and other international laws to ensure your documents are legally valid.

Key Features

  • Digital Signatures: Legally binding electronic signatures
  • Document Tracking: Real-time status updates and audit trails
  • Workflow Automation: Custom signing workflows with automatic routing
  • Templates: Reusable document templates for common workflows
  • API Integration: Seamless integration with your existing systems

Creating Your Account

To get started with TheDocumentWizard, you'll need to create an account:

  1. Visit our registration page
  2. Enter your email address and create a password
  3. Verify your email address
  4. Complete your profile information
  5. Choose a subscription plan that fits your needs

System Requirements

TheDocumentWizard works on any modern web browser, including:

  • Google Chrome (recommended)
  • Mozilla Firefox
  • Safari
  • Microsoft Edge

We also offer mobile apps for iOS and Android devices.

User Guide

This section provides detailed instructions on how to use TheDocumentWizard's core features.

Creating Documents

You can create documents in TheDocumentWizard in several ways:

Uploading Existing Documents

  1. From your dashboard, click the "New Document" button
  2. Select "Upload Document" from the dropdown menu
  3. Choose a file from your computer (supported formats: PDF, DOCX, XLSX, PPTX)
  4. Wait for the document to upload and process

Using Templates

  1. From your dashboard, click the "New Document" button
  2. Select "Use Template" from the dropdown menu
  3. Browse available templates or search for a specific one
  4. Select the template you want to use
  5. Fill in the required information

Creating from Scratch

  1. From your dashboard, click the "New Document" button
  2. Select "Create New" from the dropdown menu
  3. Use our document editor to create your document
  4. Add text, images, tables, and form fields as needed
  5. Save your document when finished

Sending Documents for Signature

Once you've created or uploaded a document, you can send it for signature:

  1. Open the document you want to send
  2. Click the "Prepare for Signing" button
  3. Add signature fields, text fields, date fields, etc. where needed
  4. Click "Add Recipients" and enter the email addresses of the signers
  5. Set the signing order if needed (sequential or parallel)
  6. Add a custom message for the recipients
  7. Click "Send" to send the document for signature

Setting Reminders

You can set automatic reminders for recipients who haven't signed:

  1. When preparing your document for signing, click "Advanced Options"
  2. Enable "Automatic Reminders"
  3. Set the frequency of reminders (e.g., every 3 days)
  4. Set a maximum number of reminders (optional)

Tracking Documents

You can track the status of your documents in real-time:

Dashboard View

Your dashboard provides an overview of all your documents and their current status:

  • Draft: Documents you've created but not yet sent
  • Waiting for Signature: Documents that have been sent but not yet signed by all recipients
  • Completed: Documents that have been signed by all recipients
  • Expired: Documents that have passed their expiration date without being completed

Detailed Document History

For each document, you can view a detailed history:

  1. Open the document from your dashboard
  2. Click the "History" tab
  3. View a chronological list of all actions taken on the document
  4. See who has viewed, signed, or declined the document
  5. View timestamps and IP addresses for audit purposes

API Reference

TheDocumentWizard provides a comprehensive RESTful API that allows you to integrate our digital signature capabilities into your own applications and workflows.

Authentication

All API requests must be authenticated using API keys. You can generate API keys in your account settings.

// Example API request with authentication
const fetchDocuments = async() => {
  const response = await fetch('https://api.thedocumentwizard.com/v1/documents', {
    method: 'GET',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer YOUR_API_KEY'
    }
  });
  
  const data = await response.json();
  return data;
};

API Key Security

Keep your API keys secure and never expose them in client-side code. If you believe your API key has been compromised, you should immediately regenerate it in your account settings.

Documents API

The Documents API allows you to create, send, and manage documents programmatically.

List Documents

GET /v1/documents

Retrieves a list of documents in your account.

Query Parameters
Parameter Type Description
limit Integer Maximum number of documents to return (default: 20, max: 100)
offset Integer Number of documents to skip (for pagination)
status String Filter by document status (draft, sent, completed, expired)
Response Example
{
  "documents": [
    {
      "id": "doc_123456789",
      "title": "Sales Contract",
      "status": "sent",
      "created_at": "2023-05-15T10:30:00Z",
      "updated_at": "2023-05-15T11:45:00Z",
      "expires_at": "2023-06-15T10:30:00Z",
      "recipients": [
        {
          "email": "john@example.com",
          "name": "John Doe",
          "status": "signed"
        },
        {
          "email": "jane@example.com",
          "name": "Jane Smith",
          "status": "waiting"
        }
      ]
    }
  ],
  "total": 45,
  "limit": 20,
  "offset": 0
}

Create Document

POST /v1/documents

Creates a new document.

Request Parameters
Parameter Type Description
title Required String Title of the document
file Required File The document file (PDF, DOCX, etc.)
recipients Optional Array List of recipients who need to sign the document
message Optional String Custom message to include in the email to recipients
expires_in Optional Integer Number of days until the document expires (default: 30)
Request Example
const formData = new FormData();
formData.append('title', 'Sales Contract');
formData.append('file', documentFile);
formData.append('recipients', JSON.stringify([
  {
    "email": "john@example.com",
    "name": "John Doe",
    "role": "signer"
  },
  {
    "email": "jane@example.com",
    "name": "Jane Smith",
    "role": "signer"
  }
]));
formData.append('message', 'Please review and sign this sales contract.');
formData.append('expires_in', '14');

const response = await fetch('https://api.thedocumentwizard.com/v1/documents', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY'
  },
  body: formData
});

Templates API

The Templates API allows you to create and manage reusable document templates.

List Templates

GET /v1/templates

Retrieves a list of templates in your account.

Create Template

POST /v1/templates

Creates a new template from an existing document.

Users API

The Users API allows you to manage users in your organization.

List Users

GET /v1/users

Retrieves a list of users in your organization.

Create User

POST /v1/users

Creates a new user in your organization.

Webhooks

Webhooks allow you to receive real-time notifications when events occur in your TheDocumentWizard account.

Setting Up Webhooks

To set up a webhook:

  1. Go to your account settings
  2. Select the "Webhooks" tab
  3. Click "Add Webhook"
  4. Enter the URL where you want to receive webhook events
  5. Select the events you want to subscribe to
  6. Click "Save"

Webhook Events

TheDocumentWizard can send webhooks for the following events:

  • document.created - A new document has been created
  • document.sent - A document has been sent for signature
  • document.viewed - A recipient has viewed a document
  • document.signed - A recipient has signed a document
  • document.completed - All recipients have signed a document
  • document.declined - A recipient has declined to sign a document
  • document.expired - A document has expired without being completed

Webhook Payload

When an event occurs, TheDocumentWizard will send a POST request to your webhook URL with a JSON payload containing information about the event.

{
  "event": "document.signed",
  "created_at": "2023-05-15T14:30:00Z",
  "data": {
    "document_id": "doc_123456789",
    "document_title": "Sales Contract",
    "signer": {
      "email": "john@example.com",
      "name": "John Doe"
    },
    "signed_at": "2023-05-15T14:30:00Z",
    "ip_address": "192.168.1.1"
  }
}

SDKs & Libraries

To make integration easier, we provide official SDKs for popular programming languages:

JavaScript SDK

Our JavaScript SDK can be used in both Node.js and browser environments.

Installation

// Using npm
npm install @documentwizard/sdk

// Using yarn
yarn add @documentwizard/sdk

Usage Example

const { DocumentWizard } = require('@documentwizard/sdk');

// Initialize the client
const client = new DocumentWizard('YOUR_API_KEY');

// List documents
async function listDocuments() {
  try {
    const documents = await client.documents.list();
    console.log(documents);
  } catch (error) {
    console.error('Error listing documents:', error);
  }
}

Python SDK

Our Python SDK is compatible with Python 3.6 and above.

Installation

pip install documentwizard

Usage Example

from documentwizard import DocumentWizard

# Initialize the client
client = DocumentWizard('YOUR_API_KEY')

# List documents
def list_documents():
    try:
        documents = client.documents.list()
        print(documents)
    except Exception as e:
        print(f'Error listing documents: {e}')

Other SDKs

We also provide SDKs for the following languages:

  • PHP
  • Java
  • Ruby
  • .NET
  • Go

Visit our GitHub repository for more information and examples.

FAQs

General Questions

Are electronic signatures legally binding?

Yes, electronic signatures created with TheDocumentWizard are legally binding in most countries, including the United States (under the ESIGN Act and UETA), the European Union (under eIDAS), and many other jurisdictions.

What file formats are supported?

TheDocumentWizard supports the following file formats:

  • PDF (.pdf)
  • Microsoft Word (.doc, .docx)
  • Microsoft Excel (.xls, .xlsx)
  • Microsoft PowerPoint (.ppt, .pptx)
  • Text files (.txt)
  • Images (.jpg, .jpeg, .png)

API Questions

What is the rate limit for API requests?

The rate limit depends on your subscription plan:

  • Basic: 100 requests per minute
  • Professional: 500 requests per minute
  • Enterprise: 1,000 requests per minute

If you need higher limits, please contact our support team.

How do I handle API errors?

All API errors return a standard error format with an HTTP status code and a JSON response containing error details. We recommend implementing proper error handling in your integration to handle these errors gracefully.

{
  "error": {
    "code": "invalid_request",
    "message": "The request was invalid. Please check your parameters.",
    "details": [
      {
        "field": "email",
        "message": "Invalid email format"
      }
    ]
  }
}