Certifier Design Templates API

Endpoints for managing certificate and badge design templates

Operations 2

GET /v1/designs/{id} Get a design template #
GET /v1/designs List design templates #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/certifier-io:certifier-io-design-templates-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

certifier-io-design-templates-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Certifier Design Templates API
  version: '2022-10-26'
  description: 'The Certifier API uses access tokens to authenticate requests. You can view and manage your access tokens in the Certifier Dashboard.


    Your access tokens carry many privileges, so be sure to keep them secure! Do not share your secret access tokens in publicly accessible areas such as GitHub, client-side code, and so forth.


    **Authentication** is performed via HTTP Bearer Auth. Provide your access token in the `Authorization` header with Bearer auth-scheme and `Certifier-Version` header:


    ```

    Authorization: Bearer

    Certifier-Version: 2022-10-26

    ```


    All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.'
servers:
- url: https://api.certifier.io
  description: Production server
security:
- BearerAuth: []
tags:
- name: Design Templates
  description: Endpoints for managing certificate and badge design templates
paths:
  /v1/designs/{id}:
    get:
      tags:
      - Design Templates
      summary: Get a design template
      description: Retrieves the details of an existing design template by its ID.
      security:
      - BearerAuth: []
      parameters:
      - schema:
          type: string
          description: The unique ID of the design template
          example: 01g8znjvd9h0qbhxqwc6av0txn
        required: true
        description: The unique ID of the design template
        name: id
        in: path
      - schema:
          type: string
          default: '2022-10-26'
          example: '2022-10-26'
          description: API version header. Required for all requests.
        required: true
        description: API version header. Required for all requests.
        name: Certifier-Version
        in: header
        example: '2022-10-26'
      responses:
        '200':
          description: Design template details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Design'
        '400':
          description: Bad Request - Missing version, invalid version, invalid JSON, or validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missing_version:
                  value:
                    error:
                      code: missing_version
                      message: The request is missing the required Certifier-Version header
                invalid_version:
                  value:
                    error:
                      code: invalid_version
                      message: The Certifier-Version header's value is invalid
                invalid_json:
                  value:
                    error:
                      code: invalid_json
                      message: The request body can not be decoded as JSON
                validation_error:
                  value:
                    error:
                      code: validation_error
                      message: This usually occurs because of a missing or malformed parameter
        '401':
          description: Unauthorized - Invalid or missing authentication token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: A valid authentication token was not provided with the request
        '404':
          description: Not Found - Resource does not exist
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: not_found
                  message: The requested resource does not exist
        '429':
          description: Rate Limited - Too many requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limited
                  message: You have exceeded the rate limit
        '500':
          description: Internal Server Error - Problem on Certifier's end
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_server_error
                  message: There was a problem on Certifier's end
      operationId: getV1DesignsById
      x-operation-id-source: derived
  /v1/designs:
    get:
      tags:
      - Design Templates
      summary: List design templates
      description: Returns a list of all design templates (certificates and badges) available in your workspace.
      security:
      - BearerAuth: []
      parameters:
      - schema:
          type: string
          description: Cursor for pagination
        required: false
        description: Cursor for pagination
        name: cursor
        in: query
      - schema:
          type: integer
          nullable: true
          maximum: 100
          description: 'Number of items to return (default: 20)'
          example: 20
        required: false
        description: 'Number of items to return (default: 20)'
        name: limit
        in: query
      - schema:
          type: string
          default: '2022-10-26'
          example: '2022-10-26'
          description: API version header. Required for all requests.
        required: true
        description: API version header. Required for all requests.
        name: Certifier-Version
        in: header
        example: '2022-10-26'
      responses:
        '200':
          description: List of design templates
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Design'
                  pagination:
                    type: object
                    properties:
                      prev:
                        type: string
                        nullable: true
                        example: null
                        description: Cursor for previous page
                      next:
                        type: string
                        nullable: true
                        example: null
                        description: Cursor for next page
                    required:
                    - prev
                    - next
                required:
                - data
                - pagination
        '400':
          description: Bad Request - Missing version, invalid version, invalid JSON, or validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                missing_version:
                  value:
                    error:
                      code: missing_version
                      message: The request is missing the required Certifier-Version header
                invalid_version:
                  value:
                    error:
                      code: invalid_version
                      message: The Certifier-Version header's value is invalid
                invalid_json:
                  value:
                    error:
                      code: invalid_json
                      message: The request body can not be decoded as JSON
                validation_error:
                  value:
                    error:
                      code: validation_error
                      message: This usually occurs because of a missing or malformed parameter
        '401':
          description: Unauthorized - Invalid or missing authentication token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: unauthorized
                  message: A valid authentication token was not provided with the request
        '429':
          description: Rate Limited - Too many requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: rate_limited
                  message: You have exceeded the rate limit
        '500':
          description: Internal Server Error - Problem on Certifier's end
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: internal_server_error
                  message: There was a problem on Certifier's end
      operationId: getV1Designs
      x-operation-id-source: derived
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              description: Error code
              example: validation_error
            message:
              type: string
              description: Human-readable error message
              example: The request body contains invalid or missing fields
          required:
          - code
          - message
      required:
      - error
    Design:
      type: object
      properties:
        id:
          type: string
          description: The unique design template's identifier
          example: 01g8znjvd9h0qbhxqwc6av0txn
        name:
          type: string
          description: The name of the design template
          example: My first design template
        type:
          type: string
          enum:
          - certificate
          - badge
          description: The type of the design template, whether it is a certificate design template or a badge design template
          example: certificate
        previewUrl:
          type: string
          format: uri
          description: The direct URL to a PNG image preview of the design template
          example: https://cdn.certifier.io/911264ad-df05-4aeb-966f-96034b711c10%2Fcertificate-designs%2Fpreviews%2F01k6dfeejfbwn273x2v2jqj4an-1759241517660.png
        createdAt:
          type: string
          format: date-time
          description: The date and time when this design template was created. Formatted as an ISO 8601 date and time string
          example: '2022-01-01T00:00:00.000Z'
        updatedAt:
          type: string
          format: date-time
          description: The date and time when this design template was updated. Formatted as an ISO 8601 date and time string
          example: '2022-01-01T00:00:00.000Z'
      required:
      - id
      - name
      - type
      - previewUrl
      - createdAt
      - updatedAt
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Provide your access token in the Authorization header with Bearer auth-scheme. You can view and manage your access tokens in the Certifier Dashboard.