openapi: 3.0.3 info: title: PDFShift API Documentation account Convert API version: '3.0' description: 'This is the documentation for the PDFShift API. Our aim here is to provide you with a clear, concise and complete set of tool to generate the PDF you want. Don''t forget to add the `sandbox` parameter to `True` while testing the API, this won''t use your credits and generate free PDF (with a watermark). But if you forgot to set it, don''t worry ; Send us a message and we''ll reset your credits usage.' termsOfService: https://pdfshift.io/terms contact: name: PDFShift url: https://pdfshift.io email: support@pdfshift.io x-logo: url: https://pdfshift.io/images/favicons/android-chrome-512x512.png servers: - url: https://api.pdfshift.io/v3 description: '' x-last-modified: 1764750693905 security: - apiKeyHeader: [] tags: - name: Convert paths: /convert/pdf: post: tags: - Convert summary: Convert to PDF x-mint: content: 'Convert a given HTML document to a PDF file. You can provide the HTML source directly, or a URL to fetch it from. Numerous options are available to customize the generated PDF document. Please note that the response from this endpoint will vary depending on some parameters. You can read more at [Varying responses](/docs/varying-responses). ' parameters: - name: X-Processor-Version in: header description: 'Specifies the Chromium version that will be used for the conversion. Right now, only "116" and "142" are accepted. All new users are automatically using the latest version.' required: false schema: type: string enum: - '116' - '142' requestBody: required: true content: application/json: schema: allOf: - $ref: '#/components/schemas/ConvertForm' - type: object properties: landscape: type: boolean default: false description: Will set the view in landscape mode instead of portrait. format: type: string default: A4 description: 'Format of the document. You can either use the standard values (Letter, Legal, Tabloid, Ledger, A0, A1, A2, A3, A4, A5) or a custom `{width}x{height}` value. For `{width}` and `{height}`, you can indicate the following units: in, cm, mm. . The `{height}` value can be replaced by `auto` to automatically adjust the height to the content. For instance, pasing the format `1024xauto` will set the page width to 1024px and the height to the content height.' disable_backgrounds: type: boolean default: false description: The final document will not have the background images. remove_blank: type: boolean default: false description: Will analyze the last page of the document. If no content is present in it, the page will be removed. But note that if there are remaining hidden data, header or footer that have been pushed to that page, the page will be kept. pages: type: string default: null description: 'Pages to print. Can be one number (`3`), a range (`1-5`), a list (`4,5,6`) or a combination of both (`1-3,6,7`). If the number is higher than the real number of pages, that number will be ignored.' zoom: type: number minimum: 0.1 maximum: 2 default: 1 description: 'A value between 0.1 and 2. Allows you to increase the zoom in the document for specific purposes. 1 is the default zoom, lower is smaller, higher is bigger.' margin: oneOf: - $ref: '#/components/schemas/MarginForm' - type: string - type: integer default: null description: Empty spaces between the outer and the beginning of the content. See the [Margin](/docs/margin) section for more details. header: $ref: '#/components/schemas/CustomHeaderFooter' description: 'Defines a custom header. **Note**: The footer and header are Independent from the rest of the document. As such, the CSS style defined in your body won''t apply on your header/footer. To style your header/footer, you need to set a specific style either using