← PostmanCONTENT HISTORY

Update to Postman

Snapshot Oct 24, 2026 · 12:56 UTC · version 0.4.0

WHAT CHANGED

Declared capabilities changed

Declared skills — Now says: [{"description":"Use when assessing or improving how well AI agents can discover, call, and recover from errors with an API. Scores an existing Postman...

Observed in instructions or declared skills. Runtime behavior has not been tested.

Save Postman and check future changes in Following.

Up to 3 plugins free · no card required.

All fields and original values.

Declared skills

Before

Sep 30, 2026 · 23:09 UTC

[{"description":"Scores a Postman collection or an OpenAPI spec for how well an AI agent can discover, understand, call, and recover from errors with it — missing examples, undocumented errors, and ambiguous parameters all cost points. U...

After

Oct 24, 2026 · 12:56 UTC

[{"description":"Use when assessing or improving how well AI agents can discover, call, and recover from errors with an API. Scores an existing Postman collection or OpenAPI spec and turns measured gaps into contract improvements; suppor...

Is template instance

Before

Sep 30, 2026 · 23:09 UTC

Not present

After

Oct 24, 2026 · 12:56 UTC

false

App-6a6b12e06c5c8191ac5d5252fa5f92c8

Before

Sep 30, 2026 · 23:09 UTC

{"id":"asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8","required":true}

After

Oct 24, 2026 · 12:56 UTC

Not present

Postman

Before

Sep 30, 2026 · 23:09 UTC

Not present

After

Oct 24, 2026 · 12:56 UTC

{"id":"asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8","required":true}

Compare saved observations

Download comparison JSON
Full technical diff · 11 changed fields

added /is_template_instance

BEFORE
Field was absent
AFTER
false

removed /release/app_manifest/apps/app-6a6b12e06c5c8191ac5d5252fa5f92c8

BEFORE
{
  "id": "asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8",
  "required": true
}
AFTER
Field is absent

added /release/app_manifest/apps/postman

BEFORE
Field was absent
AFTER
{
  "id": "asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8",
  "required": true
}

changed /release/id

BEFORE
"pluginrel_ebd3d9af4e3c8191a4bf48b4476e0976"
AFTER
"pluginrel_d8fd6b9d43648191b96580b0a74031ed"

changed /release/interface/composer_icon_dark_url

BEFORE
"https://files.openai.com/content?id=file_0000000089908210b91c61cd3c35d82b"
AFTER
null

changed /release/interface/composer_icon_url

BEFORE
"https://files.openai.com/content?id=file_0000000089908210b91c61cd3c35d82b"
AFTER
"https://files.openai.com/content?id=file_000000005e10820aa6034847e2e5bf95"

changed /release/interface/logo_url

BEFORE
"https://files.openai.com/content?id=file_0000000041a0824384bd54d9c0236bb6"
AFTER
"https://files.openai.com/content?id=file_00000000e114820a908dc985e74f72a4"

changed /release/interface/logo_url_dark

BEFORE
"https://files.openai.com/content?id=file_0000000041a0824384bd54d9c0236bb6"
AFTER
null

changed /release/mcp_servers

BEFORE
[]
AFTER
[
  {
    "key": "postman",
    "metadata": {
      "type": "http",
      "url": "https://mcp.postman.com/mcp"
    }
  }
]

changed /release/skills

BEFORE
[
  {
    "description": "Scores a Postman collection or an OpenAPI spec for how well an AI agent can discover, understand, call, and recover from errors with it — missing examples, undocumented errors, and ambiguous parameters all cost points. Use when the user asks \"is my API agent-ready,\" \"can AI agents use my API,\" \"how agent-friendly is my API,\" or wants to scan, score, or improve a collection or spec for AI/agent consumption. Covers `postman collection ai-readiness` and `postman spec ai-readiness`.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "ai-readiness",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "radar",
      "short_description": "Scores a Postman collection or an OpenAPI spec for how well an AI agent can discover, understand, call, and recover from errors with it — missing examples, undocumented errors, and ambiguous parameters all cost points. Use when the user asks \"is my API agent-ready,\" \"can AI agents use my API,\" \"how agent-friendly is my API,\" or wants to scan, score, or improve a collection or spec for AI/agent consumption. Covers `postman collection ai-readiness` and `postman spec ai-readiness`."
    },
    "name": "ai-readiness",
    "plugin_release_skill_id": "pluginrsk_6aba8f0ae07c8191ad87a210f7914946"
  },
  {
    "description": "Discover and use APIs from the web or Postman. Find and integrate public third-party APIs with Orbit, locate Postman entities with search, and use the Context Graph to investigate dependencies, ownership, runtime behavior, and change impact across an API ecosystem.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-discovery",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "search",
      "short_description": "Discover and use APIs from the web or Postman. Find and integrate public third-party APIs with Orbit, locate Postman entities with search, and use the Context Graph to investigate dependencies, ownership, runtime behavior, and change impact across an API ecosystem."
    },
    "name": "api-discovery",
    "plugin_release_skill_id": "pluginrsk_6aba8f0b19688191a16c2238cae169f1"
  },
  {
    "description": "Generate filesystem-first agent friendly api documentation that you can share with your teammates without hassle. Use when the user asks to \"publish API docs,\" \"generate documentation for this API,\" \"put this on the API Network,\" \"share a docs link for this collection or spec,\" or \"why do my docs look empty.\"",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-documentation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pdf",
      "short_description": "Generate filesystem-first agent friendly api documentation that you can share with your teammates without hassle. Use when the user asks to \"publish API docs,\" \"generate documentation for this API,\" \"put this on the API Network,\" \"share a docs link for this collection or spec,\" or \"why do my docs look empty.\""
    },
    "name": "api-documentation",
    "plugin_release_skill_id": "pluginrsk_6aba8f0b519c819183f27d0d81b2c740"
  },
  {
    "description": "Default entry point for API engineering work — designing, implementing, mocking, testing, monitoring, documenting, or deploying an API.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-engineer",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "chat",
      "short_description": "Default entry point for API engineering work — designing, implementing, mocking, testing, monitoring, documenting, or deploying an API."
    },
    "name": "api-engineer",
    "plugin_release_skill_id": "pluginrsk_6aba8f0b94688191bbf3f2f18eb6064a"
  },
  {
    "description": "Stands up a fake backend that behaves like a real API — from a collection or an OpenAPI spec, running locally or pushed to Postman's cloud for a durable URL — plus request-time scenario and status-code overrides for testing failure paths. Use when the user asks to \"mock this API,\" \"create a mock server,\" \"fake the backend,\" \"run tests without hitting the real API,\" or \"simulate an error/out-of-stock response.\" Covers `postman mock`. Depends on bootstrap for the workspace id only once a mock is pushed to the cloud (`-w`, or the workspace linked in `.postman/resources.yaml`) — generating and running a mock locally needs nothing from bootstrap.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-mocking",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Stands up a fake backend that behaves like a real API — from a collection or an OpenAPI spec, running locally or pushed to Postman's cloud for a durable URL — plus request-time scenario and status-code overrides for testing failure paths. Use when the user asks to \"mock this API,\" \"create a mock server,\" \"fake the backend,\" \"run tests without hitting the real API,\" or \"simulate an error/out-of-stock response.\" Covers `postman mock`. Depends on bootstrap for the workspace id only once a mock is pushed to the cloud (`-w`, or the workspace linked in `.postman/resources.yaml`) — generating and running a mock locally needs nothing from bootstrap."
    },
    "name": "api-mocking",
    "plugin_release_skill_id": "pluginrsk_6aba8f0bc5fc8191bebdb6d4a396ec7d"
  },
  {
    "description": "Creates, schedules, and manages Postman Monitors — recurring checks against a live API — triggers ad hoc runs, inspects job/run history to diagnose failures, and hosts self-hosted execution runners for monitors on a private network. Use when the user asks to \"set up a monitor,\" \"run this monitor now,\" \"check monitor results,\" \"pause/resume a monitor,\" or \"set up a runner for our internal APIs.\" Covers `postman monitor` (create, update, delete, list, get, pause, resume, run, jobs, runs) and `postman runner` (start, list, regions).",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-monitoring",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "chart",
      "short_description": "Creates, schedules, and manages Postman Monitors — recurring checks against a live API — triggers ad hoc runs, inspects job/run history to diagnose failures, and hosts self-hosted execution runners for monitors on a private network. Use when the user asks to \"set up a monitor,\" \"run this monitor now,\" \"check monitor results,\" \"pause/resume a monitor,\" or \"set up a runner for our internal APIs.\" Covers `postman monitor` (create, update, delete, list, get, pause, resume, run, jobs, runs) and `postman runner` (start, list, regions)."
    },
    "name": "api-monitoring",
    "plugin_release_skill_id": "pluginrsk_6aba8f0bfef48191a2eddef809ef751e"
  },
  {
    "description": "Runs tests against an API from the command line — a single ad-hoc request, a full collection of pm.test assertions, or matching real captured app traffic against a collection contract. Use when the user asks to \"test this endpoint,\" \"run this collection,\" \"check the API still works,\" or \"verify my app's requests match the contract.\" Covers `postman request`, `postman collection run`, and `postman application test`. Depends on bootstrap when the target is a cloud collection or workspace-bound environment; a bare URL or local collection needs nothing from bootstrap.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-testing",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "default",
      "short_description": "Runs tests against an API from the command line — a single ad-hoc request, a full collection of pm.test assertions, or matching real captured app traffic against a collection contract. Use when the user asks to \"test this endpoint,\" \"run this collection,\" \"check the API still works,\" or \"verify my app's requests match the contract.\" Covers `postman request`, `postman collection run`, and `postman application test`. Depends on bootstrap when the target is a cloud collection or workspace-bound environment; a bare URL or local collection needs nothing from bootstrap."
    },
    "name": "api-testing",
    "plugin_release_skill_id": "pluginrsk_6aba8f0c39f481919e5a6bb773c8a9d4"
  },
  {
    "description": "Resolves the Postman CLI, authenticates when the task needs it, and manages the filesystem/workspace binding for a repository. Use when the user asks to set up Postman, enable filesystem workflows, authenticate, initialize, import, connect, pull, push, sync, or share a workspace — and before skills that need a linked workspace, only when the CLI, linked workspace, or spec path has not already been confirmed.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "bootstrap",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pen",
      "short_description": "Resolves the Postman CLI, authenticates when the task needs it, and manages the filesystem/workspace binding for a repository. Use when the user asks to set up Postman, enable filesystem workflows, authenticate, initialize, import, connect, pull, push, sync, or share a workspace — and before skills that need a linked workspace, only when the CLI, linked workspace, or spec path has not already been confirmed."
    },
    "name": "bootstrap",
    "plugin_release_skill_id": "pluginrsk_6aba8f0c6e7881918f18deb7ad21967e"
  },
  {
    "description": "Common CI integrations that can added as independent pass/fail gates. Use when the user asks to \"add Postman to CI,\" \"run this collection on every PR,\" \"fail the build on a governance violation,\" or \"push to the postman cloud workspace after merge to main\", \"add some api related operation in my Github actions\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "ci-integration",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "hierarchy",
      "short_description": "Common CI integrations that can added as independent pass/fail gates. Use when the user asks to \"add Postman to CI,\" \"run this collection on every PR,\" \"fail the build on a governance violation,\" or \"push to the postman cloud workspace after merge to main\", \"add some api related operation in my Github actions\"."
    },
    "name": "ci-integration",
    "plugin_release_skill_id": "pluginrsk_6aba8f0ca1e48191a36219e486480f6f"
  },
  {
    "description": "The reference for the git-native v3 collection file format — one YAML file per request/folder/example under postman/collections/, plus postman/environments/. Read before writing, editing, or generating any file in either directory by hand, or before debugging a `collection lint` failure. Covers the HTTP request/example/definition schema, environment schema, and the YAML/naming rules that make files parse — GraphQL, gRPC, WebSocket, Socket.IO, MQTT, MCP, and LLM request schemas are non-HTTP protocols and live in reference/other_protocols.md, read only when a collection actually uses one.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "collection-schema-v3",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "pdf",
      "short_description": "The reference for the git-native v3 collection file format — one YAML file per request/folder/example under postman/collections/, plus postman/environments/. Read before writing, editing, or generating any file in either directory by hand, or before debugging a `collection lint` failure. Covers the HTTP request/example/definition schema, environment schema, and the YAML/naming rules that make files parse — GraphQL, gRPC, WebSocket, Socket.IO, MQTT, MCP, and LLM request schemas are non-HTTP protocols and live in reference/other_protocols.md, read only when a collection actually uses one."
    },
    "name": "collection-schema-v3",
    "plugin_release_skill_id": "pluginrsk_6aba8f0ce0bc8191ac8c707fde474494"
  },
  {
    "description": "Runs, deploys, and debugs Postman Flows from the command line — executing a flow file locally, triggering a deployed flow over its webhook, deploying one so it becomes callable, and tracing a failed run to the block that broke. Use when the user names a flow and an action (\"run the Checkout flow\", \"deploy this flow\", \"why did that flow run fail\", \"what flows do I have\"). Covers `postman flows list`, `run`, `trigger`, `deploy`, `update`, `list-runs`, and `get-run`.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "flows",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Runs, deploys, and debugs Postman Flows from the command line — executing a flow file locally, triggering a deployed flow over its webhook, deploying one so it becomes callable, and tracing a failed run to the block that broke. Use when the user names a flow and an action (\"run the Checkout flow\", \"deploy this flow\", \"why did that flow run fail\", \"what flows do I have\"). Covers `postman flows list`, `run`, `trigger`, `deploy`, `update`, `list-runs`, and `get-run`."
    },
    "name": "flows",
    "plugin_release_skill_id": "pluginrsk_6aba8f0dc1d48191ba56937038d303fe"
  },
  {
    "description": "Load-tests a collection with concurrent virtual users, a chosen load profile, and pass/fail thresholds on latency or error rate — run locally or on Postman's cloud runners. Use when the user asks to \"load test this API,\" \"run a performance test,\" \"check how this holds up under load,\" or \"benchmark this collection.\" Covers `postman performance run`. This generates real traffic against a real target — confirm the target and scale before running, the same way any action with effects outside this session gets confirmed.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "performance-testing",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "chart",
      "short_description": "Load-tests a collection with concurrent virtual users, a chosen load profile, and pass/fail thresholds on latency or error rate — run locally or on Postman's cloud runners. Use when the user asks to \"load test this API,\" \"run a performance test,\" \"check how this holds up under load,\" or \"benchmark this collection.\" Covers `postman performance run`. This generates real traffic against a real target — confirm the target and scale before running, the same way any action with effects outside this session gets confirmed."
    },
    "name": "performance-testing",
    "plugin_release_skill_id": "pluginrsk_6aba8f0df5d48191ac01dd458b8a539b"
  },
  {
    "description": "Postman concepts and MCP tool guidance. Loaded when working with Postman MCP tools to make better decisions about tool selection and workarounds.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "postman-mcp-server",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "heart",
      "short_description": "Postman concepts and MCP tool guidance. Loaded when working with Postman MCP tools to make better decisions about tool selection and workarounds."
    },
    "name": "postman-mcp-server",
    "plugin_release_skill_id": "pluginrsk_6aba8f0e27e88191844e1f778d0a5c73"
  }
]
AFTER
[
  {
    "description": "Use when assessing or improving how well AI agents can discover, call, and recover from errors with an API. Scores an existing Postman collection or OpenAPI spec and turns measured gaps into contract improvements; supports a separate CI readiness threshold. Use for requests such as \"is this API ready for agents\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "ai-readiness",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "radar",
      "short_description": "Use when assessing or improving how well AI agents can discover, call, and recover from errors with an API. Scores an existing Postman collection or OpenAPI spec and turns measured gaps into contract improvements; supports a separate CI readiness threshold. Use for requests such as \"is this API ready for agents\"."
    },
    "name": "ai-readiness",
    "plugin_release_skill_id": "pluginrsk_6ad87ff0d24c8191a89ba0b241de1736"
  },
  {
    "description": "Use when finding an API or owner, integrating a public provider, locating Postman resources, or investigating consumers and change impact across services. Turns discovered contracts and mocks into reusable dependencies and identifies evidence outside the current checkout. Use for requests such as \"who consumes this endpoint\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-discovery",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "search",
      "short_description": "Use when finding an API or owner, integrating a public provider, locating Postman resources, or investigating consumers and change impact across services. Turns discovered contracts and mocks into reusable dependencies and identifies evidence outside the current checkout. Use for requests such as \"who consumes this endpoint\"."
    },
    "name": "api-discovery",
    "plugin_release_skill_id": "pluginrsk_6ad87ff326f48191a768660bec0d3613"
  },
  {
    "description": "Use when defining or improving an API contract, generating documentation from a collection or OpenAPI spec, publishing API docs, or sharing a documentation link. Makes auth, inputs, responses, and examples reusable by callers, tests, and mocks. Use for requests such as \"publish API docs\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-documentation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Use when defining or improving an API contract, generating documentation from a collection or OpenAPI spec, publishing API docs, or sharing a documentation link. Makes auth, inputs, responses, and examples reusable by callers, tests, and mocks. Use for requests such as \"publish API docs\"."
    },
    "name": "api-documentation",
    "plugin_release_skill_id": "pluginrsk_6ad87ff4d2708191b75938204afbd805"
  },
  {
    "description": "Use when designing, implementing, mocking, testing, monitoring, documenting, or deploying an API. Guides decisions using reusable local API contracts, tests, and mocks, plus organization-wide dependency context, and routes to the relevant Postman skills. Use for requests such as \"implement this endpoint\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-engineer",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Use when designing, implementing, mocking, testing, monitoring, documenting, or deploying an API. Guides decisions using reusable local API contracts, tests, and mocks, plus organization-wide dependency context, and routes to the relevant Postman skills. Use for requests such as \"implement this endpoint\"."
    },
    "name": "api-engineer",
    "plugin_release_skill_id": "pluginrsk_6ad87ff262ac8191a86119bef356ca5f"
  },
  {
    "description": "Finds, builds, runs and publishes a stand-in for one API — the owning team's published mock when there is one, otherwise one built from its spec or collection that behaves like the real API, stateful when callers write then read. Use when something needs an API that isn't built or reachable yet (a frontend, client or demo), when other teams should build against your API before it ships, or when asked to mock an API or fake a backend. To run and test your own code against the services it calls, use api-simulation. Covers `postman mock` and `postman dependency add mock`.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-mocking",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Finds, builds, runs and publishes a stand-in for one API — the owning team's published mock when there is one, otherwise one built from its spec or collection that behaves like the real API, stateful when callers write then read. Use when something needs an API that isn't built or reachable yet (a frontend, client or demo), when other teams should build against your API before it ships, or when asked to mock an API or fake a backend. To run and test your own code against the services it calls, use api-simulation. Covers `postman mock` and `postman dependency add mock`."
    },
    "name": "api-mocking",
    "plugin_release_skill_id": "pluginrsk_6ad87ff199088191a96c374195b20a68"
  },
  {
    "description": "Use when setting up recurring API checks, running or diagnosing a Postman Monitor, changing its schedule, or reaching private APIs through a self-hosted runner. Reuses collection assertions to detect live regressions and traces failures to individual run evidence. Use for requests such as \"check this API every minute\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-monitoring",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "radar",
      "short_description": "Use when setting up recurring API checks, running or diagnosing a Postman Monitor, changing its schedule, or reaching private APIs through a self-hosted runner. Reuses collection assertions to detect live regressions and traces failures to individual run evidence. Use for requests such as \"check this API every minute\"."
    },
    "name": "api-monitoring",
    "plugin_release_skill_id": "pluginrsk_6ad87ff3a1b48191bc9cce6c233ddcec"
  },
  {
    "description": "Runs your code for real against stand-ins for the HTTP services it calls, served together as one environment on one local port or one deployed URL, whether that code is a service you're changing, a frontend, a test suite or a demo. Use when you add or change code that calls other services and need to run it, test it, prove a fix or reproduce an upstream failure (timeouts, 5xx, 409, 429) end to end, locally or in CI, without the real services because they're unreachable, need credentials, cost money, have side effects or don't exist yet. Also answers what happens to a request, or to the data it writes, when a service it calls goes down, is slow or returns errors (\"what happens to a booking if the email service is down?\"), by running each failure instead of reading the code. Applies even when nobody says mock or simulation. To give a frontend or another team a stand-in for an API, use api-mocking. Covers `postman simulation`.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-simulation",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Runs your code for real against stand-ins for the HTTP services it calls, served together as one environment on one local port or one deployed URL, whether that code is a service you're changing, a frontend, a test suite or a demo. Use when you add or change code that calls other services and need to run it, test it, prove a fix or reproduce an upstream failure (timeouts, 5xx, 409, 429) end to end, locally or in CI, without the real services because they're unreachable, need credentials, cost money, have side effects or don't exist yet. Also answers what happens to a request, or to the data it writes, when a service it calls goes down, is slow or returns errors (\"what happens to a booking if the email service is down?\"), by running each failure instead of reading the code. Applies even when nobody says mock or simulation. To give a frontend or another team a stand-in for an API, use api-mocking. Covers `postman simulation`."
    },
    "name": "api-simulation",
    "plugin_release_skill_id": "pluginrsk_6ad87ff080f08191b07e5fd9b79ed4f5"
  },
  {
    "description": "Use when testing an endpoint, running collection assertions, or checking real application traffic against an API contract. Reuses saved requests and reports what live, mocked, or captured-traffic results actually establish. Use for requests such as \"test this endpoint\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "api-testing",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Use when testing an endpoint, running collection assertions, or checking real application traffic against an API contract. Reuses saved requests and reports what live, mocked, or captured-traffic results actually establish. Use for requests such as \"test this endpoint\"."
    },
    "name": "api-testing",
    "plugin_release_skill_id": "pluginrsk_6ad87ff14810819180517b84efc42ff3"
  },
  {
    "description": "Use when resolving Postman CLI setup, authentication, or a repository workspace binding; initializing local API files; handling a CLI error that says an operation isn't allowed because of insufficient entitlements; or importing, pulling, pushing, syncing, or sharing workspace resources. Reuses existing context and chooses sync direction without duplicating a workspace or rebinding a dependency. Use for requests such as \"set up Postman for this repo\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "bootstrap",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "bolt",
      "short_description": "Use when resolving Postman CLI setup, authentication, or a repository workspace binding; initializing local API files; handling a CLI error that says an operation isn't allowed because of insufficient entitlements; or importing, pulling, pushing, syncing, or sharing workspace resources. Reuses existing context and chooses sync direction without duplicating a workspace or rebinding a dependency. Use for requests such as \"set up Postman for this repo\"."
    },
    "name": "bootstrap",
    "plugin_release_skill_id": "pluginrsk_6ad87ff01ec48191b68ca01d03da735d"
  },
  {
    "description": "Use when adding API tests, structural or governance lint, or AI-readiness gates to CI, or publishing reviewed API artifacts to a Postman workspace after merge. Makes contract checks repeatable and separates validation from shared workspace changes. Use for requests such as \"run this collection on every PR\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "ci-integration",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Use when adding API tests, structural or governance lint, or AI-readiness gates to CI, or publishing reviewed API artifacts to a Postman workspace after merge. Makes contract checks repeatable and separates validation from shared workspace changes. Use for requests such as \"run this collection on every PR\"."
    },
    "name": "ci-integration",
    "plugin_release_skill_id": "pluginrsk_6ad87ff2cd788191b732a1e94f21a024"
  },
  {
    "description": "Use when writing or debugging local Postman v3 collection and environment YAML, including collection lint failures. Preserves the per-entity files, inherited context, and schema shapes that make API changes reusable and reviewable in Git. Use for requests such as \"fix this request YAML\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "collection-schema-v3",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Use when writing or debugging local Postman v3 collection and environment YAML, including collection lint failures. Preserves the per-entity files, inherited context, and schema shapes that make API changes reusable and reviewable in Git. Use for requests such as \"fix this request YAML\"."
    },
    "name": "collection-schema-v3",
    "plugin_release_skill_id": "pluginrsk_6ad87ff1f8688191823aa387182aaf7e"
  },
  {
    "description": "Use when a collection needs queried or joined test inputs, a reusable named view, spreadsheet worksheet data, live database rows, or script access through pm.datasets(). Chooses between a simple iteration file and a dataset while preserving query semantics, portability, and credential boundaries. Use for requests such as \"run this collection over database rows\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "datasets",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "chart",
      "short_description": "Use when a collection needs queried or joined test inputs, a reusable named view, spreadsheet worksheet data, live database rows, or script access through pm.datasets(). Chooses between a simple iteration file and a dataset while preserving query semantics, portability, and credential boundaries. Use for requests such as \"run this collection over database rows\"."
    },
    "name": "datasets",
    "plugin_release_skill_id": "pluginrsk_6ad87ff0725c8191bcbcfd307b1bb1d0"
  },
  {
    "description": "Use when running, deploying, or debugging an existing Postman Flow. Distinguishes local graph execution from a deployed webhook, reuses named input scenarios, and follows a run to the failing block rather than treating an HTTP response as whole-flow success. Use for requests such as \"why did this flow fail\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "flows",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Use when running, deploying, or debugging an existing Postman Flow. Distinguishes local graph execution from a deployed webhook, reuses named input scenarios, and follows a run to the failing block rather than treating an HTTP response as whole-flow success. Use for requests such as \"why did this flow fail\"."
    },
    "name": "flows",
    "plugin_release_skill_id": "pluginrsk_6ad87ff39dcc8191b53cc0e3c1e5ca98"
  },
  {
    "description": "Use when load-testing or benchmarking an API with concurrent virtual users and latency or error thresholds. Reuses a collection to probe a chosen failure mode and distinguishes target limits from load-generator limits. Use for requests such as \"load test this API\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "performance-testing",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "chart",
      "short_description": "Use when load-testing or benchmarking an API with concurrent virtual users and latency or error thresholds. Reuses a collection to probe a chosen failure mode and distinguishes target limits from load-generator limits. Use for requests such as \"load test this API\"."
    },
    "name": "performance-testing",
    "plugin_release_skill_id": "pluginrsk_6ad87ff4b5508191898dbc5b6f6abb6f"
  },
  {
    "description": "Use when working through Postman MCP tools to inspect or change workspace resources, choose a targeted operation, or handle MCP limitations. Supports hosted workflows when the CLI is unavailable and distinguishes tool completion from a usable result. Use for requests such as \"use Postman MCP to inspect this collection\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "postman-mcp-server",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "code",
      "short_description": "Use when working through Postman MCP tools to inspect or change workspace resources, choose a targeted operation, or handle MCP limitations. Supports hosted workflows when the CLI is unavailable and distinguishes tool completion from a usable result. Use for requests such as \"use Postman MCP to inspect this collection\"."
    },
    "name": "postman-mcp-server",
    "plugin_release_skill_id": "pluginrsk_6ad87ff4f424819199b42e63c24e5882"
  },
  {
    "description": "Use when parameterizing requests across environments, choosing variable scopes, chaining values in scripts, or referencing credentials without committing or exposing them. Keeps one reusable collection while separating target configuration from secret values. Use for requests such as \"where should I put this API key\".",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "variables",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "hierarchy",
      "short_description": "Use when parameterizing requests across environments, choosing variable scopes, chaining values in scripts, or referencing credentials without committing or exposing them. Keeps one reusable collection while separating target configuration from secret values. Use for requests such as \"where should I put this API key\"."
    },
    "name": "variables",
    "plugin_release_skill_id": "pluginrsk_6ad87ff4a9bc8191bad02bd03e8b2e05"
  },
  {
    "description": "Capture, forward to localhost, replay, and validate webhook deliveries using a reusable public URL. Keep sender configuration across debugging sessions and record arrivals even while local forwarding is stopped, helping distinguish delivery failures from local connectivity issues. Use for implementing or debugging incoming handlers and testing webhooks an API sends, whether or not Postman is mentioned. Example requests include \"get payment events to localhost,\" \"inspect a webhook delivery,\" and \"replay an event after a fix\"; these illustrate intent, not an exhaustive list or exact phrases to match.",
    "interface": {
      "brand_color": null,
      "default_prompt": null,
      "display_name": "webhook-testing",
      "icon_large_url": null,
      "icon_small_url": null,
      "iconography": "radar",
      "short_description": "Capture, forward to localhost, replay, and validate webhook deliveries using a reusable public URL. Keep sender configuration across debugging sessions and record arrivals even while local forwarding is stopped, helping distinguish delivery failures from local connectivity issues. Use for implementing or debugging incoming handlers and testing webhooks an API sends, whether or not Postman is mentioned. Example requests include \"get payment events to localhost,\" \"inspect a webhook delivery,\" and \"replay an event after a fix\"; these illustrate intent, not an exhaustive list or exact phrases to match."
    },
    "name": "webhook-testing",
    "plugin_release_skill_id": "pluginrsk_6ad87ff26090819196609469d6e94f60"
  }
]

changed /release/version

BEFORE
"0.2.1"
AFTER
"0.4.0"
Full snapshot data
{
  "canonical_app_id": "asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8",
  "connector_id": "asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8",
  "created_at": "2026-07-30T09:01:20.695549Z",
  "discoverability": "LISTED",
  "id": "plugin_asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8",
  "is_template": false,
  "is_template_instance": false,
  "name": "app-6a6b12e06c5c8191ac5d5252fa5f92c8",
  "release": {
    "app_ids": [
      "asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8"
    ],
    "app_manifest": {
      "apps": {
        "postman": {
          "id": "asdk_app_6a6b12e06c5c8191ac5d5252fa5f92c8",
          "required": true
        }
      }
    },
    "app_templates": [],
    "description": "Equip Codex with specialized Postman skills for the complete API lifecycle. Discover, design, test, document, mock, monitor, and improve APIs through agent-friendly, filesystem-first workflows",
    "display_name": "Postman",
    "id": "pluginrel_d8fd6b9d43648191b96580b0a74031ed",
    "interface": {
      "brand_color": null,
      "capabilities": [],
      "category": "Developer Tools",
      "composer_icon_dark_url": null,
      "composer_icon_url": "https://files.openai.com/content?id=file_000000005e10820aa6034847e2e5bf95",
      "default_prompt": "create a collection for the API in this repo, add tests, and run them",
      "default_prompts": [
        "create a collection for the API in this repo, add tests, and run them",
        "turn this OpenAPI spec into a working mock server",
        "is this API Agent ready?"
      ],
      "developer_name": "Postman",
      "logo_url": "https://files.openai.com/content?id=file_00000000e114820a908dc985e74f72a4",
      "logo_url_dark": null,
      "long_description": "Equip Codex with specialized Postman skills for the complete API lifecycle. Discover, design, test, document, mock, monitor, and improve APIs through agent-friendly, filesystem-first workflows",
      "plugin_category_id": "developer tools",
      "privacy_policy_url": "https://privacy.postman.com/policies/",
      "screenshot_urls": [],
      "short_description": "API Engineering for Agents",
      "terms_of_service_url": "https://www.postman.com/legal/terms/",
      "website_url": "https://www.postman.com/"
    },
    "keywords": [],
    "mcp_servers": [
      {
        "key": "postman",
        "metadata": {
          "type": "http",
          "url": "https://mcp.postman.com/mcp"
        }
      }
    ],
    "onboarding_skill_name": null,
    "requires_local_executor": false,
    "skills": [
      {
        "description": "Use when assessing or improving how well AI agents can discover, call, and recover from errors with an API. Scores an existing Postman collection or OpenAPI spec and turns measured gaps into contract improvements; supports a separate CI readiness threshold. Use for requests such as \"is this API ready for agents\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "ai-readiness",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "radar",
          "short_description": "Use when assessing or improving how well AI agents can discover, call, and recover from errors with an API. Scores an existing Postman collection or OpenAPI spec and turns measured gaps into contract improvements; supports a separate CI readiness threshold. Use for requests such as \"is this API ready for agents\"."
        },
        "name": "ai-readiness",
        "plugin_release_skill_id": "pluginrsk_6ad87ff0d24c8191a89ba0b241de1736"
      },
      {
        "description": "Use when finding an API or owner, integrating a public provider, locating Postman resources, or investigating consumers and change impact across services. Turns discovered contracts and mocks into reusable dependencies and identifies evidence outside the current checkout. Use for requests such as \"who consumes this endpoint\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "api-discovery",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "search",
          "short_description": "Use when finding an API or owner, integrating a public provider, locating Postman resources, or investigating consumers and change impact across services. Turns discovered contracts and mocks into reusable dependencies and identifies evidence outside the current checkout. Use for requests such as \"who consumes this endpoint\"."
        },
        "name": "api-discovery",
        "plugin_release_skill_id": "pluginrsk_6ad87ff326f48191a768660bec0d3613"
      },
      {
        "description": "Use when defining or improving an API contract, generating documentation from a collection or OpenAPI spec, publishing API docs, or sharing a documentation link. Makes auth, inputs, responses, and examples reusable by callers, tests, and mocks. Use for requests such as \"publish API docs\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "api-documentation",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Use when defining or improving an API contract, generating documentation from a collection or OpenAPI spec, publishing API docs, or sharing a documentation link. Makes auth, inputs, responses, and examples reusable by callers, tests, and mocks. Use for requests such as \"publish API docs\"."
        },
        "name": "api-documentation",
        "plugin_release_skill_id": "pluginrsk_6ad87ff4d2708191b75938204afbd805"
      },
      {
        "description": "Use when designing, implementing, mocking, testing, monitoring, documenting, or deploying an API. Guides decisions using reusable local API contracts, tests, and mocks, plus organization-wide dependency context, and routes to the relevant Postman skills. Use for requests such as \"implement this endpoint\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "api-engineer",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Use when designing, implementing, mocking, testing, monitoring, documenting, or deploying an API. Guides decisions using reusable local API contracts, tests, and mocks, plus organization-wide dependency context, and routes to the relevant Postman skills. Use for requests such as \"implement this endpoint\"."
        },
        "name": "api-engineer",
        "plugin_release_skill_id": "pluginrsk_6ad87ff262ac8191a86119bef356ca5f"
      },
      {
        "description": "Finds, builds, runs and publishes a stand-in for one API — the owning team's published mock when there is one, otherwise one built from its spec or collection that behaves like the real API, stateful when callers write then read. Use when something needs an API that isn't built or reachable yet (a frontend, client or demo), when other teams should build against your API before it ships, or when asked to mock an API or fake a backend. To run and test your own code against the services it calls, use api-simulation. Covers `postman mock` and `postman dependency add mock`.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "api-mocking",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Finds, builds, runs and publishes a stand-in for one API — the owning team's published mock when there is one, otherwise one built from its spec or collection that behaves like the real API, stateful when callers write then read. Use when something needs an API that isn't built or reachable yet (a frontend, client or demo), when other teams should build against your API before it ships, or when asked to mock an API or fake a backend. To run and test your own code against the services it calls, use api-simulation. Covers `postman mock` and `postman dependency add mock`."
        },
        "name": "api-mocking",
        "plugin_release_skill_id": "pluginrsk_6ad87ff199088191a96c374195b20a68"
      },
      {
        "description": "Use when setting up recurring API checks, running or diagnosing a Postman Monitor, changing its schedule, or reaching private APIs through a self-hosted runner. Reuses collection assertions to detect live regressions and traces failures to individual run evidence. Use for requests such as \"check this API every minute\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "api-monitoring",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "radar",
          "short_description": "Use when setting up recurring API checks, running or diagnosing a Postman Monitor, changing its schedule, or reaching private APIs through a self-hosted runner. Reuses collection assertions to detect live regressions and traces failures to individual run evidence. Use for requests such as \"check this API every minute\"."
        },
        "name": "api-monitoring",
        "plugin_release_skill_id": "pluginrsk_6ad87ff3a1b48191bc9cce6c233ddcec"
      },
      {
        "description": "Runs your code for real against stand-ins for the HTTP services it calls, served together as one environment on one local port or one deployed URL, whether that code is a service you're changing, a frontend, a test suite or a demo. Use when you add or change code that calls other services and need to run it, test it, prove a fix or reproduce an upstream failure (timeouts, 5xx, 409, 429) end to end, locally or in CI, without the real services because they're unreachable, need credentials, cost money, have side effects or don't exist yet. Also answers what happens to a request, or to the data it writes, when a service it calls goes down, is slow or returns errors (\"what happens to a booking if the email service is down?\"), by running each failure instead of reading the code. Applies even when nobody says mock or simulation. To give a frontend or another team a stand-in for an API, use api-mocking. Covers `postman simulation`.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "api-simulation",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Runs your code for real against stand-ins for the HTTP services it calls, served together as one environment on one local port or one deployed URL, whether that code is a service you're changing, a frontend, a test suite or a demo. Use when you add or change code that calls other services and need to run it, test it, prove a fix or reproduce an upstream failure (timeouts, 5xx, 409, 429) end to end, locally or in CI, without the real services because they're unreachable, need credentials, cost money, have side effects or don't exist yet. Also answers what happens to a request, or to the data it writes, when a service it calls goes down, is slow or returns errors (\"what happens to a booking if the email service is down?\"), by running each failure instead of reading the code. Applies even when nobody says mock or simulation. To give a frontend or another team a stand-in for an API, use api-mocking. Covers `postman simulation`."
        },
        "name": "api-simulation",
        "plugin_release_skill_id": "pluginrsk_6ad87ff080f08191b07e5fd9b79ed4f5"
      },
      {
        "description": "Use when testing an endpoint, running collection assertions, or checking real application traffic against an API contract. Reuses saved requests and reports what live, mocked, or captured-traffic results actually establish. Use for requests such as \"test this endpoint\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "api-testing",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Use when testing an endpoint, running collection assertions, or checking real application traffic against an API contract. Reuses saved requests and reports what live, mocked, or captured-traffic results actually establish. Use for requests such as \"test this endpoint\"."
        },
        "name": "api-testing",
        "plugin_release_skill_id": "pluginrsk_6ad87ff14810819180517b84efc42ff3"
      },
      {
        "description": "Use when resolving Postman CLI setup, authentication, or a repository workspace binding; initializing local API files; handling a CLI error that says an operation isn't allowed because of insufficient entitlements; or importing, pulling, pushing, syncing, or sharing workspace resources. Reuses existing context and chooses sync direction without duplicating a workspace or rebinding a dependency. Use for requests such as \"set up Postman for this repo\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "bootstrap",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "Use when resolving Postman CLI setup, authentication, or a repository workspace binding; initializing local API files; handling a CLI error that says an operation isn't allowed because of insufficient entitlements; or importing, pulling, pushing, syncing, or sharing workspace resources. Reuses existing context and chooses sync direction without duplicating a workspace or rebinding a dependency. Use for requests such as \"set up Postman for this repo\"."
        },
        "name": "bootstrap",
        "plugin_release_skill_id": "pluginrsk_6ad87ff01ec48191b68ca01d03da735d"
      },
      {
        "description": "Use when adding API tests, structural or governance lint, or AI-readiness gates to CI, or publishing reviewed API artifacts to a Postman workspace after merge. Makes contract checks repeatable and separates validation from shared workspace changes. Use for requests such as \"run this collection on every PR\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "ci-integration",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Use when adding API tests, structural or governance lint, or AI-readiness gates to CI, or publishing reviewed API artifacts to a Postman workspace after merge. Makes contract checks repeatable and separates validation from shared workspace changes. Use for requests such as \"run this collection on every PR\"."
        },
        "name": "ci-integration",
        "plugin_release_skill_id": "pluginrsk_6ad87ff2cd788191b732a1e94f21a024"
      },
      {
        "description": "Use when writing or debugging local Postman v3 collection and environment YAML, including collection lint failures. Preserves the per-entity files, inherited context, and schema shapes that make API changes reusable and reviewable in Git. Use for requests such as \"fix this request YAML\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "collection-schema-v3",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Use when writing or debugging local Postman v3 collection and environment YAML, including collection lint failures. Preserves the per-entity files, inherited context, and schema shapes that make API changes reusable and reviewable in Git. Use for requests such as \"fix this request YAML\"."
        },
        "name": "collection-schema-v3",
        "plugin_release_skill_id": "pluginrsk_6ad87ff1f8688191823aa387182aaf7e"
      },
      {
        "description": "Use when a collection needs queried or joined test inputs, a reusable named view, spreadsheet worksheet data, live database rows, or script access through pm.datasets(). Chooses between a simple iteration file and a dataset while preserving query semantics, portability, and credential boundaries. Use for requests such as \"run this collection over database rows\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "datasets",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "chart",
          "short_description": "Use when a collection needs queried or joined test inputs, a reusable named view, spreadsheet worksheet data, live database rows, or script access through pm.datasets(). Chooses between a simple iteration file and a dataset while preserving query semantics, portability, and credential boundaries. Use for requests such as \"run this collection over database rows\"."
        },
        "name": "datasets",
        "plugin_release_skill_id": "pluginrsk_6ad87ff0725c8191bcbcfd307b1bb1d0"
      },
      {
        "description": "Use when running, deploying, or debugging an existing Postman Flow. Distinguishes local graph execution from a deployed webhook, reuses named input scenarios, and follows a run to the failing block rather than treating an HTTP response as whole-flow success. Use for requests such as \"why did this flow fail\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "flows",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Use when running, deploying, or debugging an existing Postman Flow. Distinguishes local graph execution from a deployed webhook, reuses named input scenarios, and follows a run to the failing block rather than treating an HTTP response as whole-flow success. Use for requests such as \"why did this flow fail\"."
        },
        "name": "flows",
        "plugin_release_skill_id": "pluginrsk_6ad87ff39dcc8191b53cc0e3c1e5ca98"
      },
      {
        "description": "Use when load-testing or benchmarking an API with concurrent virtual users and latency or error thresholds. Reuses a collection to probe a chosen failure mode and distinguishes target limits from load-generator limits. Use for requests such as \"load test this API\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "performance-testing",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "chart",
          "short_description": "Use when load-testing or benchmarking an API with concurrent virtual users and latency or error thresholds. Reuses a collection to probe a chosen failure mode and distinguishes target limits from load-generator limits. Use for requests such as \"load test this API\"."
        },
        "name": "performance-testing",
        "plugin_release_skill_id": "pluginrsk_6ad87ff4b5508191898dbc5b6f6abb6f"
      },
      {
        "description": "Use when working through Postman MCP tools to inspect or change workspace resources, choose a targeted operation, or handle MCP limitations. Supports hosted workflows when the CLI is unavailable and distinguishes tool completion from a usable result. Use for requests such as \"use Postman MCP to inspect this collection\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "postman-mcp-server",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Use when working through Postman MCP tools to inspect or change workspace resources, choose a targeted operation, or handle MCP limitations. Supports hosted workflows when the CLI is unavailable and distinguishes tool completion from a usable result. Use for requests such as \"use Postman MCP to inspect this collection\"."
        },
        "name": "postman-mcp-server",
        "plugin_release_skill_id": "pluginrsk_6ad87ff4f424819199b42e63c24e5882"
      },
      {
        "description": "Use when parameterizing requests across environments, choosing variable scopes, chaining values in scripts, or referencing credentials without committing or exposing them. Keeps one reusable collection while separating target configuration from secret values. Use for requests such as \"where should I put this API key\".",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "variables",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Use when parameterizing requests across environments, choosing variable scopes, chaining values in scripts, or referencing credentials without committing or exposing them. Keeps one reusable collection while separating target configuration from secret values. Use for requests such as \"where should I put this API key\"."
        },
        "name": "variables",
        "plugin_release_skill_id": "pluginrsk_6ad87ff4a9bc8191bad02bd03e8b2e05"
      },
      {
        "description": "Capture, forward to localhost, replay, and validate webhook deliveries using a reusable public URL. Keep sender configuration across debugging sessions and record arrivals even while local forwarding is stopped, helping distinguish delivery failures from local connectivity issues. Use for implementing or debugging incoming handlers and testing webhooks an API sends, whether or not Postman is mentioned. Example requests include \"get payment events to localhost,\" \"inspect a webhook delivery,\" and \"replay an event after a fix\"; these illustrate intent, not an exhaustive list or exact phrases to match.",
        "interface": {
          "brand_color": null,
          "default_prompt": null,
          "display_name": "webhook-testing",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "radar",
          "short_description": "Capture, forward to localhost, replay, and validate webhook deliveries using a reusable public URL. Keep sender configuration across debugging sessions and record arrivals even while local forwarding is stopped, helping distinguish delivery failures from local connectivity issues. Use for implementing or debugging incoming handlers and testing webhooks an API sends, whether or not Postman is mentioned. Example requests include \"get payment events to localhost,\" \"inspect a webhook delivery,\" and \"replay an event after a fix\"; these illustrate intent, not an exhaustive list or exact phrases to match."
        },
        "name": "webhook-testing",
        "plugin_release_skill_id": "pluginrsk_6ad87ff26090819196609469d6e94f60"
      }
    ],
    "version": "0.4.0"
  },
  "scope": "GLOBAL",
  "share_url": "https://chatgpt.com/plugins/postman?open_in_app",
  "status": "ENABLED"
}

SHA-256 of public snapshot: ff44e3087f6ae60564b44f6b51549295526f5fb57269c7db01314116e001b7f4