Release Notes 2023-09-21
These changes have been deployed to priint:cloud on September 21st, 2023.
Authentication
Property Parameter Replaced in Token Requests
Prefer the new parameter scope in requests to POST /tenants/{tenant}/tokens over the old parameter role.
scopehas the same semantics asroleroleis deprecated and may be removed in the next major release
Rendering Service
New Priority Rules for Renderings
- For each project a maximum of parallel renderers is set.
- This maximum depends on the plan that is attached to the tenant or project.
- Effectively, the system monitors the average rendering time (with higher weight on the more recent renderings).
- The system will schedule the renderings in a project specific queue depending on the average rendering time so that the maximum of parallel renderers is not exceeded.
- This means that if a mass rendering is started then only a few renderings will start immediately while the others will wait in a queue and only render when they expiry from that queue.
- This also means that if the queue is still busy from a previous mass rendering request, then new rendering requests will just be added to the tail of the queue.
- Users will get an HTTP status of
429 Too Many Requestsif the queue is already full.
New Endpoint to List Open Tickets
GET /rest/tenants/{tenant}/projects/{project}/tickets
- Requires JOBS or ADMIN role on the project.
- Returns a JSON array of ticket IDs of jobs that have not yet completed.
- Not completed means that the ticket is still being processed in a queue or waiting to be processed and the final status is not yet defined. Since tickets may be rescheduled several times with delays in between depending on the configuration this can last for minutes or even hours in some cases, although it will be fast in most standard configurations.
- For details see the openapi specification.
New Endpoint to Get Ticket Status
GET /rest/tenants/{tenant}/projects/{project}/tickets/{ticket}/status
- Requires JOBS or ADMIN role on the project.
- Returns JSON object of type TicketStatusView containing fields like complete, created, updated, errorCode, next, processingMsecs, processingPages, redeliveries, status, etc.
- For open tickets the most interesting information may be in
nextproperty (the next step in the processing queue for this ticket likepriint-grid/queue/error) and in thestatusproperty (the completion status of the previous step in the queue for this ticket likerenderpdf.failed). - For details see the openapi specification.
New Endpoints to Get Ticket Artifact
GET /rest/tenants/{tenant}/projects/{project}/tickets/{ticket}/artifact
Content-Type: application/pdf
- Requires JOBS or ADMIN role on the project.
- Returns the PDF data in a stream.
- This is an alternative for the similar call to
GET /tenants/{tenant}/projects/{project}/storage/{filename}. - For details see the openapi specification.
GET /rest/tenants/{tenant}/projects/{project}/tickets/{ticket}/artifact
Content-Type: application/zip
- Requires JOBS or ADMIN role on the project.
- Returns all artifacts generated during rendering packed into a zip file.
- Which files are collected depends on the kind and success opf the rendering job. In case of a failed rendering it will contain comet.log, product data as xml, and optionally product list as xml. In case of success the PDF will also be part of this.
- For details see the openapi specification.
New Endpoint for renderpdf including images within a zip
POST /tenants/{tenant}/projects/{project}/renderpdf
Content-Type: application/zip
Accept: application/json
- Requires JOBS or ADMIN role on the project.
- Supports the same query parameters as the other calls to
POST /renderpdf. - The payload MUST be a zip file
- The zip MUST contain a file data.xml in the root.
- The zip MAY contain other resource files like images (png, jpg, pdf) or data (xml) in the root or in subfolders.
- Returns the same tickets list as result as the other calls to
POST /renderpdfwhen called withAccept: application/json. - For details see the openapi specification.
How to use the files in Comet?
- Comet users can retrieve the files within the zip using the
GRID_DATA_DIRenvironment variable in CSCRIPT or PYTHON.
New Endpoint for renderpdf for Synchronous Rendering
POST /tenants/{tenant}/projects/{project}/renderpdf
Content-Type: application/xml (or application/zip)
Accept: application/pdf
- Requires JOBS or ADMIN role on the project.
- Supports the same query parameters as the other calls to
POST /renderpdf. - Requires an additional query parameter
timeToWaitin msec (min is 6000 for 6 sec, max is 1200000 for 20 min). - The payload can be XML or ZIP. For details see the other variants for
POST /renderpdf. - Returns the generated PDF as result in case that the rendering succeeds before timeout.
- In case of timeout (HTTP_408) it returns the list of ticket IDs as the default
POST /renderpdfdoes. Behaving as an asynchronous job from then on. - For details see the openapi specification.
General
Tenant Name Requirements
We detailed the rules for checking tenant names.
- Tenant names should contain lowercase alphanumeric ASCII characters only with the following extensions:
- dash and underscore are allowed
- dot '.' is allowed as delimiter, i.e. each dot must be preceded and followed by one of the above characters
User Name Requirements
We detailed the rules for checking usernames.
- Usernames should contain lowercase alphanumeric ASCII characters only with the following extensions:
- dash and underscore are allowed
- dot '.' is allowed as delimiter, i.e. each dot must be preceded and followed by one of the above characters
- a single '@' character is allowed to delimit username and domain part if usernames are in email address style
Breaking Changes
- None
All Deprecations
- See Property Parameter Replaced in Token Requests (use 'scope' instead of 'role')
