Postman sdKs API
The sdKs API from Postman — 6 operation(s) for sdks.
The sdKs API from Postman — 6 operation(s) for sdks.
openapi: 3.1.0
info:
title: Postman Sd Ks API
version: 1.0.0
description: 'Operations tagged sdKs across 2 of this provider''s published API definitions: postman-api-openapi.yml, postman-sdks-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: sdKs
paths:
/sdks:
get:
operationId: getSdks
summary: Get all SDKs
description: 'Lists all SDKs the authenticated user has access to.
**Note:**
- Use the `sdkIds` parameter to get the generation build status of multiple SDKs in a single call.
- When you pass the `sdkIds` value, other filters are ignored and the response contains only the accessible SDKs from this list.
'
tags:
- sdKs
parameters:
- name: workspaceId
in: query
description: The ID of the workspace that contains the SDK.
required: true
schema:
$ref: '#/components/schemas/workspaceId'
- name: sdkIds
in: query
description: A comma-separated list of SDK IDs to return in the response. If you pass this query parameter with other filters, the other filters are ignored.
required: false
schema:
type: array
items:
$ref: '#/components/schemas/sdkId'
- name: buildStatus
in: query
description: Filter results by build status.
required: false
schema:
$ref: '#/components/schemas/sdkBuildStatus'
- name: language
in: query
description: Filter results by SDK language.
required: false
schema:
$ref: '#/components/schemas/sdkLanguage'
- name: sourceId
in: query
description: Filter results by the originating Postman Collection or specification ID.
required: false
schema:
$ref: '#/components/schemas/sdkSourceId'
- 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: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 25. Any value greater than 25 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault25'
default: 25
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SDKs_getSdks_Response_200'
'400':
description: Invalid Query
content:
application/json:
schema:
$ref: '#/components/schemas/sdkError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdksRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdksRequestForbiddenError'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdksRequestInternalServerError'
post:
operationId: createSdk
summary: Generate an SDK
description: 'Creates an asynchronous generation job for a single SDK (in one language) from a collection or specification.
To get the status of an SDK''s generation, use the GET `/sdks/{sdkId}` endpoint and track its `buildStatus`. When the status is the `succeeded` value, the SDK is ready to download. You can also use the URL in the POST response''s `Location` header.
**Note:**
The request body is determined by the given `language` value, so only provide the properties relevant to that language''s SDK.
'
tags:
- sdKs
parameters:
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'202':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/SDKs_createSdk_Response_202'
'400':
description: Malformed Request
content:
application/json:
schema:
$ref: '#/components/schemas/sdkError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSdkRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSdkRequestForbiddenError'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSdkRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/createSdk'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/sdks/{sdkId}:
get:
operationId: getSdk
summary: Get an SDK
description: Returns information about the SDK, including the current build job status.
tags:
- sdKs
parameters:
- name: sdkId
in: path
description: The SDK's ID.
required: true
schema:
$ref: '#/components/schemas/sdkId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/sdk'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkRequestInternalServerError'
delete:
operationId: deleteSdk
summary: Delete an SDK
description: 'Deletes an SDK record and its stored archive. On success, this returns a `204 No Content` response.
**Note:**
You can''t use this endpoint to cancel a generation job that''s still in progress.
'
tags:
- sdKs
parameters:
- name: sdkId
in: path
description: The SDK's ID.
required: true
schema:
$ref: '#/components/schemas/sdkId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'204':
description: Deleted
content:
application/json:
schema:
type: object
properties: {}
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteSdkRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteSdkRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteSdkRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/sdks/{sdkId}/downloads:
get:
operationId: getSdkDownloadUrl
summary: Get an SDK's download URL
description: 'Gets a short-lived signed URL for the generated SDK archive (zip). The generated URL is created on demand and expires within a few minutes.
**Note:**
The API doesn''t stream the archive directly to keep responses small and predictable. Use the returned URL to download the SDK zip file.
'
tags:
- sdKs
parameters:
- name: sdkId
in: path
description: The SDK's ID.
required: true
schema:
$ref: '#/components/schemas/sdkId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/sdkDownload'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkDownloadUrlRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkDownloadUrlRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkDownloadUrlRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/sdk-git-connections:
get:
operationId: getSdkGitConnections
summary: Get all SDK Git connections
description: Gets all Git repository connections the authenticated user has access to in the given workspace. Each connection links one Postman Collection or specification and one SDK language to a target Git repository.
tags:
- sdKs
parameters:
- name: workspaceId
in: query
description: The ID of the workspace that owns the source entities.
required: true
schema:
$ref: '#/components/schemas/workspaceId'
- name: sourceId
in: query
description: Filter results by the originating Postman Collection or specification ID.
required: false
schema:
$ref: '#/components/schemas/sdkSourceId'
- name: language
in: query
description: Filter results by SDK language.
required: false
schema:
$ref: '#/components/schemas/sdkLanguage'
- name: status
in: query
description: Filter results by connection status.
required: false
schema:
$ref: '#/components/schemas/sdkGitConnectionStatus'
- name: repositoryUrl
in: query
description: Filter results by the canonical URL of the target Git repository.
required: false
schema:
$ref: '#/components/schemas/sdkGitConnectionRepositoryUrl'
- 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: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 25. Any value greater than 25 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault25'
default: 25
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/sdkGitConnectionList'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/sdkError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionsRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionsRequestForbiddenError'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionsRequestInternalServerError'
post:
operationId: createSdkGitConnection
summary: Connect a Git repository to an SDK
description: 'Connects a Postman source element (collection or specification) to a Git repository for one SDK language. This creates a new connection in the
`active` state.
**Note:**
- Each source and language pair maps to a single connection. If a connection already exists for the pair, this returns `409 Conflict` response.
- To update an existing connection, use the PUT `/sdk-git-connections/{sdkGitConnectionId}` endpoint.
- The `autoUpdatePullRequestsEnabled` property is only available to **Enterprise** plan users. If the user is on a **Team** plan, this value is always `false`.
'
tags:
- sdKs
parameters:
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/sdkGitConnection'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/sdkError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSdkGitConnectionRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSdkGitConnectionRequestForbiddenError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/CreateSdkGitConnectionRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/createSdkGitConnection'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/sdk-git-connections/{sdkGitConnectionId}:
get:
operationId: getSdkGitConnection
summary: Get an SDK Git connection
description: Gets information about an SDK's Git connection. The response includes the SDK currently sent to the targetBranch and the most recent SDK-update pull request.
tags:
- sdKs
parameters:
- name: sdkGitConnectionId
in: path
description: The Git connection's ID.
required: true
schema:
$ref: '#/components/schemas/sdkGitConnectionId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/sdkGitConnection'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionRequestInternalServerError'
put:
operationId: updateSdkGitConnection
summary: Update an SDK Git connection
description: 'Updates the Git connection''s lifecycle status:
- `active` — Connects or reconnects the repository. All auto-update pull requests resume.
- `disconnected` — Disconnects the repository, and no further auto-update pull requests are opened. The historical pull request record is preserved and remains queryable.
**Note:**
- The `autoUpdatePullRequestsEnabled` property is only available to **Enterprise** plan users and defaults to `true`. If the user is on a **Team** plan, this value is always `false`.
- This action is idempotent. Setting the fields to their current values is a no-op and still returns the connection.
- The `inaccessible` status is system-determined and can''t be set with this endpoint.
'
tags:
- sdKs
parameters:
- name: sdkGitConnectionId
in: path
description: The Git connection's ID.
required: true
schema:
$ref: '#/components/schemas/sdkGitConnectionId'
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/sdkGitConnection'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/sdkError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateSdkGitConnectionRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateSdkGitConnectionRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'422':
description: Unprocessable Entity
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateSdkGitConnectionRequestInternalServerError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/updateSdkGitConnection'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
/sdk-git-connections/{sdkGitConnectionId}/pull-requests:
get:
operationId: getSdkGitConnectionPullRequests
summary: Get an SDK Git connection's pull requests
description: 'Lists all SDK update pull requests for the Git connection, in order of newest first by its `updatedAt` property.
**Note:**
Direct push requests to the base branch are not returned in the response if a Git connection is configured to push only some changes directly to a base branch.
'
tags:
- sdKs
parameters:
- name: sdkGitConnectionId
in: path
description: The Git connection's ID.
required: true
schema:
$ref: '#/components/schemas/sdkGitConnectionId'
- name: status
in: query
description: Filter results by pull request status.
required: false
schema:
$ref: '#/components/schemas/sdkGitConnectionPRStatus'
- 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: limit
in: query
description: The maximum number of rows to return in the response, up to a maximum value of 25. Any value greater than 25 returns a 400 Bad Request response.
required: false
schema:
$ref: '#/components/schemas/limitDefault25'
default: 25
- name: x-api-key
in: header
required: true
schema:
type: string
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/sdkGitConnectionPullRequestList'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionPullRequestsRequestUnauthorizedError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionPullRequestsRequestForbiddenError'
'404':
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'429':
description: Too Many Requests
content:
application/json:
schema:
$ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/GetSdkGitConnectionPullRequestsRequestInternalServerError'
servers:
- url: https://api.postman.com
description: https://api.postman.com
- url: https://api.eu.postman.com
description: https://api.eu.postman.com
components:
schemas:
sdkErrorBuildStatusFailure:
type: object
properties:
code:
type: string
description: The build failure's error code.
message:
type: string
description: Information about the build failure.
required:
- code
- message
description: Information about the SDK build's status when `buildStatus` is `failed`.
title: sdkErrorBuildStatusFailure
GetSdkRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetSdkRequestInternalServerError
rubyOptions:
type: object
properties:
gemName:
type: string
description: The RubyGems gem's name.
description: Ruby-specific generation options.
title: rubyOptions
UpdateSdkGitConnectionRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: UpdateSdkGitConnectionRequestInternalServerError
SdkRetryOptionsHttpMethodsToRetryItems:
type: string
enum:
- GET
- POST
- PUT
- DELETE
- PATCH
- HEAD
- OPTIONS
- CONNECT
- TRACE
title: SdkRetryOptionsHttpMethodsToRetryItems
CommonErrorTypeTitleDetailStatusType:
oneOf:
- type: string
format: uri-reference
- type: string
title: CommonErrorTypeTitleDetailStatusType
kotlinOptions:
type: object
properties:
groupId:
type: string
description: The Maven group ID written into the `pom.xml` dependencies file.
artifactId:
type: string
description: The Maven artifact ID written into the `pom.xml` dependencies file.
description: Kotlin-specific SDK generation options.
title: kotlinOptions
GetSdkGitConnectionPullRequestsRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetSdkGitConnectionPullRequestsRequestForbiddenError
sdkDownload:
type: object
properties:
id:
$ref: '#/components/schemas/sdkId'
language:
$ref: '#/components/schemas/sdkLanguage'
url:
type: string
format: uri
description: A short-lived signed URL to the generated SDK archive (zip).
expiresAt:
type: string
format: date-time
description: The date and time at which the signed URL expires.
required:
- id
- language
- url
- expiresAt
title: sdkDownload
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
GetSdkGitConnectionPullRequestsRequestInternalServerError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetail'
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetSdkGitConnectionPullRequestsRequestInternalServerError
sdkGitConnectionPullRequest:
type: object
properties:
number:
type: integer
description: The pull request's ID.
url:
type: string
format: uri
description: The pull request's URL.
status:
$ref: '#/components/schemas/sdkGitConnectionPRStatus'
sdk:
$ref: '#/components/schemas/sdk'
createdAt:
type: string
format: date-time
description: The date and time at which the pull request was created.
updatedAt:
type: string
format: date-time
description: The date and time at which the pull request was last updated.
required:
- number
- url
- status
- createdAt
- updatedAt
description: Information about a pull request that shipped the SDK update.
title: sdkGitConnectionPullRequest
simpleSdkGitConnectionPullRequest:
type: object
properties:
url:
type: string
format: uri
description: The pull request's URL.
status:
$ref: '#/components/schemas/sdkGitConnectionPRStatus'
sdkId:
$ref: '#/components/schemas/sdkId'
required:
- url
- status
- sdkId
title: simpleSdkGitConnectionPullRequest
limitDefault25:
type: integer
default: 25
title: limitDefault25
sdkList:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/sdk'
description: A list of SDKs.
meta:
$ref: '#/components/schemas/metaNextCursorTotal'
required:
- data
- meta
title: sdkList
GetSdkGitConnectionsRequestForbiddenError:
oneOf:
- $ref: '#/components/schemas/commonErrorTypeTitleDetailStatus'
- $ref: '#/components/schemas/commonErrorNameMessage'
title: GetSdkGitConnectionsRequestForbiddenError
GetSdkRequestForbiddenError:
oneOf:
# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/postman/refs/heads/main/openapi/postman-sdks-api-openapi.yml