Postman components API
The components API from Postman — 5 operation(s) for components.
The components API from Postman — 5 operation(s) for components.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/postman-components-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Postman Components API
version: 1.0.0
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
tags:
- name: components
paths:
/components:
get:
operationId: getAllComponents
summary: Get all components
description: Gets a list of all components in the team's component library.
tags:
- components
parameters:
- name: type
in: query
description: Filter results by component type.
required: false
schema:
$ref: '#/components/schemas/componentType'
- name: status
in: query
description: Filter results by the component's status.
required: false
schema:
$ref: '#/components/schemas/componentStatus'
- name: hasVersions
in: query
description: If true, return only components with published versions.
required: false
schema:
$ref: '#/components/schemas/componentHasVersions'
- name: include
in: query
description: A comma-separated list of additional fields to include. Accepts the `hasVersions`, `latestVersion`, `latestVersion.content` values.
required: false
schema:
$ref: '#/components/schemas/componentIncludeFields'
- name: expand
in: query
description: A comma-separated list of fields to expand. Accepts the `latestVersion` value.
required: false
schema:
$ref: '#/components/schemas/componentExpandLatestVersion'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getAllComponents'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetAllComponentsRequestUnauthorizedError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetAllComponentsRequestInternalServerError'
post:
operationId: createComponent
summary: Create a component
description: Creates a new component. The component is created in an active state with an initial draft. Use the POST `/components/{componentId}/versions` endpoint to publish a version.
tags:
- components
parameters:
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'201':
description: Component Created
content:
application/json:
schema:
$ref: '#/components/schemas/createComponentResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/CreateComponentRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/CreateComponentRequestForbiddenError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/CreateComponentRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/createComponent'
/components/{componentId}:
get:
operationId: getComponent
summary: Get a component
description: Gets information about a component. Use the `include` and `expand` query parameters to return additional information, such as `hasVersions` and the latest published version.
tags:
- components
parameters:
- name: componentId
in: path
description: The component's ID.
required: true
schema:
$ref: '#/components/schemas/componentId'
- name: include
in: query
description: A comma-separated list of additional fields to include. Accepts the `hasVersions`, `latestVersion`, `latestVersion.content` values.
required: false
schema:
$ref: '#/components/schemas/componentIncludeFields'
- name: expand
in: query
description: A comma-separated list of fields to expand. Accepts the `latestVersion` value.
required: false
schema:
$ref: '#/components/schemas/componentExpandLatestVersion'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getComponent'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentRequestInternalServerError'
patch:
operationId: updateComponent
summary: Update a component
description: "Updates a component:\n - `name` — Rename the component. The new name must be unique within the team. Archived components can't be renamed.\n - `status` — Changes the component's lifecycle state:\n - `archive` — Marks the component as read-only. Archived components aren't deleted and can't be edited or published, but their existing versions remain accessible.\n - `active` — Restores the component. Only active components can be edited and published.\n\n**Note:**\n\nYou can't update a name and archived state in a single call. To change both properties, make separate calls to update the name and status.\n"
tags:
- components
parameters:
- name: componentId
in: path
description: The component's ID.
required: true
schema:
$ref: '#/components/schemas/componentId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Component Updated
content:
application/json:
schema:
$ref: '#/components/schemas/updateComponentResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateComponentRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateComponentRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateComponentRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/updateComponent'
/components/{componentId}/drafts:
get:
operationId: getComponentDraft
summary: Get a component draft
description: Gets information about the current working draft of a component, including its content and format. Drafts represent the latest unpublished edits of a component, which may be different from the most recently published version.
tags:
- components
parameters:
- name: componentId
in: path
description: The component's ID.
required: true
schema:
$ref: '#/components/schemas/componentId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getComponentDraft'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentDraftRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentDraftRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentDraftRequestInternalServerError'
patch:
operationId: updateComponentDraft
summary: Update a component draft
description: 'Updates a component''s draft. Component drafts contain unpublished edits to a component, which may be different from a recently published version.
**Note:**
You can''t update archived components.
'
tags:
- components
parameters:
- name: componentId
in: path
description: The component's ID.
required: true
schema:
$ref: '#/components/schemas/componentId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/updateComponentDraftResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateComponentDraftRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateComponentDraftRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateComponentDraftRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/updateComponentDraft'
/components/{componentId}/versions:
get:
operationId: getComponentVersions
summary: Get all component versions
description: Gets a list of a component's published versions.
tags:
- components
parameters:
- name: componentId
in: path
description: The component's ID.
required: true
schema:
$ref: '#/components/schemas/componentId'
- name: include
in: query
description: A comma-separated list of additional fields to include. Accepts the `content` value.
required: false
schema:
$ref: '#/components/schemas/componentLibraryInclude'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getComponentVersions'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentVersionsRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentVersionsRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentVersionsRequestInternalServerError'
post:
operationId: createComponentVersion
summary: Create a component version
description: 'Publishes a new version of a component from the current draft.
**Note:**
You can''t publish a new version of an archived component. Reactivate the component before publishing a new version.
'
tags:
- components
parameters:
- name: componentId
in: path
description: The component's ID.
required: true
schema:
$ref: '#/components/schemas/componentId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'201':
description: Version Created
content:
application/json:
schema:
$ref: '#/components/schemas/createComponentVersionResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/CreateComponentVersionRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/CreateComponentVersionRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/CreateComponentVersionRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/createComponentVersion'
/components/{componentId}/versions/{versionId}:
get:
operationId: getComponentVersion
summary: Get a component version
description: Gets a published version of a component.
tags:
- components
parameters:
- name: componentId
in: path
description: The component's ID.
required: true
schema:
$ref: '#/components/schemas/componentId'
- name: versionId
in: path
description: The component version's ID.
required: true
schema:
$ref: '#/components/schemas/componentVersionId'
- name: include
in: query
description: A comma-separated list of additional fields to include. Accepts the `content` value.
required: false
schema:
$ref: '#/components/schemas/componentLibraryInclude'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/componentVersionData'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentVersionRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentVersionRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetComponentVersionRequestInternalServerError'
components:
schemas:
CreateComponentRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: CreateComponentRequestForbiddenError
ComponentDataLatestVersion:
oneOf:
- type: string
- $ref: '#/components/schemas/componentVersionData'
description: 'Information about the component''s latest version. This property only returns only when you pass the `latestVersion` value for the `include` parameter.
To return detailed information about the component''s latest version, pass the `latestVersion` value for the `expand` parameter.
'
title: ComponentDataLatestVersion
createComponentVersionResponse:
type: object
properties:
id:
$ref: '#/components/schemas/componentVersionId'
description: Information about the component version.
title: createComponentVersionResponse
CreateComponentVersionRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: CreateComponentVersionRequestForbiddenError
UpdateComponentDraftRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: UpdateComponentDraftRequestForbiddenError
GetComponentDraftRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentDraftRequestForbiddenError
GetComponentRequestUnauthorizedError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentRequestUnauthorizedError
UpdateComponentDraftRequestUnauthorizedError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: UpdateComponentDraftRequestUnauthorizedError
CommonErrorNameMessageError:
type: object
properties:
name:
type: string
description: The error name.
message:
type: string
description: The error message.
description: Information about the error.
title: CommonErrorNameMessageError
componentType:
type: string
enum:
- OAS2
- OAS3
- OAS3_1
description: The component's type. Corresponds to the specification that the component's content adheres to.
title: componentType
commonErrorTypeTitleDetail:
type: object
properties:
type:
type: string
description: The type of error.
title:
type: string
description: A short summary of the problem.
detail:
$ref: '#/components/schemas/CommonErrorTypeTitleDetailDetail'
description: Information about the error.
title: commonErrorTypeTitleDetail
getAllComponents:
type: object
properties:
meta:
$ref: '#/components/schemas/meta'
data:
type: array
items:
$ref: '#/components/schemas/componentData'
description: A list of components.
title: getAllComponents
updateComponent:
oneOf:
- description: Any type
- description: Any type
title: updateComponent
createComponentVersion:
type: object
properties:
label:
type: string
description: The component version's label. This must begin and end with an alphanumeric character and may only contain letters, digits, dots, underscores, plus signs, and hyphens and cannot exceed 60 characters.
source:
$ref: '#/components/schemas/CreateComponentVersionSource'
description: The source to publish the version from. Defaults to the component's current draft.
required:
- label
title: createComponentVersion
UpdateComponentRequestUnauthorizedError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: UpdateComponentRequestUnauthorizedError
GetComponentVersionRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentVersionRequestForbiddenError
GetComponentDraftRequestUnauthorizedError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentDraftRequestUnauthorizedError
CreateComponentVersionSource:
type: object
properties:
type:
$ref: '#/components/schemas/CreateComponentVersionSourceType'
description: The `draft` value.
description: The source to publish the version from. Defaults to the component's current draft.
title: CreateComponentVersionSource
componentIncludeFields:
type: string
title: componentIncludeFields
commonErrorTypeTitleDetailStatus:
type: object
properties:
type:
$ref: '#/components/schemas/CommonErrorTypeTitleDetailStatusType'
title:
type: string
description: A short summary of the problem.
detail:
type: string
description: Information about the error.
status:
type: integer
description: The error's HTTP status code.
title: commonErrorTypeTitleDetailStatus
CreateComponentRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: CreateComponentRequestInternalServerError
CommonErrorTypeTitleDetailDetail:
oneOf:
- type: string
- type: object
additionalProperties:
description: Any type
description: Information about the error.
title: CommonErrorTypeTitleDetailDetail
CreateComponentVersionSourceType:
type: string
enum:
- draft
description: The `draft` value.
title: CreateComponentVersionSourceType
CreateComponentVersionRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: CreateComponentVersionRequestInternalServerError
GetComponentDraftRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentDraftRequestInternalServerError
GetComponentVersionsRequestUnauthorizedError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentVersionsRequestUnauthorizedError
updateComponentDraftResponse:
type: object
properties:
id:
type: string
description: The component draft's ID.
description: Information about the component draft.
title: updateComponentDraftResponse
updateComponentResponse:
type: object
properties:
id:
$ref: '#/components/schemas/componentId'
name:
type: string
description: The component's name.
status:
$ref: '#/components/schemas/componentStatus'
description: Information about the component.
title: updateComponentResponse
GetComponentRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentRequestForbiddenError
GetComponentVersionRequestUnauthorizedError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentVersionRequestUnauthorizedError
UpdateComponentDraftRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: UpdateComponentDraftRequestInternalServerError
componentStatus:
type: string
enum:
- active
- archived
description: 'The component''s lifecycle state:
- `active` — The component is active and can be edited and published.
- `archived` — The component is archived and read-only. Archived components can''t be edited or published, but their existing versions remain accessible.
'
title: componentStatus
getComponent:
type: object
properties:
data:
$ref: '#/components/schemas/componentData'
title: getComponent
meta:
type: object
properties:
nextCursor:
type:
- string
- 'null'
description: The pagination cursor that points to the next record in the results set.
title: meta
componentId:
type: string
description: The component's ID.
title: componentId
GetComponentRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetComponentRequestInternalServerError
commonErrorNameMessage:
type: object
properties:
error:
$ref: '#/components/schemas/CommonErrorNameMessageError'
description: Information about the error.
title: commonErrorNameMessage
GetAllComponentsRequestUnauthorizedError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetAllComponentsRequestUnauthorizedError
componentData:
type: object
properties:
id:
type: string
description: The component's ID.
name:
type: string
description: The component's name.
type:
$ref: '#/components/schemas/componentType'
status:
$ref: '#/components/schemas/componentStatus'
createdAt:
type: string
format: date-time
description: The date and time at which the component was created.
updatedAt:
type: string
format: date-time
description: The date and time at which the component was last updated.
createdBy:
type: string
description: The ID of the user who created the component.
updatedBy:
type: string
description: The ID of the user who last updated the component.
hasVersions:
type: boolean
description: Whether the component has versions. Returns only when you pass the `hasVersions` value for the `include` parameter.
latestVersion:
$ref: '#/components/schemas/ComponentDataLatestVersion'
description: 'Information about the component''s latest version. This property only returns only when you pass the `latestVersion` value for the `include` parameter.
To return detailed information about the component''s latest version, pass the `latestVersion` value for the `expand` parameter.
'
description: Information about the component.
title: componentData
UpdateComponentRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: UpdateComponentRequestForbiddenError
UpdateComponentRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: UpdateComponentRequestInternalServerError
CommonErrorTypeTitleDetailSt
# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/postman/refs/heads/main/openapi/postman-components-api-openapi.yml