openapi: 3.0.1 info: title: PDF Generator Documents Workspaces API description: Template-based document and PDF generation API. Merge JSON data with reusable templates to produce PDFs and other documents synchronously, asynchronously, or in batches, manage templates and their data fields, and partition work across multi-tenant workspaces. All requests are authenticated with a short-lived JSON Web Token (JWT) signed (HS256) using your API secret, with your API key as the issuer (iss) and the workspace identifier as the subject (sub). termsOfService: https://pdfgeneratorapi.com/terms contact: name: PDF Generator API Support url: https://pdfgeneratorapi.com email: support@pdfgeneratorapi.com version: '4.0' servers: - url: https://us1.pdfgeneratorapi.com/api/v4 description: Production base URL security: - JWT: [] tags: - name: Workspaces description: Manage multi-tenant workspaces within the organization. paths: /workspaces: get: operationId: getWorkspaces tags: - Workspaces summary: Get all workspaces description: Returns all workspaces in the organization. responses: '200': description: A list of workspaces. content: application/json: schema: type: object properties: response: type: array items: $ref: '#/components/schemas/Workspace' post: operationId: createWorkspace tags: - Workspaces summary: Create workspace description: Creates a regular workspace with the identifier specified in the request. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Workspace' responses: '201': description: The created workspace. content: application/json: schema: $ref: '#/components/schemas/Workspace' /workspaces/{workspaceIdentifier}: get: operationId: getWorkspace tags: - Workspaces summary: Get workspace description: Returns workspace information for the workspace identifier specified. parameters: - $ref: '#/components/parameters/WorkspaceIdentifier' responses: '200': description: The requested workspace. content: application/json: schema: $ref: '#/components/schemas/Workspace' delete: operationId: deleteWorkspace tags: - Workspaces summary: Delete workspace description: Removes a workspace (regular workspaces only). parameters: - $ref: '#/components/parameters/WorkspaceIdentifier' responses: '200': description: Workspace deleted. components: schemas: Workspace: type: object properties: id: type: integer identifier: type: string description: Workspace identifier, typically the end customer's unique key. created_at: type: string updated_at: type: string parameters: WorkspaceIdentifier: name: workspaceIdentifier in: path required: true description: Identifier of the workspace. schema: type: string securitySchemes: JWT: type: http scheme: bearer bearerFormat: JWT description: 'Short-lived JSON Web Token signed with HS256 using your API secret. Claims: iss (API key), sub (workspace identifier), exp (expiration).'