Chilkat Online Tools

delphiAx / PandaDoc API Reference / Create Document from PDF (Form Fields)

Back to Collection Items

var
http: TChilkatHttp;
success: Integer;
req: TChilkatHttpRequest;
resp: IChilkatHttpResponse;

begin
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

http := TChilkatHttp.Create(Self);

req := TChilkatHttpRequest.Create(Self);
req.HttpVerb := 'POST';
req.Path := '/public/v1/documents';
req.ContentType := 'multipart/form-data';
success := req.AddFileForUpload2('file',' path to file','application/octet-stream');

req.AddHeader('Authorization','API-Key {{api_key}}');
req.AddHeader('Expect','100-continue');

resp := http.SynchronousRequest('api.pandadoc.com',443,1,req.ControlInterface);
if (http.LastMethodSuccess = 0) then
  begin
    Memo1.Lines.Add(http.LastErrorText);
    Exit;
  end;

Memo1.Lines.Add(IntToStr(resp.StatusCode));
Memo1.Lines.Add(resp.BodyStr);

Curl Command

curl -X POST
	-H "Authorization: Bearer {{access_token}}"
	-H "Authorization: API-Key {{api_key}}"
	-H "Content-Type: multipart/form-data"
	--form 'file=@"/path/to/file"'
https://api.pandadoc.com/public/v1/documents

Postman Collection Item JSON

{
  "name": "Create Document from PDF (Form Fields)",
  "event": [
    {
      "listen": "test",
      "script": {
        "exec": [
          "var jsonData = JSON.parse(responseBody);",
          "if (jsonData.uuid !== undefined) {",
          "    postman.setEnvironmentVariable(\"document_id\", jsonData.uuid);",
          "}"
        ],
        "type": "text/javascript"
      }
    }
  ],
  "request": {
    "method": "POST",
    "header": [
      {
        "key": "Authorization",
        "value": "Bearer {{access_token}}",
        "disabled": true
      },
      {
        "key": "Authorization",
        "value": "API-Key {{api_key}}",
        "type": "text"
      },
      {
        "key": "Content-Type",
        "value": "multipart/form-data"
      }
    ],
    "body": {
      "mode": "formdata",
      "formdata": [
        {
          "key": "file",
          "value": "",
          "type": "file"
        },
        {
          "key": "data",
          "value": "{  \n    \"name\": \"Sample Document from PDF with Form Fields\",\n    \"recipients\": [  \n        {  \n            \"email\": \"{{recipient_email}}\",\n            \"first_name\": \"Josh\",\n            \"last_name\": \"Ron\",\n            \"role\": \"user\",\n            \"signing_order\": 1\n        },\n        {  \n            \"email\": \"john@example.com\",\n            \"first_name\": \"John\",\n            \"last_name\": \"Roe\",\n            \"signing_order\": 2\n        }\n    ],\n    \"fields\": {  \n        \"userName\": {  \n            \"value\": \"Jane\",\n            \"role\": \"user\"\n        },\n        \"homeAddress\": {\n            \"value\": \"\",\n            \"role\": \"user\"\n        },\n        \"like\": {  \n            \"value\": true,\n            \"role\": \"user\"\n        },\n        \"signature\": {  \n            \"value\": \"\",\n            \"role\": \"user\"\n        }\n    },\n    \"metadata\": {\n        \"salesforce.opportunity_id\": \"123456\",\n        \"my_favorite_pet\": \"Panda\"\n    },\n    \"tags\": [\n        \"created_via_api\",\n        \"test_document\"\n\t], \n    \"parse_form_fields\": true\n}",
          "type": "text"
        }
      ]
    },
    "url": {
      "raw": "https://api.pandadoc.com/public/v1/documents",
      "protocol": "https",
      "host": [
        "api",
        "pandadoc",
        "com"
      ],
      "path": [
        "public",
        "v1",
        "documents"
      ]
    },
    "description": "For details and the sample PDF go to [https://developers.pandadoc.com/v1/reference#section-pdf-form-fields](https://developers.pandadoc.com/v1/reference#section-pdf-form-fields).\n\nFor details about document creation from PDF go to [https://developers.pandadoc.com/v1/reference#create-document-from-pdf](https://developers.pandadoc.com/v1/reference#create-document-from-pdf).\n\nFor details of document creation in general go to [https://developers.pandadoc.com/v1/reference#new-document](https://developers.pandadoc.com/v1/reference#new-document)."
  },
  "response": [
  ]
}