How to PDF Create Fillable PDF Forms for Fillable PDF Forms in PHP and PDF.co Web API

What is PDF.co Web API? It is the REST API that provides a set of data extraction functions, tools for document manipulation, splitting and merging of PDF files. Includes built-in OCR, image recognition, it can generate and read barcodes from images, scans and PDF.

On-demand (REST Web API) version:
 Web API (on-demand version)

On-premise offline SDK for Windows:
 60 Day Free Trial (on-premise)

fillable-pdf-forms.php

      
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>PDF Create Fillable PDF Forms - Result</title> </head> <body> <?php // Get submitted form data $apiKey = $_POST["apiKey"]; // The authentication key (API Key). Get your own by registering at https://app.pdf.co/documentation/api // Prepare URL for HTML to PDF API call $url = "https://api.pdf.co/v1/pdf/edit/add"; // Prepare requests params // See documentation: https://apidocs.pdf.co $parameters = array(); // Direct URL of source PDF file. $parameters["url"] = "https://bytescout-com.s3-us-west-2.amazonaws.com/files/demo-files/cloud-api/pdf-edit/sample.pdf"; // Name of resulting file $parameters["name"] = "newDocument"; // If large input document, process in async mode by passing true $parameters["async"] = false; // Annotations Strings $annotations = '[{ "text":"sample prefilled text", "x": 10, "y": 30, "size": 12, "pages": "0-", "type": "TextField", "id": "textfield1" }, { "x": 100, "y": 150, "size": 12, "pages": "0-", "type": "Checkbox", "id": "checkbox2" }, { "x": 100, "y": 170, "size": 12, "pages": "0-", "link": "https://bytescout-com.s3-us-west-2.amazonaws.com/files/demo-files/cloud-api/pdf-edit/logo.png", "type": "CheckboxChecked", "id":"checkbox3" }]';// JSON string // Convert JSON string to Array $annotationsArray = json_decode($annotations, true); $parameters["annotations"] = $annotationsArray; // Create Json payload $data = json_encode($parameters); // Create request $curl = curl_init(); curl_setopt($curl, CURLOPT_HTTPHEADER, array("x-api-key: " . $apiKey, "Content-type: application/json")); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Execute request $result = curl_exec($curl); if (curl_errno($curl) == 0) { $status_code = curl_getinfo($curl, CURLINFO_HTTP_CODE); if ($status_code == 200) { $json = json_decode($result, true); if ($json["error"] == false) { $resultFileUrl = $json["url"]; // Display link to the file with conversion results echo "<div><h2>Result:</h2><a href='" . $resultFileUrl . "' target='_blank'>" . $resultFileUrl . "</a></div>"; } else { // Display service reported error echo "<p>Error: " . $json["message"] . "</p>"; } } else { // Display request error echo "<p>Status code: " . $status_code . "</p>"; echo "<p>" . $result . "</p>"; } } else { // Display CURL error echo "Error: " . curl_error($curl); } // Cleanup curl_close($curl); ?> </body> </html>

VIDEO

ON-PREMISE OFFLINE SDK

Get 60 Day Free Trial

See also:

ON-DEMAND REST WEB API

Get Your API Key

See also:

Related Pages:

Related Samples: