Welcome to the PlanetPress Connect REST API Cookbook11
Technical Overview12
Workflow & Workflow Processes13
Data Mapping14
Content Creation15
Job Creation16
Output Creation17
All-In-One18
Input Files20
Data Entities21
Data Set & Data Record Entities21
Content Set & Content Item Entities22
Job Set & Job Entities23
Workflow Operations25
Asynchronous Operations25
Synchronous Operations26
JSON Structures27
Common Structures27
Specific Structures30
Working Examples65
Getting Started66
Requirements & Installation67
Structure of the Working Examples69
HTML Input Placeholders & Multiple Value Fields71
Display of Working Example Results72
Using the Working Examples with Server Security74
Server Security & Authentication75
Authenticating with the Server76
Working with the File Store80
Uploading a Data File to the File Store81
Uploading a Data Mapping Configuration to the File Store87
Uploading a Design Template to the File Store93
Page 5
Uploading a Job Creation Preset to the File Store99
Uploading an Output Creation Preset to the File Store105
Working with the Entity Services111
Finding Specific Data Entities in the Server112
Finding all the Data Sets in the Server144
Finding the Data Records in a Data Set147
Finding all the Content Sets in the Server151
Finding the Content Items in a Content Set154
Finding all the Job Sets in the Server158
Finding the Jobs in a Job Set161
Working with the Workflow Services164
Running a Data Mapping Operation165
Running a Data Mapping Operation (Using JSON)172
Running a Data Mapping Operation for PDF/VT File (to Data Set)179
Running a Data Mapping Operation for PDF/VT File (to Content Set)186
Running a Content Creation Operation for Print193
Running a Content Creation Operation for Print By Data Record (Using JSON)200
Running a Content Creation Operation for Email By Data Record (Using JSON)207
Creating Content for Web By Data Record218
Creating Content for Web By Data Record (Using JSON)224
Running a Job Creation Operation (Using JSON)230
Running an Output Creation Operation237
Running an Output Creation Operation (Using JSON)245
Running an Output Creation Operation By Job (Using JSON)253
Running an All-In-One Operation (Using JSON)261
REST API Reference277
Authentication Service282
Service Handshake283
Authenticate/Login to Server284
Service Version286
Content Creation Service287
Service Handshake288
Process Content Creation289
Process Content Creation (By Data Record) (JSON)291
Create Preview PDF293
Create Preview PDF (JSON)295
Create Preview PDF (By Data Record)297
Page 6
Get All Operations299
Get Progress of Operation300
Get Result of Operation302
Cancel an Operation304
Service Version305
Content Item Entity Service306
Service Handshake307
Get Data Record for Content Item308
Get Content Item Properties310
Update Content Item Properties312
Update Multiple Content Item Properties314
Service Version316
Content Set Entity Service317
Get All Content Set Entities318
Get Content Items for Content Set319
Get Page Details for Content Set321
Delete Content Set Entity323
Get Content Set Properties325
Update Content Set Properties327
Service Version329
Data Record Entity Service330
Service Handshake331
Add Data Records332
Get Data Record Values334
Update Data Record Values336
Get Data Record Properties338
Update Data Record Properties340
Get Multiple Data Record Values342
Update Multiple Data Record Values344
Update Multiple Data Record Properties346
Service Version348
Data Set Entity Service349
Get All Data Set Entities350
Get Data Records for Data Set351
Delete Data Set Entity352
Get Data Set Properties354
Update Data Set Properties356
Page 7
Service Version358
Data Mapping Service359
Service Handshake360
Process Data Mapping361
Process Data Mapping (JSON)363
Process Data Mapping (PDF/VT to Data Set)366
Process Data Mapping (PDF/VT to Content Set)368
Get All Operations370
Get Progress of Operation371
Get Result of Operation373
Cancel an Operation375
Service Version376
Document Entity Service377
Service Handshake378
Get Document Metadata Properties379
Update Document Metadata Properties381
Service Version383
Document Set Entity Service384
Service Handshake385
Get Documents for Document Set386
Get Document Set Metadata Properties388
Update Document Set Metadata Properties390
Service Version392
Content Creation (Email) Service393
Service Handshake394
Process Content Creation (By Data Record) (JSON)395
Get All Operations397
Get Progress of Operation398
Get Result of Operation400
Cancel an Operation402
Service Version404
Entity Service405
Service Handshake406
Find Data Entity407
Service Version409
File Store Service410
Service Handshake411
Page 8
Download Managed File or Directory412
Delete Managed File or Directory414
Upload Data Mapping Configuration416
Upload Job Creation Preset418
Upload Data File420
Upload Design Template422
Upload Output Creation Preset424
Service Version426
Content Creation (HTML) Service427
Service Handshake428
Process Content Creation (By Data Record)429
Process Content Creation (By Data Record) (JSON)431
Get Template Resource433
Service Version435
Job Creation Service436
Service Handshake437
Process Job Creation438
Process Job Creation (JSON)440
Process Job Creation (JSON Job Set Structure)442
Get All Operations444
Get Progress of Operation445
Get Result of Operation447
Cancel an Operation449
Service Version450
Job Entity Service451
Service Handshake452
Get Content Items for Job453
Get Job Segments for Job455
Get Job Metadata Properties456
Update Job Metadata Properties458
Get Job Properties460
Update Job Properties462
Update Multiple Job Properties464
Service Version465
Job Segment Entity Service466
Service Handshake467
Get Document Sets for Job Segment468
Page 9
Get Job Segment Metadata Properties470
Update Job Segment Metadata Properties472
Service Version474
Job Set Entity Service475
Get All Job Set Entities476
Get Jobs for Job Set477
Delete Job Set Entity478
Get Job Set Metadata Properties480
Update Job Set Metadata Properties482
Get Job Set Properties484
Update Job Set Properties486
Service Version488
Output Creation Service489
Service Handshake490
Process Output Creation491
Process Output Creation (JSON)493
Process Output Creation (By Job) (JSON)495
Get All Operations497
Get Progress of Operation498
Get Result of Operation500
Get Result of Operation (as Text)502
Cancel an Operation504
Service Version505
All-In-One Service506
Service Handshake507
Process All-In-One (JSON)508
Process All-In-One (Adhoc Data)510
Get All Operations514
Get Progress of Operation515
Get Result of Operation517
Get Result of Operation (as Text)519
Cancel an Operation521
Service Version522
Copyright Information523
Legal Notices and Acknowledgments524
Page 10
Welcome to the PlanetPress Connect
REST API Cookbook
This guide is aimed at technically experienced users who wish to learn and use the REST API
available in PlanetPress Connect version 1.7.1.
The PlanetPress Connect REST API consists of many services that expose access to a
number of areas including workflow, data entity management and file store operations.
These services can be used to perform various interactions with the PlanetPress Connect
server such as:
l Upload & Manage Data Files, Data Mapping Configurations & Design Templates in File
Store
l Create, Manage & Find Data Entities internal to the PlanetPress Connect Server
l Create & Monitor Processing Operations within the Workflow
The REST API also supports added security to restrict unauthorized access to the services.
This guide is broken down into three sections:
l Technical Overview - Overview of the concepts and structures used in PlanetPress
Connect and the REST API
l Working Examples - Working examples of the PlanetPress Connect REST API in action
(HTML5 & JavaScript/jQuery)
l REST API Reference - A complete reference to the PlanetPress Connect REST API &
Services
It is recommended that the technical overview section be read first, followed by the working
examples, using the REST API reference for greater detail on implementing any specific
example.
Page 11
Technical Overview
This section provides an overview of the concepts and structures used within PlanetPress
Connect and the REST API.
l Workflow & Workflow Processes
l Input Files
l Data Entities
l Workflow Operations
l JSON Structures
Page 12
Workflow & Workflow Processes
The primary workflow in PlanetPress Connect consists of four major processes that each
require a number of inputs, and once executed, produce a particular form of output. These
processes are: data mapping, content creation, job creation and output creation.
There is an additional workflow process, named All-In-One, which embodies all four major
workflow processes in a singular process.
The following diagram illustrates the primary workflow in PlanetPress Connect:
Typically an individual workflow process (shown above in blue) will take one or more input files
as input (shown above in green), and will produce either intermediary output in the form of a
data entity (shown above in red), or final output in the form of print, web, or email based content
(depending on the context of the content produced) (shown above in yellow).
Input files to a workflow process include files such as data files, data mapping configurations
and design templates. In most cases an input file needs to be uploaded to the server file store
before it can be used in a workflow process. A file that has been uploaded to the file store is
known as a managed file, and managed files can be referenced via a unique identifier or name.
A data entity is simply a structured data artefact, produced as a result of an instance of a
workflow process known as a workflow operation. Data entities are stored internally to the
server and can also be referenced via a unique identifier.
Where a certain process depends on the output of the process before it, the data entity or
entities produced by the earlier process are used as an input to that process.
Page 13
Data Mapping
The data mapping process involves taking a data file or source, applying a data mapping
configuration to it, and producing a structured set of data or data records (a data set). This
process can also produce a data set or content set from a PDF/VTfile using its internal meta
data instead of a data mapping configuration.
The following diagram illustrates the default workflow for the data mapping process:
The following diagram illustrates the alternative workflow for the data mapping process when
using PDF/VT data files specifically:
Page 14
Content Creation
The content creation process involves taking either a data set or one or more data records (from
a data set), combining them with a suitable design template, and producing one or more sets of
content (content sets). If the content is for the Email or Web context then output can be
produced at this stage.
The following diagram illustrates the workflow for the content creation process:
Page 15
Job Creation
The job creation process involves taking one or more content sets and applying a job creation
preset for organizing, sorting and grouping them into a set of logical jobs (a job set). This
includes the application of data filtering and finishing options.
The following diagram illustrates the workflow for the job creation process:
Page 16
Output Creation
The output creation process involves taking either a job set or one or more jobs (from a job set),
applying an output creation preset, and producing the print output (Print context).
The following diagram illustrates the workflow for the output creation process:
Page 17
All-In-One
The All-In-One process embodies all four major workflow processes (data mapping, content
creation, job creation and output creation) in a singular process. It can be configured to run one
or more of the four processes, as long as the processes specified result in a logical sequence
or workflow.
Depending on it's configuration, the All-In-One process can produce either a data set, content
sets, a job set or print output (Print context).
The following diagram illustrates the potential inputs, outputs and workflows for the All-In-One
process:
The following table lists the available processes, input combinations and expected outputs for
the All-In-One process:
Page 18
ProcessesInput CombinationExpected
Output
Data Mapping OnlyData File + Data Mapping ConfigurationData Set
Data Mapping +
Content Creation
Content Creation OnlyData Records + Design TemplateContent Set(s)
Data File + Data Mapping Configuration +
Design Template + Output Creation Preset
Data File + Data Mapping Configuration +
Design Template + Job Creation Preset +
Output Creation Preset
Print Output
Print Output
Page 19
Input Files
Input files are used as input to a specific workflow process. The following table lists the types of
input files used in the PlanetPress Connect workflow:
There are many data entity types used by PlanetPress Connect, but not all data entities can be
accessed through the REST API. The main data entities to be aware of when working with the
API are:
l Data Sets
l Data Records
l Content Sets
l Content Items
l Job Sets
l Jobs
Data Set & Data Record Entities
The data set is the artefact produced by a data mapping operation. It holds the data that was
mapped out of the input data file. A data mapping operation produces a single data set, which
contains as many data records as there are documents.
Each data record contains a collection of data values. The data records in the data set form the
master record, or document record, which typically contains document recipient information.
The master record can also contain a collection of data tables, which form the detail records
that hold data such as invoice line items.
Each data table contains a collection of data records, where each data record contains a
collection of data values and a collection of data tables, and so on.
Page 21
The following diagram illustrates the basic relationship between these entities in the context of
the data mapping process:
The data set and data record entities (shown above in blue) are accessible via the Data Set
Entity and Data Record Entity services.
Content Set & Content Item Entities
The content set is the artefact produced by a content creation operation. It holds all the pages
that were produced by the operation. A content creation operation produces one or more
content sets, which contain as many content items as there were data records given at the start
of the operation.
Because the data records used may have different data set owners, a content set cannot be
linked to a single data set, but rather content items are linked to data records. A content item is
further divided into content sections and content pages.
The following diagram illustrates the basic relationship between these entities in the context of
the content creation process:
Page 22
The content set and content item entities (shown above in blue) are accessible via the Content
Set Entity and Content Item Entity services.
Job Set & Job Entities
The job set is the artefact produced by a job creation operation. It consists of a hierarchical
structure that divides documents into various structures and it basically decides which
documents are to be printed and in what order.
A job creation operation creates a single job set which contains a series of containers where
every level contains one or more of the next level down: jobs, job segments, document sets,
documents and document pages. The last level in the chain, the document pages, contains a
single content item. Hence, at the job creation level, a document may consist of one or more
content items.
The following diagram illustrates the basic relationship between these entities in the context of
the job creation process:
The job set and job entities (shown above in blue) are accessible via the Job Set Entity and
Job Entity services. The job segment, document set and document entities (also shown above
in blue) are accessible via the Job Segment Entity, Document Set Entity and Document Entity
services.
In summary, the following diagram illustrates the basic relationship between all data entities in
Page 23
the overall context of the primary workflow in PlanetPress Connect:
Page 24
Workflow Operations
Each individual process in the overall workflow can potentially be a long running operation.
Accordingly, there are two types of workflow operations possible in the PlanetPress Connect
REST API:
l Asynchronous – the operation is initiated, monitored, and the result returned using
multiple requests (Default)
l Synchronous – the operation is initiated and the result returned using a single request
Asynchronous Operations
Asynchronous workflow operations require the submission of an initial HTTP request to initiate
the operation. Then additional requests are required to monitor progress and retrieve the final
result. All the required detail is included in the HTTP response headers of the initial request,
including the URIs that should be used for further processing.
A successful request will return a response that will include the headers listed in the following
table:
HeaderDescription
operationIdThe unique id of the operation being processed
LinkContains multiple link headers which provide details on which URI to use to
retrieve further information on the operation:
l Header with rel="progress" - The URL to use to check the progress of
the operation
l Header with rel="result" - The URL to use to retrieve the result of the
operation
l Header with rel="cancel" - The URL to use to cancel the operation
A request made to the progress URI during processing will return a progress percentage value
of 0 to 100, and finally the value of ‘done’ once the operation has completed.
Page 25
A request made to the cancel URI during processing will immediately cancel the operation.
A request made to the result URI after processing has completed will return the final result of
the operation.
This is the default workflow operation type, and this approach is used across most workflow
based services as demonstrated in the Working with the Workflow Services page of the
Working Examples section.
Synchronous Operations
Synchronous workflow operations initiate the operation and retrieve the final result in a single
request.
There are no additional operation related headers returned, and there is no option to either
monitor progress or cancel a running operation.
This approach is only used by specific methods found in the All-In-One workflow service.
Page 26
JSON Structures
The PlanetPress Connect REST API uses various JSON structures to describe certain inputs
and outputs to resource methods.
These structures can be broken down into the following categories:
l Common - Structures that are commonly used throughout the REST API
l Specific - Structures that are used by a specific resource method or service in the REST
API
Common Structures
Common JSON structures used in the PlanetPress Connect REST API include the following:
JSON Identifier
Describes an identifier for a single data entity or managed file in PlanetPress Connect.
The structure consists of an object with a single name/value pair:
l identifier - the data entity or managed file identifier (type of number)
Example:
{
"identifier": 12345
}
JSON Identifier (Named)
Describes a named identifier for a single managed file in PlanetPress Connect.
The structure consists of an object with a single name/value pair:
l identifier - the managed file named identifier (type of string)
Example:
{
"identifier": "Promo-EN-1000.csv"
Page 27
}
JSON Identifier List
Describes a list of identifiers for multiple data entities in PlanetPress Connect.
The structure consists of an object with a single name/value pair:
l identifiers - an array of data entity identifiers (type of number)
Example:
{
"identifiers": [ 12345, 23456, 34567 ]
}
JSON Name/Value List (Properties Only)
Describes a list of properties (each as a name/value pair).
The structure consists of an array of objects each with the following name/value pairs:
l name - the name of the property (type of string)
l value - the value of the property (type of string)
Example:
[
{
"name": "start",
"value": "2015-01-01 00:00:00T-0500"
},
{
"name": "end",
"value": "2015-12-31 23:59:59T-0500"
}
]
JSON Name/Value List
Describes a list of properties (each as a name/value pair) for a data entity of a specific ID.
The structure consists of an object with the following name/value pairs:
Page 28
l id - the data entity identifier (type of number)
l properties - the data entity properties, consisting of an array of objects each with the
following name/value pairs:
l name - the name of the property (type of string)
l value - the value of the property (type of string)
Example:
{
"id": 12345,
"properties": [
{
"name": "start",
"value": "2015-01-01 00:00:00T-0500"
},
{
"name": "end",
"value": "2015-12-31 23:59:59T-0500"
}
]
}
JSON Name/Value Lists
Describes multiple lists of properties (as name/value pairs) for data entities of a specific ID.
The structure consists of an array of JSON Name/Value List structure objects.
Example:
[
{
"id": 12345,
"properties": [
{
"name": "start",
"value": "2015-01-01 00:00:00T-0500"
},
{
"name": "end",
"value": "2015-12-31 23:59:59T-0500"
Page 29
}
]
},
{
"id": 23456,
"properties": [
{
"name": "start",
"value": "2015-01-01 00:00:00T-0500"
},
{
"name": "end",
"value": "2015-12-31 23:59:59T-0500"
}
]
}
]
Specific Structures
Specific JSON structures used in the PlanetPress Connect REST API include the following:
JSON Identifier (with createOnly flag)
Describes an identifier for a single job set entity, along with additional parameters used
specifically in an output creation operation.
The structure consists of an object with the following name/value pairs:
l identifier - the job set entity identifier (type of number)
l createOnly - flag to specify if output is to be only created in the server and not sent to it's
final destination (type of boolean)
Example:
{
"identifier": 12345,
"createOnly": true
}
Page 30
Loading...
+ 494 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.