1.0 Key Features
1.1 Document Management
- List/Get documents
- Get document files
- Get document signatures
- Download documents
- Signature Operations
1.2 Request signatures
- Sign documents
- Cancel signatures
- Verify documents
- File Operations
1.3 Download files
- Get file metadata
- Get secure download URLs
1.4 Response Types
The library provides TypeScript interfaces for all responses:
Document- Document metadataFile- File informationSignature- Signature detailsSignatureRequestResult- Result of signature requestsFileDownloadResponse- Download URLs and mime types
1.5 Authentication
All operations require an access token. The API client will automatically handle token management when initialized with proper credentials.
The library supports both browser and Node.js environments with appropriate file handling for each platform.
2.0 Setup
Create a file .npmrc in your project root directory and add the following line:
registry=https://npm.pantherx.org
Install the library:
npm install @ones.dev/documents-api
3.0 Using the DocumentsApi Class
The DocumentsApi class provides a convenient wrapper for all document management operations:
// Initialize the API client
const api = new DocumentsApi({
baseUrl: 'https://api.documents.ones-now.com',
accessToken: 'your-access-token',
refreshToken: 'your-refresh-token'
})
// Examples of common operations
const documents = await api.getDocuments()
const document = await api.getDocument('document-id')
const files = await api.getDocumentFiles('document-id')
const signatures = await api.getDocumentSignatures('document-id')
4.0 Using Standalone Functions
You can also use the individual functions directly:
import { getDocuments, getDocument, signatureRequest } from './requests'
// Get documents list
const documents = await getDocuments('https://api.example.com', {
accessToken: 'your-token',
queryParams: { limit: 10 }
})
// Get single document
const document = await getDocument('https://api.example.com', 'document-id', {
accessToken: 'your-token'
})
// Request signature
const signatureResult = await signatureRequest('https://api.example.com', formData, {
accessToken: 'your-token',
additionalHeaders: {'Content-Type': 'multipart/form-data'}
})
4.1 Signature Request (NodeJS)
Make a signature request using the signatureRequest function:
import axios from "axios"
import * as FormData from 'form-data'
const fs = require('fs')
import { signatureRequest } from "@ones.dev/documents-api"
const formData = new FormData.default()
formData.append('title', "Rentral Agreement")
formData.append('signing_parties', userId)
formData.append('issue_time', 1723708291)
formData.append('subject', 'Please sign')
formData.append('file', fs.createReadStream('./tests/assets/source_a4_vertical.pdf'))
const additionalHeaders = formData.getHeaders()
const response = await signatureRequest(
https://api.documents.ones-now.com,
formData,
{
accessToken,
additionalHeaders
},
)
5.0 Web Interface
A web interface to interact with the API is available at https://documents.ones-now.com.
- Upload and sign documents
- View document details like files and signatures
- Verify document signatures
