{"_id":"@avss-tech/esign-sdk","_rev":"5-89818bc56f38fac93c96bf156a685f21","name":"@avss-tech/esign-sdk","dist-tags":{"latest":"1.0.4"},"versions":{"1.0.0":{"name":"@avss-tech/esign-sdk","version":"1.0.0","_id":"@avss-tech/esign-sdk@1.0.0","maintainers":[{"name":"haidar2022","email":"haidar@avsstech.com"}],"dist":{"shasum":"8d5e549ca978dedc9a9f2b7be4878ddd23cef10d","tarball":"https://registry.npmjs.org/@avss-tech/esign-sdk/-/esign-sdk-1.0.0.tgz","fileCount":22,"integrity":"sha512-cs1obfYEd5mZjStzWgbg0nWX2cDfwAJNh/NWibvAmxlOqWqTTN0kEFAD7gptS2z3cUl2hC37KOv9TwgtIYwo4g==","signatures":[{"sig":"MEUCIG/CurriYltp7LzytspVnM9wDUJC6jx+AS2VOuvApUnPAiEAkH9mGjXNezL0rTqKPGn7fJQiSoAQgxz8z4CohN7BSD0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":24286},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","scripts":{"test":"vitest","build":"tsup"},"_npmUser":{"name":"haidar2022","email":"haidar@avsstech.com"},"_npmVersion":"10.8.2","description":"Official Node.js SDK for AVSS eSign API","directories":{},"_nodeVersion":"20.19.6","dependencies":{"axios":"^1.13.6","form-data":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/esign-sdk_1.0.0_1773208037590_0.7694884188622746","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@avss-tech/esign-sdk","version":"1.0.1","_id":"@avss-tech/esign-sdk@1.0.1","maintainers":[{"name":"haidar2022","email":"haidar@avsstech.com"}],"dist":{"shasum":"6890e06dc1367997e5d3268fa3fbf25c44c79ee7","tarball":"https://registry.npmjs.org/@avss-tech/esign-sdk/-/esign-sdk-1.0.1.tgz","fileCount":22,"integrity":"sha512-XdQtv7/2Q4TDmomcRY4cCOLxYPMU7dMonvN/HN6WOG/750hn253UjdXEAWsC6wB0RDb9ndgWG0IjEtvJAdq/fg==","signatures":[{"sig":"MEUCIQDgFw6Y73VwnLuY0A6UFp4SE936nwuQ5lyF9reI6a/K+QIgHdpmGetjay+7Lhkk8evXrKoUEDIPZ91QYxxO4ZdA/tA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":28426},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","scripts":{"test":"vitest","build":"tsup"},"_npmUser":{"name":"haidar2022","email":"haidar@avsstech.com"},"_npmVersion":"10.8.2","description":"Official Node.js SDK for AVSS eSign API","directories":{},"_nodeVersion":"20.19.6","dependencies":{"axios":"^1.13.6","form-data":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/esign-sdk_1.0.1_1773208443166_0.9945401652131358","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@avss-tech/esign-sdk","version":"1.0.2","_id":"@avss-tech/esign-sdk@1.0.2","maintainers":[{"name":"haidar2022","email":"haidar@avsstech.com"}],"dist":{"shasum":"8f592004347f32887f3bac3ac319e4a0d1043038","tarball":"https://registry.npmjs.org/@avss-tech/esign-sdk/-/esign-sdk-1.0.2.tgz","fileCount":23,"integrity":"sha512-LZgUCNy1niTITsLcPYBHtOZJgVNJ9pTwa3cwRqJ/ad00te2DehdxdcdFkbV69lA/ngQ0k/IPCvrcCclVSvM9bQ==","signatures":[{"sig":"MEYCIQCzdc61hDL/yMtMPLf5fAoUP8IVjAJCgi+IezeZwE29igIhALQmnoRa9f92CgZjsZBYGjjO2JmDaXlBaiBLCmBCC6Rq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30119},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","scripts":{"test":"vitest","build":"tsup"},"_npmUser":{"name":"haidar2022","email":"haidar@avsstech.com"},"_npmVersion":"10.8.2","description":"Official Node.js SDK for AVSS eSign API","directories":{},"_nodeVersion":"20.19.6","dependencies":{"axios":"^1.13.6","form-data":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/esign-sdk_1.0.2_1773210539512_0.3156059377208147","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@avss-tech/esign-sdk","version":"1.0.3","_id":"@avss-tech/esign-sdk@1.0.3","maintainers":[{"name":"haidar2022","email":"haidar@avsstech.com"}],"dist":{"shasum":"790ed9377cb98190cfce86b0afe983f3debe2df4","tarball":"https://registry.npmjs.org/@avss-tech/esign-sdk/-/esign-sdk-1.0.3.tgz","fileCount":24,"integrity":"sha512-F5g3CS8eCaGQkaWg/xRKqS83qWsdBvhFSkPhmUnjsCkv7ZrqU4uUYGHg2yBfOR71nnohvlvb46HHHIguFROg2w==","signatures":[{"sig":"MEUCIDMEP1LHKc91uNO2tT9xIZW3EFYXIH5HPE4NxTRPY8a5AiEAroHFKqXAS/Qo9ASVPxZN+qbCWw+Df2Pp2wwkNiv/Mf0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":30732},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.mjs","scripts":{"test":"vitest","build":"tsup"},"_npmUser":{"name":"haidar2022","email":"haidar@avsstech.com"},"_npmVersion":"10.8.2","description":"Official Node.js SDK for AVSS eSign API","directories":{},"_nodeVersion":"20.19.6","dependencies":{"axios":"^1.13.6","form-data":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","typescript":"^5.9.3","@types/node":"^25.4.0"},"_npmOperationalInternal":{"tmp":"tmp/esign-sdk_1.0.3_1773220991531_0.03379526786381448","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@avss-tech/esign-sdk","version":"1.0.4","description":"Official Node.js SDK for AVSS eSign API","main":"dist/index.js","module":"dist/index.mjs","types":"dist/index.d.ts","scripts":{"build":"tsup","test":"vitest"},"dependencies":{"axios":"^1.13.6","form-data":"^4.0.0"},"devDependencies":{"@types/node":"^25.4.0","tsup":"^8.5.1","typescript":"^5.9.3"},"_id":"@avss-tech/esign-sdk@1.0.4","_nodeVersion":"20.19.6","_npmVersion":"10.8.2","dist":{"integrity":"sha512-H6dOexj1I2NyVFjOdBkq6I618bIf6fQzN5psLXrTA9GMDyYaXOnHLOijlbSiY2B8FmptQet7SAtweLV2qT/bew==","shasum":"69404ed6e39bd7c584b8130e8cc8cc70444535a5","tarball":"https://registry.npmjs.org/@avss-tech/esign-sdk/-/esign-sdk-1.0.4.tgz","fileCount":24,"unpackedSize":35343,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH4MyUfjPzric8OxEoLJQH8goxFSufBoztFgnB6QARdUAiBtnnaVv7rK9Nu5EkXeT8MG5o7AHTUHMheG3uIcBaORpg=="}]},"_npmUser":{"name":"haidar2022","email":"haidar@avsstech.com"},"directories":{},"maintainers":[{"name":"haidar2022","email":"haidar@avsstech.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/esign-sdk_1.0.4_1773223701444_0.28580957052930467"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-11T05:47:17.461Z","modified":"2026-03-11T10:08:21.714Z","1.0.0":"2026-03-11T05:47:17.828Z","1.0.1":"2026-03-11T05:54:03.317Z","1.0.2":"2026-03-11T06:28:59.664Z","1.0.3":"2026-03-11T09:23:11.685Z","1.0.4":"2026-03-11T10:08:21.564Z"},"description":"Official Node.js SDK for AVSS eSign API","maintainers":[{"name":"haidar2022","email":"haidar@avsstech.com"}],"readme":"# AVSS eSign SDK\r\n\r\n[![npm version](https://badge.fury.io/js/avss-esign-sdk.svg)](https://badge.fury.io/js/avss-esign-sdk)\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\r\n\r\nOfficial Node.js SDK for AVSS eSign platform - A comprehensive e-signature solution for digital document signing.\r\n\r\n## Features\r\n\r\n- 🚀 **Easy Integration**: Simple API for sending, managing, and tracking e-signature documents\r\n- 📄 **Document Management**: Send documents, templates, and track signing status\r\n- 🔐 **Secure**: Built with security best practices and API key authentication\r\n- 📱 **TypeScript Support**: Full TypeScript definitions for better developer experience\r\n- ⚡ **Fast**: Lightweight and optimized for performance\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm i @avss-tech/esign-sdk\r\n```\r\n\r\n## Quick Start\r\n\r\n```typescript\r\nimport { AvssEsign } from \"avss-esign-sdk\"\r\n\r\n// Initialize the SDK\r\nconst esign = new AvssEsign({\r\n  apiKey: \"sk_your_api_key_here\",\r\n  baseURL: \"https://api-saas-esign.avsstech.in\" // optional\r\n})\r\n\r\n// Send a document for signing\r\nconst result = await esign.documents.send({\r\n  file: \"./path/to/document.pdf\",\r\n  name: \"Loan Agreement\",\r\n  description: \"Loan agreement document\",\r\n  signers: [\r\n    {\r\n      name: \"John Doe\",\r\n      email: \"john@example.com\",\r\n      phone: \"+1234567890\"\r\n      signatureDetail: [\r\n            {\r\n                \"page\": 1,\r\n                \"coordinates\": [\r\n                {\r\n                    \"x\": 449,\r\n                    \"y\": 273,\r\n                    \"w\": 200,\r\n                    \"h\": 100\r\n                }\r\n                ]\r\n            }\r\n    ]\r\n    }\r\n  ],\r\n  signingOrder: \"sequential\",\r\n  message: \"Please review and sign this agreement\"\r\n})\r\n\r\nconsole.log(result)\r\n```\r\n\r\n## API Reference\r\n\r\n### Initialization\r\n\r\n```typescript\r\nconst esign = new AvssEsign({\r\n  apiKey: string,        // Required: Your API key\r\n  baseURL?: string,      // Optional: API base URL (defaults to production)\r\n  timeout?: number       // Optional: Request timeout in ms (default: 30000)\r\n})\r\n```\r\n\r\n### Documents API\r\n\r\n#### Send Document\r\n```typescript\r\nawait esign.documents.send(options: SendDocumentOptions)\r\n```\r\n\r\n**Parameters:**\r\n- `file`: Path to the PDF document\r\n- `name`: Document name\r\n- `description?`: Document description\r\n- `signers`: Array of signer objects\r\n- `signingOrder?`: \"parallel\" | \"sequential\"\r\n- `message?`: Message to signers\r\n\r\n#### List Documents\r\n```typescript\r\nawait esign.documents.list(page?: number, limit?: number)\r\n```\r\n\r\n#### Get Document\r\n```typescript\r\nawait esign.documents.get(documentId: string)\r\n```\r\n\r\n#### Get Document Status\r\n```typescript\r\nawait esign.documents.status(documentId: string)\r\n```\r\n\r\n#### Download Document\r\n```typescript\r\nawait esign.documents.download(documentId: string)\r\n```\r\n\r\n#### Send from Template\r\n```typescript\r\npayload = {\r\n  \"signers\": [\r\n    {\r\n      \"name\": \"Test1\",\r\n      \"email\": \"test1@gmail.com\",\r\n      \"phone\": \"9876000000\"\r\n    },\r\n    {\r\n      \"name\": \"Test2\",\r\n      \"email\": \"test2@gmail.com\",\r\n      \"phone\": \"9876000000\"\r\n    }\r\n  ],\r\n  \"signingOrder\": \"sequential\",\r\n  \"livePhoto\": true,\r\n}\r\nawait esign.documents.sendFromTemplate(templateId: string, payload: any)\r\n```\r\n\r\n## Examples\r\n\r\n### Send Document with Multiple Signers\r\n\r\n```typescript\r\nconst esign = new AvssEsign({ apiKey: \"sk_xxx\" })\r\n\r\nconst result = await esign.documents.send({\r\n  file: \"./contract.pdf\",\r\n  name: \"Service Agreement\",\r\n  signers: [\r\n    {\r\n      name: \"Alice Johnson\",\r\n      email: \"alice@company.com\",\r\n      phone: \"+1987654321\"\r\n      signatureDetail: [\r\n            {\r\n                \"page\": 1,\r\n                \"coordinates\": [\r\n                {\r\n                    \"x\": 449,\r\n                    \"y\": 273,\r\n                    \"w\": 200,\r\n                    \"h\": 100\r\n                }\r\n                ]\r\n            }\r\n    ]\r\n    },\r\n    {\r\n      name: \"Bob Smith\",\r\n      email: \"bob@client.com\",\r\n      phone: \"+1123456789\"\r\n      signatureDetail: [\r\n            {\r\n                \"page\": 1,\r\n                \"coordinates\": [\r\n                {\r\n                    \"x\": 449,\r\n                    \"y\": 273,\r\n                    \"w\": 200,\r\n                    \"h\": 100\r\n                }\r\n                ]\r\n            }\r\n    ]\r\n    }\r\n  ],\r\n  signingOrder: \"sequential\"\r\n})\r\n```\r\n\r\n### List and Download Documents\r\n\r\n```typescript\r\n// List documents\r\nconst documents = await esign.documents.list(1, 20)\r\n\r\n// Get specific document\r\nconst doc = await esign.documents.get(\"doc_123\")\r\n\r\n// Check status\r\nconst status = await esign.documents.status(\"doc_123\")\r\n\r\n// Download signed document\r\nconst signedDoc = await esign.documents.download(\"doc_123\")\r\n```\r\n\r\n## Error Handling\r\n\r\n```typescript\r\ntry {\r\n  const result = await esign.documents.send(documentOptions)\r\n} catch (error) {\r\n  if (error.statusCode === 401) {\r\n    console.log(\"Invalid API key\")\r\n  } else if (error.statusCode === 400) {\r\n    console.log(\"Invalid request:\", error.message)\r\n  } else {\r\n    console.log(\"API error:\", error.message)\r\n  }\r\n}\r\n```\r\n\r\n## Requirements\r\n\r\n- Node.js >= 14.0.0\r\n- npm or yarn\r\n\r\n## Contributing\r\n\r\nWe welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.\r\n\r\n## License\r\n\r\nMIT License - see [LICENSE](LICENSE) file for details.\r\n\r\n## Support\r\n\r\n- 📧 Email: support@avsstech.in\r\n- 📚 Documentation: [https://docs.avsstech.in](https://docs.avsstech.in)\r\n- 🐛 Issues: [GitHub Issues](https://github.com/avss-tech/avss-esign-sdk/issues)\r\n\r\n---\r\n\r\nMade with ❤️ by [AVSS Tech](https://avsstech.in)\r\n","readmeFilename":"README.md"}