Fonts

Replaces font substitutions in the document layer

This endpoint allows you to replace font substitutions in the specified document layer. It will delete any existing font substitutions for the document layer and replace them with these new ones

If no font substitutions existed for the document layer prior, it will create them. Note that this endpoint does not affect the font substitutions specified in the font-substitutions.json configuration file, if any.

put/api/documents/{documentId}/layers/{layerName}/font_substitutions

Request

  • Base URL: http://localhost:5000
  • URL: http://localhost:5000/api/documents/{documentId}/layers/{layerName}/font_substitutions
  • Auth: one of:
    • API key in header Authorization
    • HTTP bearer

Path parameters

documentIdstring required

The document ID

layerNamestring required

The layer name

Headers

pspdfkit-pdf-passwordstring

The PDF document password.

The value can be either a plain-text password or a base64 encoded password in a form base64:<encoded-password>. Use the Base64 encoding if your password contains characters that are not allowed in HTTP header or would be otherwise mangled (e.g. trailing or leading spaces)

If the document is password protected, any operations performed on it require supplying a password.

Request body

Example request

{
  "fontSubstitutions": [
    {
      "pattern": "Roboto-*",
      "target": "Courier New"
    }
  ]
}

Response

List of font substitutions that were successfully created to replace the old ones

detailsstring

A text summary of the status of the request

request_idstring
result'partial_failure' | 'success' | 'failure'

If all the items in the batch request were successful, then the status will be a success. A partial_failure will occur if only a few of the items in the batch request succeeded. Failure is when none of the items in the batch succeed.

status200 | 400 | 500

HTTP status code for the request. The status code is 200 if the request was processed. This does not have anything to do with the result - the status code will be 200 even if part of the request failed. In the case of total failures such as malformed JSON, or document not found, this status will be other than 200.

Example response

{
  "details": "Operation was partially successful",
  "failingPaths": [
    {
      "path": "$.property[0]",
      "details": "Missing required property"
    }
  ],
  "data": [
    {
      "pattern": "Roboto-*",
      "target": "Courier New"
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.