<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.safestamper.com/index.php?action=history&amp;feed=atom&amp;title=Signature%2Fsign-pdf</id>
	<title>Signature/sign-pdf - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.safestamper.com/index.php?action=history&amp;feed=atom&amp;title=Signature%2Fsign-pdf"/>
	<link rel="alternate" type="text/html" href="https://wiki.safestamper.com/index.php?title=Signature/sign-pdf&amp;action=history"/>
	<updated>2026-05-05T02:34:16Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://wiki.safestamper.com/index.php?title=Signature/sign-pdf&amp;diff=87&amp;oldid=prev</id>
		<title>Adminwiki: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://wiki.safestamper.com/index.php?title=Signature/sign-pdf&amp;diff=87&amp;oldid=prev"/>
		<updated>2023-10-17T11:27:28Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 07:27, 17 October 2023&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Adminwiki</name></author>
	</entry>
	<entry>
		<id>https://wiki.safestamper.com/index.php?title=Signature/sign-pdf&amp;diff=86&amp;oldid=prev</id>
		<title>api&gt;Admin at 07:20, 6 October 2021</title>
		<link rel="alternate" type="text/html" href="https://wiki.safestamper.com/index.php?title=Signature/sign-pdf&amp;diff=86&amp;oldid=prev"/>
		<updated>2021-10-06T07:20:27Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Uploads a PDF document for signing&lt;br /&gt;
&lt;br /&gt;
This operation must use an &amp;#039;&amp;#039;&amp;#039;HTTP multipart/form-data post request&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
You can send an HTML text instead using [[signature/sign]].&lt;br /&gt;
&lt;br /&gt;
For each signature, the signer name and email or phone number must be provided.&lt;br /&gt;
&lt;br /&gt;
An email or SMS will be sent to each document signer with an URL they must visit to sign the document.&lt;br /&gt;
When all signers have added their signature, a signature certificate will be generated and sent to all the document signers, and to the document sender e-mail address if specified.&lt;br /&gt;
&lt;br /&gt;
Document signing process status can be queried using [[signature/status]].&lt;br /&gt;
&lt;br /&gt;
If your API client has a [[API Overview#API callbacks|callback URL]], it will receive the following callbacks:&lt;br /&gt;
* DOCUMENT_SIGNATURE: When a signer signs the document&lt;br /&gt;
* SIGNATURE_CERTIFICATE: When the document signature certificate is ready&lt;br /&gt;
&lt;br /&gt;
These callbacks receive the same JSON as returned from [[signature/status]].&lt;br /&gt;
&lt;br /&gt;
= URL =&lt;br /&gt;
&amp;lt;nowiki&amp;gt;https://www.safestamper.com/api/signature/sign-pdf&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Parameters =&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;sharedkey&amp;#039;&amp;#039;&amp;#039;: Your API client shared key&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;authkey&amp;#039;&amp;#039;&amp;#039;: Authkey to certificate as authorized user (not needed if your shared key is already linked to your user) &lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;pdf&amp;#039;&amp;#039;&amp;#039;: PDF document to sign&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;title&amp;#039;&amp;#039;&amp;#039;: Document title&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;lang&amp;#039;&amp;#039;&amp;#039;: Language to use in this document for the signatures page and for communication with signers (en,es)&lt;br /&gt;
** &amp;#039;&amp;#039;en&amp;#039;&amp;#039;: English&lt;br /&gt;
** &amp;#039;&amp;#039;es&amp;#039;&amp;#039;: Spanish (default)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;signaturemode&amp;#039;&amp;#039;&amp;#039;: How the signers will sign the document (default: GRAPHIC)&lt;br /&gt;
** &amp;#039;&amp;#039;GRAPHIC&amp;#039;&amp;#039;: Graphic signature&lt;br /&gt;
** &amp;#039;&amp;#039;SMS&amp;#039;&amp;#039;: One-time code sent by SMS&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;sendername&amp;#039;&amp;#039;&amp;#039;: Name of the person or organization that sends this document to its signers. It will be referenced in the e-mail that the signers receive.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;senderemail&amp;#039;&amp;#039;&amp;#039;: E-mail address of the person or organization that sends this document to its signers (optional). If included, the signed document certificate will also be sent to this e-mail address.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;signername&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;: Signer name for signature N&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;notifymode&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;: How to send the signature link to signer N (default: EMAIL)&lt;br /&gt;
** &amp;#039;&amp;#039;EMAIL&amp;#039;&amp;#039;: Send link by e-mail&lt;br /&gt;
** &amp;#039;&amp;#039;SMS&amp;#039;&amp;#039;: Send link by SMS&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;signeremail&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;: Signer e-mail address for signature N. Required for EMAIL notifymode&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;signerphone&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;: Signer mobile phone number for signature N. Required for SMS notifymode&lt;br /&gt;
** Phone number must include country prefix and no spaces or hyphens (eg. +34123456789)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;signerlang&amp;#039;&amp;#039;N&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;: Language for communication with signer N. Optional, defaults to document language (lang parameter).&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;signature&amp;#039;&amp;#039;&amp;#039;: Parameters signature, as explained in [[Signature parameter]]&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;NOTE:&amp;#039;&amp;#039;&amp;#039; When calculating the signature use the file name as the value of &amp;#039;&amp;#039;pdf&amp;#039;&amp;#039; parameter&lt;br /&gt;
&lt;br /&gt;
= Returns =&lt;br /&gt;
&lt;br /&gt;
A JSON object, as returned by [[signature/status]] with the following fields:&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;code&amp;#039;&amp;#039;&amp;#039;: Code of the document,&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;title&amp;#039;&amp;#039;&amp;#039;: Title of the document,&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;entryDate&amp;#039;&amp;#039;&amp;#039;: Date when the document was sent to sign&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;senderName&amp;#039;&amp;#039;&amp;#039;: Name of sender&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;senderEmail&amp;#039;&amp;#039;&amp;#039;: Email of the sender&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;state&amp;#039;&amp;#039;&amp;#039;: State of the document (PENDING, SIGNED)&lt;br /&gt;
** &amp;#039;&amp;#039;PENDING&amp;#039;&amp;#039;: The document has been sent to its signers, but not all signatures have been received yet.&lt;br /&gt;
** &amp;#039;&amp;#039;SIGNED&amp;#039;&amp;#039;: The document has been signed by all its signers and is ready for download.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;certificateCode&amp;#039;&amp;#039;&amp;#039;: Signature certificate code for SIGNED documents&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;certificateUrl&amp;#039;&amp;#039;&amp;#039;: Download URL for SIGNED documents&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;signatures&amp;#039;&amp;#039;&amp;#039;: Signatures data&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;signerName&amp;#039;&amp;#039;&amp;#039;: Name of signer&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;signerEmail&amp;#039;&amp;#039;&amp;#039;: Email of signer&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;state&amp;#039;&amp;#039;&amp;#039;: State of this signature&lt;br /&gt;
*** &amp;#039;&amp;#039;PENDING&amp;#039;&amp;#039;: This signer has not signed the document yet.&lt;br /&gt;
*** &amp;#039;&amp;#039;SIGNED&amp;#039;&amp;#039;: This signer has signed the document.&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;signerIP&amp;#039;&amp;#039;&amp;#039;: IP from which the document was signed (for SIGNED signatures)&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;signatureDate&amp;#039;&amp;#039;&amp;#039;: Date when the document was signed (for SIGNED signatures)&lt;br /&gt;
&lt;br /&gt;
= HTTP Errors =&lt;br /&gt;
&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;401&amp;#039;&amp;#039;&amp;#039; Unauthorized, the authkey is not valid&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;403&amp;#039;&amp;#039;&amp;#039; Forbidden, the sharedkey or signature are not valid&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;400&amp;#039;&amp;#039;&amp;#039; Parameter errors&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;429&amp;#039;&amp;#039;&amp;#039; Your Safe Stamper user has no certification credits available&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;430&amp;#039;&amp;#039;&amp;#039; Your Safe Stamper user has no storage space available&lt;br /&gt;
&lt;br /&gt;
= Example =&lt;br /&gt;
&lt;br /&gt;
REQUEST:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
https://www.safestamper.com/api/signature/sign-pdf&lt;br /&gt;
&lt;br /&gt;
Content-Type: multipart/form-data;&lt;br /&gt;
boundary=90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;authkey&amp;quot;&lt;br /&gt;
&lt;br /&gt;
0dbb406d-cc0c-4ef8-ae80-971ed108c2f9&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;sharedkey&amp;quot;&lt;br /&gt;
&lt;br /&gt;
axvmfqn8aex21mxhq5zsj7l482saxfu7j4hh&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;lang&amp;quot;&lt;br /&gt;
&lt;br /&gt;
en&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;title&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Test PDF&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;sendername&amp;quot;&lt;br /&gt;
&lt;br /&gt;
John Doe&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;senderemail&amp;quot;&lt;br /&gt;
&lt;br /&gt;
johndoe@example.com&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;signername1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Anne Example&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;signeremail1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
anne@example.com&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;signername2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Bernie Beans&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;signeremail2&amp;quot;&lt;br /&gt;
&lt;br /&gt;
bernie@example.com&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;signature&amp;quot;&lt;br /&gt;
&lt;br /&gt;
508c8bf78d43577f1d41db0c7a3c67c07518681c&lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd&lt;br /&gt;
Content-Disposition: form-data; name=&amp;quot;pdf&amp;quot;; filename=&amp;quot;lipsum.pdf&amp;quot;&lt;br /&gt;
Content-Type: null&lt;br /&gt;
&lt;br /&gt;
&amp;lt;&amp;lt;&amp;lt; PDF contents &amp;gt;&amp;gt;&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
--90503bb6-f5b0-410f-97da-e86041ce17cd--&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
RESPONSE:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;code&amp;quot;:&amp;quot;0cdfbc8d-f9ad-4bb5-ba3b-2d33fe2d03bc&amp;quot;,&lt;br /&gt;
    &amp;quot;title&amp;quot;:&amp;quot;Test PDF&amp;quot;,&lt;br /&gt;
    &amp;quot;senderName&amp;quot;:&amp;quot;John Doe&amp;quot;,&lt;br /&gt;
    &amp;quot;senderEmail&amp;quot;:&amp;quot;jguillo@gmail.com&amp;quot;,&lt;br /&gt;
    &amp;quot;state&amp;quot;:&amp;quot;PENDING&amp;quot;,&lt;br /&gt;
    &amp;quot;entryDate&amp;quot;:&amp;quot;2020-09-16T10:38:05Z&amp;quot;,&lt;br /&gt;
    &amp;quot;signatures&amp;quot;:[&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;signerName&amp;quot;:&amp;quot;Anne Example&amp;quot;,&lt;br /&gt;
            &amp;quot;signerEmail&amp;quot;:&amp;quot;anne@example.com&amp;quot;,&lt;br /&gt;
            &amp;quot;state&amp;quot;:&amp;quot;PENDING&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;signerName&amp;quot;:&amp;quot;Bernie Beans&amp;quot;,&lt;br /&gt;
            &amp;quot;signerEmail&amp;quot;:&amp;quot;bernie@example.com&amp;quot;,&lt;br /&gt;
            &amp;quot;state&amp;quot;:&amp;quot;PENDING&amp;quot;&lt;br /&gt;
        }&lt;br /&gt;
    ]&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>api&gt;Admin</name></author>
	</entry>
</feed>