naftiko: 1.0.0-alpha2 info: label: Postman Collections API — Collections description: 'Postman Collections API — Collections. 10 operations. Lead operation: Postman Get all collections. Self-contained Naftiko capability covering one Postman business surface.' tags: - Postman - Collections created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: POSTMAN_API_KEY: POSTMAN_API_KEY capability: consumes: - type: http namespace: collections-collections baseUri: https://api.getpostman.com description: Postman Collections API — Collections business capability. Self-contained, no shared references. resources: - name: collections path: /collections operations: - name: getallcollections method: GET description: Postman Get all collections outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: workspace in: query type: string description: Filter results to a specific workspace by providing the workspace ID. - name: name in: query type: string description: Filter results by collection name (case-insensitive partial match). - name: createcollection method: POST description: Postman Create a collection outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: workspace in: query type: string description: The workspace ID to create the collection in. If not specified, the collection is created in your personal workspace. - name: body in: body type: object description: Request body (JSON). required: true - name: collections-fork-collectionId path: /collections/fork/{collectionId} operations: - name: forkcollection method: POST description: Postman Fork a collection outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: workspace in: query type: string description: The workspace ID to fork the collection into. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: collections-merge path: /collections/merge operations: - name: mergecollection method: POST description: Postman Merge a fork outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: collections-collectionId path: /collections/{collectionId} operations: - name: getcollection method: GET description: Postman Get a collection outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: access_key in: query type: string description: A collection's read-only access key. Using this parameter does not require an API key. - name: updatecollection method: PUT description: Postman Update a collection outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletecollection method: DELETE description: Postman Delete a collection outputRawFormat: json outputParameters: - name: result type: object value: $. - name: collections-collectionId-folders path: /collections/{collectionId}/folders operations: - name: getcollectionfolders method: GET description: Postman Get all folders in a collection outputRawFormat: json outputParameters: - name: result type: object value: $. - name: collections-collectionId-requests path: /collections/{collectionId}/requests operations: - name: getcollectionrequests method: GET description: Postman Get all requests in a collection outputRawFormat: json outputParameters: - name: result type: object value: $. - name: collections-collectionId-responses path: /collections/{collectionId}/responses operations: - name: getcollectionresponses method: GET description: Postman Get all responses in a collection outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: apikey key: x-api-key value: '{{env.POSTMAN_API_KEY}}' placement: header exposes: - type: rest namespace: collections-collections-rest port: 8080 description: REST adapter for Postman Collections API — Collections. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/collections name: collections description: REST surface for collections. operations: - method: GET name: getallcollections description: Postman Get all collections call: collections-collections.getallcollections with: workspace: rest.workspace name: rest.name outputParameters: - type: object mapping: $. - method: POST name: createcollection description: Postman Create a collection call: collections-collections.createcollection with: workspace: rest.workspace body: rest.body outputParameters: - type: object mapping: $. - path: /v1/collections/fork/{collectionid} name: collections-fork-collectionid description: REST surface for collections-fork-collectionId. operations: - method: POST name: forkcollection description: Postman Fork a collection call: collections-collections.forkcollection with: workspace: rest.workspace body: rest.body outputParameters: - type: object mapping: $. - path: /v1/collections/merge name: collections-merge description: REST surface for collections-merge. operations: - method: POST name: mergecollection description: Postman Merge a fork call: collections-collections.mergecollection with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/collections/{collectionid} name: collections-collectionid description: REST surface for collections-collectionId. operations: - method: GET name: getcollection description: Postman Get a collection call: collections-collections.getcollection with: access_key: rest.access_key outputParameters: - type: object mapping: $. - method: PUT name: updatecollection description: Postman Update a collection call: collections-collections.updatecollection with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletecollection description: Postman Delete a collection call: collections-collections.deletecollection outputParameters: - type: object mapping: $. - path: /v1/collections/{collectionid}/folders name: collections-collectionid-folders description: REST surface for collections-collectionId-folders. operations: - method: GET name: getcollectionfolders description: Postman Get all folders in a collection call: collections-collections.getcollectionfolders outputParameters: - type: object mapping: $. - path: /v1/collections/{collectionid}/requests name: collections-collectionid-requests description: REST surface for collections-collectionId-requests. operations: - method: GET name: getcollectionrequests description: Postman Get all requests in a collection call: collections-collections.getcollectionrequests outputParameters: - type: object mapping: $. - path: /v1/collections/{collectionid}/responses name: collections-collectionid-responses description: REST surface for collections-collectionId-responses. operations: - method: GET name: getcollectionresponses description: Postman Get all responses in a collection call: collections-collections.getcollectionresponses outputParameters: - type: object mapping: $. - type: mcp namespace: collections-collections-mcp port: 9090 transport: http description: MCP adapter for Postman Collections API — Collections. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: postman-get-all-collections description: Postman Get all collections hints: readOnly: true destructive: false idempotent: true call: collections-collections.getallcollections with: workspace: tools.workspace name: tools.name outputParameters: - type: object mapping: $. - name: postman-create-collection description: Postman Create a collection hints: readOnly: false destructive: false idempotent: false call: collections-collections.createcollection with: workspace: tools.workspace body: tools.body outputParameters: - type: object mapping: $. - name: postman-fork-collection description: Postman Fork a collection hints: readOnly: false destructive: false idempotent: false call: collections-collections.forkcollection with: workspace: tools.workspace body: tools.body outputParameters: - type: object mapping: $. - name: postman-merge-fork description: Postman Merge a fork hints: readOnly: false destructive: false idempotent: false call: collections-collections.mergecollection with: body: tools.body outputParameters: - type: object mapping: $. - name: postman-get-collection description: Postman Get a collection hints: readOnly: true destructive: false idempotent: true call: collections-collections.getcollection with: access_key: tools.access_key outputParameters: - type: object mapping: $. - name: postman-update-collection description: Postman Update a collection hints: readOnly: false destructive: false idempotent: true call: collections-collections.updatecollection with: body: tools.body outputParameters: - type: object mapping: $. - name: postman-delete-collection description: Postman Delete a collection hints: readOnly: false destructive: true idempotent: true call: collections-collections.deletecollection outputParameters: - type: object mapping: $. - name: postman-get-all-folders-collection description: Postman Get all folders in a collection hints: readOnly: true destructive: false idempotent: true call: collections-collections.getcollectionfolders outputParameters: - type: object mapping: $. - name: postman-get-all-requests-collection description: Postman Get all requests in a collection hints: readOnly: true destructive: false idempotent: true call: collections-collections.getcollectionrequests outputParameters: - type: object mapping: $. - name: postman-get-all-responses-collection description: Postman Get all responses in a collection hints: readOnly: true destructive: false idempotent: true call: collections-collections.getcollectionresponses outputParameters: - type: object mapping: $.