Postman apiCatalog API
The apiCatalog API from Postman — 11 operation(s) for apicatalog.
The apiCatalog API from Postman — 11 operation(s) for apicatalog.
openapi: 3.1.0
info:
title: Postman API Catalog API
version: 1.0.0
description: 'Operations tagged apiCatalog across 2 of this provider''s published API definitions: postman-api-openapi.yml, postman-apicatalog-api-openapi.yml. Each path carries the servers of the definition it was published in.'
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: apiCatalog
paths:
/api-catalog/discovery-services:
get:
operationId: getApiCatalogDiscoveryServices
summary: Get discovered services
description: Gets a list of all [discovered services](https://learning.postman.com/docs/api-catalog/overview#discover-apis-and-services) in the API Catalog.
tags:
- apiCatalog
parameters:
- name: discoverySource
in: query
description: 'Filter results by the given discovery source type:
- `api_gateway_app` — API Gateway integrations.
- `insights_project` — Postman Insights.
- `infra_watcher` — Cluster Watcher.
- `public_api` — Services manually added using the POST `/api-catalog/discovery-services` endpoint.
'
required: false
schema:
$ref: '#/components/schemas/discoveryServicesSource'
- name: status
in: query
description: A comma-separated list of statuses to filter the results by. Accepts the `discovered`, `integrated`, and `archived` values.
required: false
schema:
$ref: '#/components/schemas/discoveryServicesStatus'
- name: search
in: query
description: Filter results by the given value that match a service's name. Matching is not case-sensitive.
required: false
schema:
$ref: '#/components/schemas/discoveryServicesSearch'
- name: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 100. Any value greater than 100 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault20'
default: 20
- name: cursor
in: query
description: The pointer to the first record of the set of paginated results. To view the next response, use the `nextCursor` value for this parameter.
required: false
schema:
$ref: '#/components/schemas/cursor'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogDiscoveryServices'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/apiCatalogError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogDiscoveryServicesRequestInternalServerError'
post:
operationId: postApiCatalogDiscoveryServices
summary: Add discovered services to the API Catalog
description: Adds discovered services to the API Catalog. Accepts up to 20 services in a single call.
tags:
- apiCatalog
parameters:
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/postApiCatalogDiscoveryServicesResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/apiCatalogError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/PostApiCatalogDiscoveryServicesRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/postApiCatalogDiscoveryServices'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/api-catalog/discovery-services/{serviceId}:
get:
operationId: getApiCatalogDiscoveryService
summary: Get a discovered service's information
description: Gets detailed information about a discovered service, including a base64-encoded OpenAPI specification and an array of endpoints.
tags:
- apiCatalog
parameters:
- name: serviceId
in: path
description: The discovered service's ID.
required: true
schema:
$ref: '#/components/schemas/serviceId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogDiscoveryService'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogDiscoveryServiceRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/api-catalog/services:
get:
operationId: getApiCatalogServices
summary: Get all services
description: Gets a list of services in a system environment. The response includes details about analytics, compliance, and governance metadata.
tags:
- apiCatalog
parameters:
- name: systemEnvironmentId
in: query
description: The system environment's ID.
required: true
schema:
$ref: '#/components/schemas/systemEnvironmentId'
- name: name
in: query
description: Filter results to the given the service name. This is case-insensitive.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceNameFilter'
- name: tags
in: query
description: A comma-separated list of tag names to filter by.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceTagsFilter'
- name: governanceGroupId
in: query
description: Filter results to only services that belong to the given governance group ID.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceGovernanceGroupIdFilter'
- name: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 100. Any value greater than 100 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault20'
default: 20
- name: cursor
in: query
description: The pointer to the first record of the set of paginated results. To view the next response, use the `nextCursor` value for this parameter.
required: false
schema:
$ref: '#/components/schemas/cursor'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogServices'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/apiCatalogError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogServicesRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/api-catalog/services/{serviceId}:
get:
operationId: getApiCatalogService
summary: Get a service by ID
description: Gets information about a service, including its health, traffic, compliance, ownership, and dependencies.
tags:
- apiCatalog
parameters:
- name: serviceId
in: path
description: The service's ID.
required: true
schema:
$ref: '#/components/schemas/serviceId'
- name: systemEnvironmentId
in: query
description: The system environment's ID.
required: true
schema:
$ref: '#/components/schemas/systemEnvironmentId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogService'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/apiCatalogError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogServiceRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/api-catalog/services/{serviceId}/endpoints:
get:
operationId: getApiCatalogServiceEndpoints
summary: Get a service's endpoints
description: Get a list of observed API endpoints for a service and its performance metrics.
tags:
- apiCatalog
parameters:
- name: serviceId
in: path
description: The service's ID.
required: true
schema:
$ref: '#/components/schemas/serviceId'
- name: systemEnvironmentId
in: query
description: The system environment's ID.
required: true
schema:
$ref: '#/components/schemas/systemEnvironmentId'
- name: httpMethods
in: query
description: A.comma-separated list of HTTP methods to filter the results by.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceHttpMethodFilter'
- name: hosts
in: query
description: A comma-separated list of hostnames to filter the results by.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceHostsFilter'
- name: responseCodes
in: query
description: A comma-separated list of HTTP status codes to filter the results by.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceResponseCodeFilter'
- name: search
in: query
description: Filter results to the search filter given on the endpoint's path.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceSearchFilter'
- name: sort
in: query
description: Sort the results in field:direction order format. Accepts the `count`, `endpoint`, `p95LatencyMs`, and `errorRate` fields. Supports the `asc` and `desc` directions.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceSortEndpointsFilter'
- name: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 100. Any value greater than 100 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault20'
default: 20
- name: cursor
in: query
description: The pointer to the first record of the set of paginated results. To view the next response, use the `nextCursor` value for this parameter.
required: false
schema:
$ref: '#/components/schemas/cursor'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogServiceEndpoints'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/apiCatalogError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogServiceEndpointsRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/api-catalog/services/{serviceId}/monitor-runs:
get:
operationId: getApiCatalogServiceMonitorRuns
summary: Get a service's monitor runs
description: Gets a list of scheduled monitor runs for a service that includes summary statistics.
tags:
- apiCatalog
parameters:
- name: serviceId
in: path
description: The service's ID.
required: true
schema:
$ref: '#/components/schemas/serviceId'
- name: systemEnvironmentId
in: query
description: The system environment's ID.
required: true
schema:
$ref: '#/components/schemas/systemEnvironmentId'
- name: collectionId
in: query
description: Filter results to only the given collection ID's runs.
required: false
schema:
$ref: '#/components/schemas/collectionUid'
- name: sort
in: query
description: Sort the results in field:direction order format. Accepts the `timestamp`, `duration`, and `failedAssertions` fields. Supports the `asc` and `desc` directions.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceSortMonitorRun'
- name: environmentId
in: query
description: Filter results to only the given environment ID runs.
required: false
schema:
$ref: '#/components/schemas/environmentId'
- name: status
in: query
description: Filter results by run status.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceStatusFilter'
- name: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 100. Any value greater than 100 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault20'
default: 20
- name: cursor
in: query
description: The pointer to the first record of the set of paginated results. To view the next response, use the `nextCursor` value for this parameter.
required: false
schema:
$ref: '#/components/schemas/cursor'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogServiceMonitorRuns'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/apiCatalogError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogServiceMonitorRunsRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/api-catalog/services/{serviceId}/spec-lints:
get:
operationId: getApiCatalogServiceSpecificationLints
summary: Get a service's specification lints
description: Gets a list of API specification lint runs for a service that includes summary statistics and per-severity issue counts.
tags:
- apiCatalog
parameters:
- name: serviceId
in: path
description: The service's ID.
required: true
schema:
$ref: '#/components/schemas/serviceId'
- name: specId
in: query
description: Filter results to the given API specification ID.
required: false
schema:
$ref: '#/components/schemas/specId'
- name: severity
in: query
description: Filter results to runs with issues at or above the given severity threshold. Higher severities are always included.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceSpecLintSeverityFilter'
- name: status
in: query
description: Filter results to the given spec lint outcome.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceStatusFilter'
- name: sort
in: query
description: Sort the results in field:direction order format. Accepts the `timestamp` and `errorCount` fields. Supports the `asc` and `desc` directions.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceSortSpecLintFilter'
- name: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 100. Any value greater than 100 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault20'
default: 20
- name: cursor
in: query
description: The pointer to the first record of the set of paginated results. To view the next response, use the `nextCursor` value for this parameter.
required: false
schema:
$ref: '#/components/schemas/cursor'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogServiceSpecificationLints'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/apiCatalogError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogServiceSpecificationLintsRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/api-catalog/services/{serviceId}/ci-runs:
get:
operationId: getApiCatalogServiceCiRuns
summary: Get a service's CI runs
description: Gets a paginated list of CI collection runs for a service that includes summary statistics, pipeline details, and Git metadata.
tags:
- apiCatalog
parameters:
- name: serviceId
in: path
description: The service's ID.
required: true
schema:
$ref: '#/components/schemas/serviceId'
- name: systemEnvironmentId
in: query
description: The system environment's ID.
required: true
schema:
$ref: '#/components/schemas/systemEnvironmentId'
- name: collectionId
in: query
description: Filter results to only the given collection ID's runs.
required: false
schema:
$ref: '#/components/schemas/collectionUid'
- name: environmentId
in: query
description: Filter results to only the given environment ID runs.
required: false
schema:
$ref: '#/components/schemas/environmentId'
- name: status
in: query
description: Filter results by run status.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceStatusFilter'
- name: branch
in: query
description: Filter results by the given Git branch name.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceBranchFilter'
- name: workflowName
in: query
description: Filter results by the given CI workflow name.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceWorkflowNameFilter'
- name: actor
in: query
description: Filter results by the given CI user that triggered the run.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceActorFilter'
- name: repoName
in: query
description: Filter results by the given repository name.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceRepoNameFilter'
- name: repoOwner
in: query
description: Filter results by the given repository owner.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceRepoOwnerFilter'
- name: sort
in: query
description: Sort the results in field:direction order format. Accepts the `timestamp` and `duration` fields. Supports the `asc` and `desc` directions.
required: false
schema:
$ref: '#/components/schemas/apiCatalogServiceSortCiFilter'
- name: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 100. Any value greater than 100 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault20'
default: 20
- name: cursor
in: query
description: The pointer to the first record of the set of paginated results. To view the next response, use the `nextCursor` value for this parameter.
required: false
schema:
$ref: '#/components/schemas/cursor'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogServiceCiRuns'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/apiCatalogError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogServiceCiRunsRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/api-catalog/system-environments:
get:
operationId: getApiCatalogSystemEnvironments
summary: Get all system environments
description: Gets all of the authenticated team's system environments.
tags:
- apiCatalog
parameters:
- name: isProduction
in: query
description: If true, filters the response results to return only system environments marked as production.
required: false
schema:
$ref: '#/components/schemas/systemEnvironmentProductionFilter'
- name: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 100. Any value greater than 100 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault20'
default: 20
- name: cursor
in: query
description: The pointer to the first record of the set of paginated results. To view the next response, use the `nextCursor` value for this parameter.
required: false
schema:
$ref: '#/components/schemas/cursor'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/getApiCatalogSystemEnvironments'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogSystemEnvironmentsRequestBadRequestError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetApiCatalogSystemEnvironmentsRequestInternalServerError'
post:
operationId: createApiCatalogSystemEnvironment
summary: Create a system environment
description: Creates a system environment for the authenticated team.
tags:
- apiCatalog
parameters:
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/createApiCatalogSystemEnvironmentResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/CreateApiCatalogSystemEnvironmentRequestBadRequestError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'403':
description: Forbidden
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/CreateApiCatalogSystemEnvironmentRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/com
# --- truncated at 32 KB (134 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/postman/refs/heads/main/openapi/postman-apicatalog-api-openapi.yml