Postman API Schemas API

Operations for managing API schemas and specifications.

OpenAPI Specification

postman-api-schemas-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Postman APIs API Comments API Schemas API
  description: 'The Postman APIs API enables you to manage your API definitions in Postman''s

    API Builder. You can create APIs, manage versions, add schemas (OpenAPI,

    GraphQL, etc.), and link collections, environments, mock servers, monitors,

    and documentation to your API definitions.


    ## Authentication

    All requests require an API key passed in the `x-api-key` header.


    ## Rate Limits

    Standard Postman API rate limits apply.

    '
  version: 1.0.0
  contact:
    name: Postman Developer Support
    url: https://learning.postman.com/docs/developer/postman-api/intro-api/
    email: help@postman.com
  license:
    name: Postman Terms of Service
    url: https://www.postman.com/legal/terms/
servers:
- url: https://api.getpostman.com
  description: Postman Production API Server
security:
- apiKeyAuth: []
tags:
- name: API Schemas
  description: Operations for managing API schemas and specifications.
paths:
  /apis/{apiId}/schemas:
    get:
      tags:
      - API Schemas
      summary: Postman Get all API schemas
      operationId: getApiSchemas
      description: Gets all schemas associated with an API. Schemas define the structure of the API using formats like OpenAPI, RAML, or GraphQL.
      parameters:
      - $ref: '#/components/parameters/ApiIdParam'
      - name: cursor
        in: query
        schema:
          type: string
      - name: limit
        in: query
        schema:
          type: integer
          default: 10
      responses:
        '200':
          description: Successful response with API schemas
          content:
            application/json:
              schema:
                type: object
                properties:
                  schemas:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApiSchema'
                  meta:
                    type: object
                    properties:
                      total:
                        type: integer
                      nextCursor:
                        type: string
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '429':
          $ref: '#/components/responses/RateLimitError'
    post:
      tags:
      - API Schemas
      summary: Postman Create an API schema
      operationId: createApiSchema
      description: Creates a new schema for an API. Specify the schema type and language, then provide the schema content.
      parameters:
      - $ref: '#/components/parameters/ApiIdParam'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - type
              - language
              - schema
              properties:
                type:
                  type: string
                  enum:
                  - openapi3_1
                  - openapi3
                  - openapi2
                  - openapi1
                  - raml
                  - graphql
                  - proto2
                  - proto3
                  - wsdl1
                  - wsdl2
                  - asyncapi2
                  description: The schema type
                language:
                  type: string
                  enum:
                  - json
                  - yaml
                  description: The schema format
                schema:
                  type: string
                  description: The schema content as a string
      responses:
        '200':
          description: Successfully created API schema
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiSchema'
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '429':
          $ref: '#/components/responses/RateLimitError'
  /apis/{apiId}/schemas/{schemaId}:
    get:
      tags:
      - API Schemas
      summary: Postman Get an API schema
      operationId: getApiSchema
      description: Gets a specific schema for an API, including its content.
      parameters:
      - $ref: '#/components/parameters/ApiIdParam'
      - name: schemaId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response with schema details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiSchema'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '429':
          $ref: '#/components/responses/RateLimitError'
  /apis/{apiId}/schemas/{schemaId}/files:
    get:
      tags:
      - API Schemas
      summary: Postman Get API schema files
      operationId: getApiSchemaFiles
      description: Gets the files associated with an API schema. Multi-file schemas may have multiple files.
      parameters:
      - $ref: '#/components/parameters/ApiIdParam'
      - name: schemaId
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response with schema files
          content:
            application/json:
              schema:
                type: object
                properties:
                  files:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        path:
                          type: string
                        content:
                          type: string
                        createdAt:
                          type: string
                          format: date-time
                        updatedAt:
                          type: string
                          format: date-time
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '429':
          $ref: '#/components/responses/RateLimitError'
components:
  responses:
    NotFoundError:
      description: The requested resource was not found
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  name:
                    type: string
                  message:
                    type: string
    UnauthorizedError:
      description: Authentication credentials are missing or invalid
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  name:
                    type: string
                  message:
                    type: string
    RateLimitError:
      description: Too many requests - rate limit exceeded
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: string
              message:
                type: string
    BadRequestError:
      description: Bad request - invalid input
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  name:
                    type: string
                  message:
                    type: string
  parameters:
    ApiIdParam:
      name: apiId
      in: path
      required: true
      description: The API's unique ID.
      schema:
        type: string
  schemas:
    ApiSchema:
      type: object
      description: An API schema definition.
      properties:
        id:
          type: string
        apiId:
          type: string
        type:
          type: string
          enum:
          - openapi3_1
          - openapi3
          - openapi2
          - openapi1
          - raml
          - graphql
          - proto2
          - proto3
          - wsdl1
          - wsdl2
          - asyncapi2
        language:
          type: string
          enum:
          - json
          - yaml
        createdAt:
          type: string
          format: date-time
        createdBy:
          type: integer
        updatedAt:
          type: string
          format: date-time
        updatedBy:
          type: integer
        files:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              path:
                type: string
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      name: x-api-key
      in: header
      description: Postman API key for authentication.