Tài liệu API cho tạo chữ ký
Tạo chữ ký viết tay ngay từ mã của bạn. REST API đơn giản, xác thực bằng khóa, các định dạng PNG · SVG · JPG · PDF và giới hạn rõ ràng theo gói.
⚡ Bắt đầu nhanh
Ba bước từ đăng ký đến chữ ký đầu tiên của bạn.
Lấy khóa
Tạo khóa API của bạn trên trang API trong tài khoản. Khóa đầy đủ chỉ hiển thị một lần.
Gửi một yêu cầu
Gửi POST đến /api/v1/signatures kèm tên và họ.
Nhận chữ ký của bạn
Phản hồi chứa chữ ký ở định dạng đã chọn (PNG, SVG, JPG hoặc PDF) và mã hash để tạo lại.
🔗 URL cơ sở
Tất cả phản hồi đều là JSON. Khi thành công: { "success": true, "data": {…}, "meta": {…} }; khi lỗi: { "success": false, "error": { "code", "message" } }.
https://onlinesignatures.net/api/v1
🔑 Xác thực
Mỗi yêu cầu cần một token Bearer trong header Authorization. Tạo và quản lý khóa trên trang API trong tài khoản — khóa đầy đủ chỉ hiển thị một lần.
curl https://onlinesignatures.net/api/v1/usage \ -H "Authorization: Bearer sk_live_your_token"
🎨 Định dạng đầu ra
Theo mặc định, chữ ký được trả về dưới dạng PNG nền trong suốt. Thêm tham số format để nhận định dạng khác — việc này không tốn thêm hạn mức.
png
mặc địnhNền trong suốt. Tốt nhất để chèn lên tài liệu.
svg
cho webChữ ký được gói trong SVG — dễ thay đổi kích thước và nhúng vào HTML.
jpg
nhẹNền trắng, kích thước tệp nhỏ nhất.
Một tệp PDF sẵn dùng có chữ ký.
format_not_allowed (403).| Kế hoạch | Khóa | Yêu cầu / tháng | Yêu cầu / phút | PNG | SVG | JPG | |
|---|---|---|---|---|---|---|---|
| API Start | 4 | 5 000 | 50 | ✓ | — | — | — |
| API Pro | 5 | 60 000 | 300 | ✓ | ✓ | ✓ | — |
| API Business | 15 | 250 000 | 5 000 | ✓ | ✓ | ✓ | ✓ |
| API Scale | 50 | 1 000 000 | 3 000 | ✓ | ✓ | ✓ | ✓ |
Khóa = số khóa API bạn có thể tạo trong gói này. Yêu cầu / tháng là hạn mức chính; yêu cầu / phút là giới hạn chống dồn dập.
🔍 Chất lượng hình ảnh
Theo mặc định, chữ ký được trả về ở chất lượng tiêu chuẩn (1×). Thêm tham số quality để có hình ảnh lớn và sắc nét hơn: 2× gấp đôi số điểm ảnh, 4× gấp bốn lần. Không tốn thêm hạn mức.
quality: 1
mặc địnhKích thước tiêu chuẩn. Phù hợp cho màn hình và trang web.
quality: 2
sắc nét hơnGấp đôi điểm ảnh. Sắc nét hơn trong tài liệu và trên màn hình mật độ cao.
quality: 4
tối đaGấp bốn lần điểm ảnh. Tốt nhất để in và khổ lớn.
curl -X POST https://onlinesignatures.net/api/v1/signatures \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: application/json" \ -d '{"first_name":"Signature", "last_name":"Generator", "format":"png", "quality":4}'
quality_not_allowed (403) và yêu cầu không bị tính.Cùng một chữ ký ở chất lượng khác
Để lấy đúng chữ ký đó ở chất lượng khác, hãy lưu hash từ phản hồi và yêu cầu lại bằng POST /api/v1/signatures/replay. Mỗi lần gọi tính là một yêu cầu.
curl -X POST https://onlinesignatures.net/api/v1/signatures/replay \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: application/json" \ -d '{"hash":"eyJpdiI6...", "format":"png", "quality":4}'
Tạo chữ ký hoàn toàn mới từ họ và tên.
curl -X POST https://onlinesignatures.net/api/v1/signatures \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: application/json" \ -d '{"first_name":"Signature", "last_name":"Generator"}'
curl -X POST https://onlinesignatures.net/api/v1/signatures \ -H "Authorization: Bearer sk_live_..." \ -H "Content-Type: application/json" \ -d '{"first_name":"Signature", "last_name":"Generator", "format":"pdf"}'
Tham số
{
"success": true,
"data": {
"id": 1842,
"hash": "eyJpdiI6...",
"format": "pdf",
"mime": "application/pdf",
"signature": "data:application/pdf;
base64,JVBER..."
},
"meta": { "quota": { "remaining":179 } }
}
{
"success": false,
"error": {
"code": "format_not_allowed",
"message": "The pdf format is
not available on
your plan."
}
}
Tạo lại một chữ ký đã tạo trước đó theo hash. Bạn cũng có thể đặt định dạng qua ?format=.
curl "https://onlinesignatures.net/api/v1/signatures/{hash}?format=svg" \ -H "Authorization: Bearer sk_live_your_token"
Trả về gói của bạn, các định dạng khả dụng, hạn mức hằng tháng, mức đã dùng và thời điểm đặt lại.
{
"success": true,
"data": {
"plan": "Business",
"formats": ["png", "svg", "jpg"],
"rate_per_minute": 1000,
"key": { "name": "Production", "masked": "sk_live_a1b2…8f9c" },
"quota": { "limit": 500, "used": 321, "remaining": 179 }
}
}
⏱️ Giới hạn và hạn mức
Hạn mức hằng tháng là giới hạn chính và phụ thuộc vào gói của bạn (xem Gói API). Ngoài ra, giới hạn số yêu cầu mỗi phút (cũng theo gói) bảo vệ khỏi các đợt tăng đột biến. Phản hồi có các header X-Quota-Limit, X-Quota-Remaining và X-Quota-Reset để bạn tự điều tiết. Đổi định dạng không tốn thêm hạn mức: một lần tạo = một yêu cầu.
⚠️ Mã lỗi
💬 Hỏi và đáp
Đổi định dạng có tốn thêm hạn mức không?
Không. Một lần tạo là một yêu cầu, bất kể định dạng đầu ra.
Có những định dạng nào?
PNG, SVG, JPG và PDF. Tập hợp định dạng khả dụng phụ thuộc vào gói của bạn.
Điều gì xảy ra nếu tôi yêu cầu định dạng không có trong gói?
API trả về lỗi format_not_allowed (403) và không tính yêu cầu đó.
Tham số quality dùng để làm gì?
Thêm "quality": 1, 2 hoặc 4 vào yêu cầu để có chữ ký sắc nét và chi tiết hơn. 1× là chất lượng tiêu chuẩn; 2× và 4× sắc nét hơn. Gói Start gồm 1×; Pro và các gói cao hơn gồm 1×, 2× và 4×. Không tốn thêm hạn mức.
Làm sao lấy cùng một chữ ký ở 1× và 4×?
Tạo chữ ký một lần và lưu hash từ phản hồi. Sau đó gửi POST /api/v1/signatures/replay với hash đó và quality 1, rồi 4 — tên và nét hoa văn giữ nguyên, chỉ độ sắc nét thay đổi.