# Vendor facets — Postman. The API client that named the check: postman_present reads only # Postman-typed pointers (Postman, Postman Collection, PostmanCollection, PostmanWorkspace), so a # collection the provider publishes in its own public workspace is the one first-party route to it. # Around that, Postman can produce real provider artifacts (collection-published docs, a public mock, # an OpenAPI 2.0/3.0/3.1 generated in Spec Hub, SDKs and a CLI from the SDK Generator). Its own MCP # server, CLI agent skills, governance and API Network listing are about Postman, not the provider, # and earn the provider nothing. vendor: postman name: Postman website: https://www.postman.com areas: - api-collections registry_keys: - postman rubric_schema_version: 0.22.0 generated: '2026-09-25' features_refreshed: '2026-09-25' basis: capability summary: >- Postman moves a provider's score through the files it helps the provider publish, not through the Postman brand. A collection in the provider's own public workspace earns postman_present at full credit; one a community member or a vendor forked or generated does not. Collection-published docs, a public mock server, and Spec Hub's OpenAPI generation can each earn a pointer or contract check once the provider declares them, but a generated spec inherits whatever the collection was missing. The MCP Generator produces code the provider must deploy itself, which grades as a template, and the Postman MCP server, agent skills and API Network listing describe Postman, not the provider's API. features: - id: public-workspace-collection name: Collections published in a public workspace on the Postman API Network description: >- A provider makes its team workspace public so its collections appear on the API Network under its (optionally verified) team. source: https://learning.postman.com/docs/postman-api-network/showcase/publish/public-apis tier: all - id: run-in-postman name: Run in Postman button description: >- An embeddable button that forks a public collection (and optional environment) into the consumer's own Postman. source: https://learning.postman.com/docs/publishing-your-api/run-in-postman/introduction-run-button/ tier: all - id: published-docs name: Documentation published from a collection description: >- Postman renders a collection as hosted docs on documenter.getpostman.com, synced to the collection, with code samples and a Run in Postman button; custom domains on paid plans. source: https://learning.postman.com/docs/publishing-your-api/publishing-your-docs/ tier: all - id: mock-servers name: Mock servers description: >- Hosted mocks that answer from a collection's saved examples; new mocks are public by default, private ones need a Postman API key. source: https://learning.postman.com/docs/designing-and-developing-your-api/mocking-data/setting-up-mock/ tier: all - id: spec-hub-generate name: Generate an OpenAPI specification from a collection (Spec Hub) description: >- Generates an OpenAPI 2.0, 3.0 or 3.1 document (YAML or JSON) with paths and components from a collection, typed only where the collection was typed. source: https://learning.postman.com/docs/design-apis/collections/generate-specifications tier: all - id: sdk-generator name: SDK Generator description: >- Generates client SDKs in nine languages, and a CLI, from a collection or specification; GitHub publishing on Team, automated pipelines on Enterprise. source: https://learning.postman.com/docs/sdk-generator/overview tier: paid - id: sdk-cli name: CLI generation via postman sdk generate description: >- The same generator lists `cli` as a target language, producing a command-line client for the provider's API. source: https://learning.postman.com/docs/sdk-generator/sdk-cli tier: paid - id: mcp-generator name: MCP Generator description: >- Picks public API Network requests and generates an MCP server (one tool per request) that is set up and run locally, then promoted on the API Network. source: https://learning.postman.com/docs/postman-api-network/showcase/publish/mcp-servers/overview tier: all - id: postman-mcp-server name: Postman MCP Server description: >- A remote MCP server at mcp.postman.com exposing Postman's own platform API (collections, specs, workspaces). source: https://www.postman.com/product/mcp-server/ tier: all - id: cli-agent-skills name: Agent skills installed by the Postman CLI description: >- postman init writes SKILL.md files from the postmanlabs/skills repository that teach an agent to use Postman and its CLI. source: https://learning.postman.com/docs/postman-cli/postman-cli-skills tier: all - id: postman-flows name: Postman Flows description: >- A visual low-code canvas for assembling API workflows that can be deployed to the cloud as endpoints. source: https://learning.postman.com/docs/postman-flows/overview/ tier: all - id: governance-catalog name: API governance rules and API Catalog description: >- Design rules and linting enforced inside Postman on OpenAPI and AsyncAPI, plus an internal catalog of a team's APIs. source: https://www.postman.com/product/governance/ tier: enterprise - id: api-network-listing name: Postman API Network listing and verified publisher badge description: A directory of public workspaces and collections, with a verification badge for publisher teams. source: https://learning.postman.com/docs/postman-api-network/showcase/publish/public-apis tier: all maps: - feature: public-workspace-collection check: postman_present layer: composite credit: 1.0 provider_must: >- Publish the collection in the provider's OWN team's public workspace and declare it as a Postman pointer in apis.yml. A fork, a community workspace, or a collection a vendor or API Evangelist generated from the OpenAPI grades as derived (0.25) under 0.18.3+ provenance grading. note: >- The only first-party route to this check. The alias set is Postman-only, so this is also the only API client whose native collection format the check reads at all. catalog_pass_rate: 0.018 facet: developer_ergonomics points: 2 baseline_pass_rate: 0.121 - feature: published-docs check: documentation_present layer: composite credit: 1.0 provider_must: Declare the published docs URL as Documentation in apis.yml. note: >- A pointer check reads the type, not the quality. Collection docs on documenter.getpostman.com are a request list with samples; a provider with a real portal already earns this and gains nothing. catalog_pass_rate: 0.453 facet: developer_ergonomics points: 4 baseline_pass_rate: 0.95 saturated: true saturated_note: >- 95% of providers with a contract, docs and a reference already earn this; the vendor cannot move it for most of its buyers. - feature: mock-servers check: console_or_sandbox layer: composite credit: 1.0 conditional: true condition: >- Only if the collection carries saved examples for its requests and the mock is left public — a mock answers only from saved examples, so a collection of bare requests mocks nothing useful. provider_must: Declare the public mock URL as Sandbox in apis.yml. catalog_pass_rate: 0.089 facet: developer_ergonomics points: 3 baseline_pass_rate: 0.332 - feature: spec-hub-generate check: contract_present layer: composite creates_artifact: true provider_must: Generate the spec, publish it where the provider controls it, and register it in apis.yml. note: >- Creates a contract for a provider that only had a collection. Every downstream contract_quality check (descriptions, error responses, examples, security schemes) scores what the collection contained; Postman types parameters only where the collection was typed. catalog_pass_rate: 0.31 facet: contract_quality points: 20 baseline_pass_rate: 0.949 saturated: true saturated_note: >- 95% of providers with a contract, docs and a reference already earn this; the vendor cannot move it for most of its buyers. - feature: spec-hub-generate check: openapi_3_1 layer: composite conditional: true condition: Only if the provider chooses 3.1 at generation time; 2.0 and 3.0 are also offered. catalog_pass_rate: 0.414 facet: contract_quality points: 5 baseline_pass_rate: 0.411 - feature: sdk-generator check: sdk_count_1 layer: composite provider_must: Publish the generated SDK (package registry or public repo) and declare it as SDK in apis.yml. catalog_pass_rate: 0.148 facet: developer_ergonomics points: 3 baseline_pass_rate: 0.413 - feature: sdk-generator check: sdk_count_3 layer: composite provider_must: Publish at least three generated SDKs and declare each one. catalog_pass_rate: 0.018 facet: developer_ergonomics points: 4 baseline_pass_rate: 0.043 - feature: sdk-cli check: cli_present layer: composite provider_must: Publish the generated CLI and declare it as CLI in apis.yml. catalog_pass_rate: 0.063 facet: developer_ergonomics points: 3 baseline_pass_rate: 0.19 - feature: mock-servers check: examples_published layer: composite conditional: true condition: >- Only if the collection holds saved request/response examples and the provider declares the published collection or docs as Examples — the same collection typed twice is not a corpus. catalog_pass_rate: 0.052 facet: contract_quality points: 4 baseline_pass_rate: 0.127 - feature: published-docs check: openapi_examples layer: agent_readiness grade: documented partial: true partial_note: >- The dimension reads examples inside the OpenAPI first; collection docs reach only the Examples-link fallback (0.25). A Spec Hub spec does not promise to carry saved examples. points: 7 baseline_pass_rate: 0.36 - feature: mcp-generator check: mcp_server layer: agent_readiness grade: templated note: >- The generator emits one template per request for the provider to run and host; it is not a probed remote server on the provider's domain. At best `templated` (0.6) once deployed and declared; left as a local download it reaches nothing. points: 12 baseline_pass_rate: 0.22 earns_nothing: - feature: run-in-postman check: console_or_sandbox why: >- It forks the collection into the consumer's own client; nothing is hosted to try against, so it is not a console. It helps a reader reach the collection that postman_present already credits. - feature: postman-mcp-server check: mcp_server why: >- mcp.postman.com exposes Postman's platform API, not the provider's; the dimension reads the provider's own mcp/ manifest. - feature: cli-agent-skills check: agent_skill_present why: >- The skills teach an agent to drive Postman and its CLI; they are Postman's, not a skill for the provider's API. - feature: governance-catalog check: rules_present why: >- The rules are enforced inside Postman workspaces; the check reads a ruleset the provider publishes. Nothing on the governance page publishes the rules outside Postman. - feature: api-network-listing check: apis_json_self_hosted why: >- A directory listing on postman.com is a catalog entry on a host the provider does not control, which is what this check discounts. out_of_reach: checks: - llms_txt_published - agent_skills - well_known_published - change_log_present - status_page_present - rate_limits_documented note: >- Nothing on the fetched pages writes an llms.txt, an Agent Skill for the provider's API, a .well-known document, a changelog, a status page or a rate-limit statement on the provider's surface. unscored_practice: - feature: postman-flows why: >- Flows is a workflow canvas; no check reads a workflow a provider builds in it (the nearest published form, an Arazzo document, is not produced by anything on the fetched page). surface: contract_quality: reachable: 29.0 total: 211 developer_ergonomics: reachable: 19.0 total: 42 agent_readiness: reachable: 8.9 total: 139 hard_rule: >- A model, not a score. Adopting this vendor changes a provider's Kin Score only when the provider publishes the resulting artifacts on its own surface; nothing here writes a score, and no sponsorship or partnership can. method: searched source: - https://learning.postman.com/docs/design-apis/collections/generate-specifications - https://learning.postman.com/docs/designing-and-developing-your-api/mocking-data/setting-up-mock/ - https://learning.postman.com/docs/postman-api-network/showcase/publish/mcp-servers/overview - https://learning.postman.com/docs/postman-api-network/showcase/publish/public-apis - https://learning.postman.com/docs/postman-cli/postman-cli-skills - https://learning.postman.com/docs/postman-flows/overview/ - https://learning.postman.com/docs/publishing-your-api/publishing-your-docs/ - https://learning.postman.com/docs/publishing-your-api/run-in-postman/introduction-run-button/ - https://learning.postman.com/docs/sdk-generator/overview - https://learning.postman.com/docs/sdk-generator/sdk-cli - https://www.postman.com/product/governance/ - https://www.postman.com/product/mcp-server/ measured: cohort: method: vendors-catalog.json detections (CNAME / header / URL shape / markup), never a name match detected: 22 in_baseline: 16 control: basis: providers earning contract_present + documentation_present + api_reference_present, minus the cohort n: 5200 metric: >- cohort_pct / control_pct = mean share of the check's points earned (derived and platform credit weighted), x100 measured_on: '2026-09-25' status: 'not measurable: 16 detected customers clear the baseline (need 20)' simulation: simulated_on: '2026-09-25' rubric: 0.23.0 population: providers publishing a contract (contract_present earned), replayable exactly providers: 8977 providers_unreplayable: 987 providers_moved: 8968 conditional_rows: excluded (they depend on what the API already does) composite_lift: median: 5.7 p75: 5.7 p90: 7.3 max: 10.7 mean_among_movers: 5.3 agent_readiness_lift: median: 5.2 p75: 6.4 p90: 6.5 max: 7.5 mean_among_movers: 5.3 facet_lift_median_among_movers: developer_ergonomics: 28.5 contract_quality: 10.2 composite_band_moves: thin -> developing: 1854 developing -> strong: 1005 emerging -> thin: 356 strong -> exemplar: 284 minimal -> emerging: 3 agent_readiness_band_moves: agent-aware -> agent-ready: 2490 agent-ready -> agent-native: 197 method: >- each provider's own kin/checks file, the vendor's maps at their stated credit, the scorer's composite formula; from -> to, nothing written