{"openapi":"3.1.0","info":{"title":"qMan Workspace Integration API","version":"1.2.0","description":"Workspace-scoped API for documentation tools and AI/MCP adapters. It manages\ncollections, folders, saved request definitions, environments, and variables;\nexecution-permitted keys can create immutable HTTP/GraphQL test runs. Ordinary\nreads never expose personal values, cookies, or history. Executable collection\nscripts are available only through a run snapshot with execute permission.\nAll-workspaces CLI device credentials are also accepted on integration endpoints\nand require X-qMan-Workspace with an accessible workspace ULID. Current device\npermissions and memberships are checked on every request. MCP continues to\nrequire a workspace-scoped key. CLI session discovery and revocation use\n/api/cli/v1/session, /api/cli/v1/workspaces, and /api/cli/v1/session/revoke.\n"},"servers":[{"url":"https://qman-api.qwertify.io/api/integration/v1"}],"security":[{"workspaceApiKey":[]},{"cliSession":[]}],"tags":[{"name":"Workspace"},{"name":"Collections"},{"name":"Folders"},{"name":"Requests"},{"name":"Environments"},{"name":"Variables"},{"name":"Synchronization"},{"name":"Executions"}],"paths":{"/catalog/collections":{"get":{"tags":["Collections"],"operationId":"listIntegrationCollectionSummaries","summary":"Browse collection identity, versions, and child counts without content","parameters":[{"$ref":"#/components/parameters/CatalogPage"},{"$ref":"#/components/parameters/CatalogPerPage"}],"responses":{"200":{"$ref":"#/components/responses/CollectionSummaryList"},"401":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"}}}},"/catalog/collections/{collection}/folders":{"parameters":[{"$ref":"#/components/parameters/CollectionId"}],"get":{"tags":["Folders"],"operationId":"listIntegrationFolderSummaries","summary":"Browse folder identities and hierarchy without documentation or auth","parameters":[{"$ref":"#/components/parameters/CatalogPage"},{"$ref":"#/components/parameters/CatalogPerPage"},{"name":"parent_id","in":"query","description":"Omit for all folders; empty for collection root; a folder ULID for direct children only.","schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/FolderSummaryList"},"401":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"}}}},"/catalog/collections/{collection}/requests":{"parameters":[{"$ref":"#/components/parameters/CollectionId"}],"get":{"tags":["Requests"],"operationId":"listIntegrationRequestSummaries","summary":"Browse request names and routes without definitions, documentation, or examples","description":"Fetch complete content for one request through GET /requests/{request}. URL previews are capped at 500 characters; do not execute a truncated preview.","parameters":[{"$ref":"#/components/parameters/CatalogPage"},{"$ref":"#/components/parameters/CatalogPerPage"},{"name":"folder_id","in":"query","description":"Omit for all requests; empty for collection root; a folder ULID for direct children only.","schema":{"type":"string"}}],"responses":{"200":{"$ref":"#/components/responses/RequestSummaryList"},"401":{"$ref":"#/components/responses/Problem"},"404":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"}}}},"/openapi.json":{"get":{"security":[],"operationId":"getIntegrationOpenApi","summary":"Download this OpenAPI contract","responses":{"200":{"description":"OpenAPI 3.1 JSON document","content":{"application/json":{"schema":{"type":"object"}}}}}}},"/workspace":{"get":{"tags":["Workspace"],"operationId":"getIntegrationWorkspace","summary":"Get the API key's workspace","responses":{"200":{"$ref":"#/components/responses/WorkspaceResponse"},"401":{"$ref":"#/components/responses/Problem"}}}},"/search":{"get":{"tags":["Workspace"],"operationId":"searchIntegrationWorkspace","parameters":[{"$ref":"#/components/parameters/SearchQuery"},{"$ref":"#/components/parameters/PerPage"},{"$ref":"#/components/parameters/Cursor"}],"responses":{"200":{"$ref":"#/components/responses/ListResponse"}}}},"/collections":{"get":{"tags":["Collections"],"operationId":"listIntegrationCollections","parameters":[{"$ref":"#/components/parameters/PerPage"},{"$ref":"#/components/parameters/Cursor"}],"responses":{"200":{"$ref":"#/components/responses/ListResponse"}}},"post":{"tags":["Collections"],"operationId":"createIntegrationCollection","x-qman-permission":"create","parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectionWrite"}}}},"responses":{"201":{"$ref":"#/components/responses/ResourceResponse"},"422":{"$ref":"#/components/responses/Problem"}}}},"/collections/{collection}":{"parameters":[{"$ref":"#/components/parameters/CollectionId"}],"get":{"tags":["Collections"],"operationId":"getIntegrationCollection","responses":{"200":{"$ref":"#/components/responses/ResourceResponse"},"404":{"$ref":"#/components/responses/Problem"}}},"patch":{"tags":["Collections"],"operationId":"updateIntegrationCollection","x-qman-permission":"update","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectionWrite"}}}},"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"},"412":{"$ref":"#/components/responses/Problem"},"428":{"$ref":"#/components/responses/Problem"}}},"delete":{"tags":["Collections"],"operationId":"deleteIntegrationCollection","x-qman-permission":"delete","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"},"412":{"$ref":"#/components/responses/Problem"},"428":{"$ref":"#/components/responses/Problem"}}}},"/collections/{collection}/folders":{"parameters":[{"$ref":"#/components/parameters/CollectionId"}],"get":{"tags":["Folders"],"operationId":"listIntegrationFolders","parameters":[{"$ref":"#/components/parameters/PerPage"},{"$ref":"#/components/parameters/Cursor"}],"responses":{"200":{"$ref":"#/components/responses/ListResponse"}}},"post":{"tags":["Folders"],"operationId":"createIntegrationFolder","x-qman-permission":"create","parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FolderWrite"}}}},"responses":{"201":{"$ref":"#/components/responses/ResourceResponse"}}}},"/folders/{folder}":{"parameters":[{"name":"folder","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}}],"get":{"tags":["Folders"],"operationId":"getIntegrationFolder","responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}},"patch":{"tags":["Folders"],"operationId":"updateIntegrationFolder","x-qman-permission":"update","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FolderWrite"}}}},"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}},"delete":{"tags":["Folders"],"operationId":"deleteIntegrationFolder","x-qman-permission":"delete","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}}},"/collections/{collection}/requests":{"parameters":[{"$ref":"#/components/parameters/CollectionId"}],"get":{"tags":["Requests"],"operationId":"listIntegrationRequests","parameters":[{"$ref":"#/components/parameters/PerPage"},{"$ref":"#/components/parameters/Cursor"}],"responses":{"200":{"$ref":"#/components/responses/ListResponse"}}},"post":{"tags":["Requests"],"operationId":"createIntegrationRequest","x-qman-permission":"create","parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedRequestWrite"}}}},"responses":{"201":{"$ref":"#/components/responses/ResourceResponse"},"422":{"$ref":"#/components/responses/Problem"}}}},"/requests/{request}":{"parameters":[{"name":"request","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}}],"get":{"tags":["Requests"],"operationId":"getIntegrationRequest","responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}},"patch":{"tags":["Requests"],"operationId":"updateIntegrationRequest","x-qman-permission":"update","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedRequestWrite"}}}},"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}},"delete":{"tags":["Requests"],"operationId":"deleteIntegrationRequest","x-qman-permission":"delete","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}}},"/environments":{"get":{"tags":["Environments"],"operationId":"listIntegrationEnvironments","parameters":[{"$ref":"#/components/parameters/PerPage"},{"$ref":"#/components/parameters/Cursor"}],"responses":{"200":{"$ref":"#/components/responses/ListResponse"}}},"post":{"tags":["Environments"],"operationId":"createIntegrationEnvironment","x-qman-permission":"create","parameters":[{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentWrite"}}}},"responses":{"201":{"$ref":"#/components/responses/ResourceResponse"}}}},"/environments/{environment}":{"parameters":[{"name":"environment","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}}],"get":{"tags":["Environments"],"operationId":"getIntegrationEnvironment","responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}},"patch":{"tags":["Environments"],"operationId":"updateIntegrationEnvironment","x-qman-permission":"update","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EnvironmentWrite"}}}},"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}},"delete":{"tags":["Environments"],"operationId":"deleteIntegrationEnvironment","x-qman-permission":"delete","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}}},"/collections/{collection}/variables":{"post":{"tags":["Variables"],"operationId":"createIntegrationCollectionVariable","x-qman-permission":"create","parameters":[{"$ref":"#/components/parameters/CollectionId"},{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariableWrite"}}}},"responses":{"201":{"$ref":"#/components/responses/ResourceResponse"}}}},"/environments/{environment}/variables":{"post":{"tags":["Variables"],"operationId":"createIntegrationEnvironmentVariable","x-qman-permission":"create","parameters":[{"name":"environment","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}},{"$ref":"#/components/parameters/OptionalIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariableWrite"}}}},"responses":{"201":{"$ref":"#/components/responses/ResourceResponse"}}}},"/variables/{variable}":{"parameters":[{"name":"variable","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}}],"patch":{"tags":["Variables"],"operationId":"updateIntegrationVariable","x-qman-permission":"update","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VariableWrite"}}}},"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}},"delete":{"tags":["Variables"],"operationId":"deleteIntegrationVariable","x-qman-permission":"delete","parameters":[{"$ref":"#/components/parameters/IfMatch"}],"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}}},"/collections/{collection}/tree-order":{"put":{"tags":["Collections"],"operationId":"reorderIntegrationCollectionTree","x-qman-permission":"update","parameters":[{"$ref":"#/components/parameters/CollectionId"},{"$ref":"#/components/parameters/IfMatch"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["folders","requests"],"properties":{"folders":{"type":"array","items":{"type":"object"}},"requests":{"type":"array","items":{"type":"object"}}}}}}},"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}}},"/collections/external/{externalCollectionId}":{"put":{"tags":["Synchronization"],"operationId":"syncIntegrationCollection","summary":"Atomically create or update a complete collection tree","description":"Requires create and update permissions; prune_missing also requires delete.","parameters":[{"name":"externalCollectionId","in":"path","required":true,"schema":{"type":"string","maxLength":255}},{"$ref":"#/components/parameters/RequiredIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CollectionSync"}}}},"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"},"409":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"}}}},"/collections/{collection}/runs":{"post":{"tags":["Executions"],"operationId":"createExecutionRun","x-qman-permission":"execute","parameters":[{"$ref":"#/components/parameters/CollectionId"},{"$ref":"#/components/parameters/RequiredIdempotencyKey"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["mode"],"properties":{"mode":{"type":"string","enum":["machine","cloud"]},"environment_id":{"anyOf":[{"$ref":"#/components/schemas/Ulid"},{"type":"null"}]},"timeout_ms":{"type":"integer","minimum":1000,"maximum":300000},"variables":{"type":"object","maxProperties":200,"description":"Cloud-mode per-run inputs; encrypted at rest and erased on termination. Machine-mode inputs stay in the CLI.","additionalProperties":{"type":"string","maxLength":65536}}}}}}},"responses":{"201":{"$ref":"#/components/responses/ResourceResponse"},"403":{"$ref":"#/components/responses/Problem"},"422":{"$ref":"#/components/responses/Problem"},"429":{"$ref":"#/components/responses/Problem"},"503":{"$ref":"#/components/responses/Problem"}}}},"/runs":{"get":{"tags":["Executions"],"operationId":"listExecutionRuns","x-qman-permission":"execute","parameters":[{"$ref":"#/components/parameters/Cursor"}],"responses":{"200":{"$ref":"#/components/responses/ListResponse"}}}},"/runs/{executionRun}":{"get":{"tags":["Executions"],"operationId":"getExecutionRun","x-qman-permission":"execute","parameters":[{"name":"executionRun","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}}],"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"},"404":{"$ref":"#/components/responses/Problem"}}}},"/runs/{executionRun}/snapshot":{"get":{"tags":["Executions"],"operationId":"getExecutionSnapshot","x-qman-permission":"execute","summary":"Get executable scripts and definitions for an active machine run","parameters":[{"name":"executionRun","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}}],"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"},"409":{"$ref":"#/components/responses/Problem"}}}},"/runs/{executionRun}/complete":{"post":{"tags":["Executions"],"operationId":"completeMachineExecution","x-qman-permission":"execute","description":"Only the originating workspace key may complete its machine run. Results contain request identities, timing, status and assertions; response bodies and headers are rejected. The server recomputes totals.","parameters":[{"name":"executionRun","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["result"],"properties":{"result":{"type":"object","required":["schema_version","runner_version","status","duration_ms","requests"],"properties":{"schema_version":{"type":"integer","const":1},"runner_version":{"type":"string","maxLength":80},"status":{"type":"string","enum":["passed","failed","error"]},"duration_ms":{"type":"integer","minimum":0},"requests":{"type":"array","minItems":1,"maxItems":1000,"items":{"type":"object"}},"summary":{"type":"object"}}}}}}}},"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"},"409":{"$ref":"#/components/responses/Problem"}}}},"/runs/{executionRun}/cancel":{"post":{"tags":["Executions"],"operationId":"cancelExecutionRun","x-qman-permission":"execute","parameters":[{"name":"executionRun","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}}],"responses":{"200":{"$ref":"#/components/responses/ResourceResponse"}}}}},"components":{"securitySchemes":{"cliSession":{"type":"http","scheme":"bearer","bearerFormat":"qman_cli","description":"All-workspaces CLI device credential. Requires X-qMan-Workspace on each integration request; current membership and device permissions are enforced. Not accepted by MCP."},"workspaceApiKey":{"type":"http","scheme":"bearer","bearerFormat":"qman_ws"}},"parameters":{"CatalogPage":{"name":"page","in":"query","schema":{"type":"integer","minimum":1,"default":1}},"CatalogPerPage":{"name":"per_page","in":"query","schema":{"type":"integer","minimum":1,"maximum":100,"default":25}},"CollectionId":{"name":"collection","in":"path","required":true,"schema":{"$ref":"#/components/schemas/Ulid"}},"IfMatch":{"name":"If-Match","in":"header","required":true,"description":"Resource ETag, for example `\"v3\"`.","schema":{"type":"string","pattern":"^\"v[1-9][0-9]*\"$"}},"OptionalIdempotencyKey":{"name":"Idempotency-Key","in":"header","required":false,"schema":{"type":"string","minLength":1,"maxLength":255}},"RequiredIdempotencyKey":{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":1,"maxLength":255}},"PerPage":{"name":"per_page","in":"query","schema":{"type":"integer","minimum":1,"maximum":200,"default":50}},"Cursor":{"name":"cursor","in":"query","schema":{"type":"string"}},"SearchQuery":{"name":"q","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":255}}},"schemas":{"CatalogPagination":{"type":"object","required":["page","per_page","total","last_page"],"properties":{"page":{"type":"integer","minimum":1},"per_page":{"type":"integer","minimum":1,"maximum":100},"total":{"type":"integer","minimum":0},"last_page":{"type":"integer","minimum":1}}},"CatalogIdentity":{"type":"object","required":["id","name","description_excerpt","position","version","external_id"],"properties":{"id":{"$ref":"#/components/schemas/Ulid"},"name":{"type":"string"},"description_excerpt":{"type":["string","null"],"maxLength":240},"position":{"type":"integer"},"version":{"type":"integer"},"external_id":{"type":["string","null"]},"sync":{"type":["object","null"],"properties":{"last_synced_version":{"type":"integer"},"current_version":{"type":"integer"},"has_conflict":{"type":"boolean"}}}}},"CollectionSummary":{"allOf":[{"$ref":"#/components/schemas/CatalogIdentity"},{"type":"object","required":["workspace_id","counts"],"properties":{"workspace_id":{"$ref":"#/components/schemas/Ulid"},"counts":{"type":"object","required":["folders","requests","variables"],"properties":{"folders":{"type":"integer"},"requests":{"type":"integer"},"variables":{"type":"integer"}}}}}]},"FolderSummary":{"allOf":[{"$ref":"#/components/schemas/CatalogIdentity"},{"type":"object","required":["collection_id","parent_id"],"properties":{"collection_id":{"$ref":"#/components/schemas/Ulid"},"parent_id":{"type":["string","null"]}}}]},"RequestSummary":{"allOf":[{"$ref":"#/components/schemas/CatalogIdentity"},{"type":"object","required":["collection_id","folder_id","protocol","method","url","url_truncated"],"properties":{"collection_id":{"$ref":"#/components/schemas/Ulid"},"folder_id":{"type":["string","null"]},"protocol":{"type":"string","enum":["http","graphql","websocket","grpc"]},"method":{"type":"string"},"url":{"type":"string","maxLength":500},"url_truncated":{"type":"boolean"}}}]},"Ulid":{"type":"string","pattern":"^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$"},"Auth":{"type":"object","additionalProperties":true,"properties":{"type":{"type":"string","enum":["none","bearer","basic","inherit"]}}},"CollectionWrite":{"type":"object","properties":{"name":{"type":"string","maxLength":160},"description":{"type":["string","null"],"maxLength":10000},"position":{"type":"integer","minimum":0,"maximum":100000},"auth":{"anyOf":[{"$ref":"#/components/schemas/Auth"},{"type":"null"}]}}},"FolderWrite":{"allOf":[{"$ref":"#/components/schemas/CollectionWrite"},{"type":"object","properties":{"parent_id":{"anyOf":[{"$ref":"#/components/schemas/Ulid"},{"type":"null"}]}}}]},"SavedRequestWrite":{"type":"object","description":"Full saved-request documentation. Headers, query parameters, auth, body, and response examples are stored under definition/examples.","properties":{"name":{"type":"string","maxLength":160},"description":{"type":["string","null"],"maxLength":10000},"folder_id":{"anyOf":[{"$ref":"#/components/schemas/Ulid"},{"type":"null"}]},"position":{"type":"integer","minimum":0,"maximum":100000},"method":{"type":"string","pattern":"^[A-Z][A-Z0-9!#$%&'*+.^_`|~-]{0,31}$"},"url":{"type":"string","maxLength":10000},"protocol":{"type":"string","enum":["http","graphql","websocket","grpc"]},"graphql_schema_id":{"anyOf":[{"$ref":"#/components/schemas/Ulid"},{"type":"null"}]},"protobuf_definition_id":{"anyOf":[{"$ref":"#/components/schemas/Ulid"},{"type":"null"}]},"definition":{"type":"object","description":"Request definition including query, headers, auth, and body. Use `{{variable}}` placeholders for credentials.","additionalProperties":true},"examples":{"type":["array","null"],"items":{"type":"object","additionalProperties":true}}}},"EnvironmentWrite":{"type":"object","properties":{"name":{"type":"string","maxLength":160},"description":{"type":["string","null"],"maxLength":10000},"position":{"type":"integer","minimum":0,"maximum":100000}}},"VariableWrite":{"type":"object","properties":{"key":{"type":"string","maxLength":255,"pattern":"^[A-Za-z_][A-Za-z0-9_.-]*$"},"description":{"type":["string","null"],"maxLength":5000},"value_type":{"type":"string","enum":["string","number","boolean","any"]},"is_secret":{"type":"boolean"},"enabled":{"type":"boolean"},"default_value":{"type":["string","null"],"maxLength":100000},"position":{"type":"integer","minimum":0,"maximum":100000}}},"CollectionSync":{"type":"object","required":["collection"],"properties":{"collection":{"$ref":"#/components/schemas/CollectionWrite"},"folders":{"type":"array","maxItems":2000,"items":{"allOf":[{"$ref":"#/components/schemas/FolderWrite"},{"type":"object","required":["external_id","name"],"properties":{"external_id":{"type":"string","maxLength":255},"parent_external_id":{"type":["string","null"],"maxLength":255}}}]}},"requests":{"type":"array","maxItems":5000,"items":{"allOf":[{"$ref":"#/components/schemas/SavedRequestWrite"},{"type":"object","required":["external_id","name","method","url","definition"],"properties":{"external_id":{"type":"string","maxLength":255},"folder_external_id":{"type":["string","null"],"maxLength":255}}}]}},"variables":{"type":"array","maxItems":2000,"items":{"allOf":[{"$ref":"#/components/schemas/VariableWrite"},{"type":"object","required":["external_id","key"],"properties":{"external_id":{"type":"string","maxLength":255}}}]}},"prune_missing":{"type":"boolean","default":false},"dry_run":{"type":"boolean","default":false}}},"Problem":{"type":"object","required":["type","title","status","detail","instance","correlation_id"],"properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"instance":{"type":"string"},"correlation_id":{"type":"string"},"current_version":{"type":"integer"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}}},"ResourceEnvelope":{"type":"object","required":["data"],"properties":{"data":[],"meta":{"type":"object","additionalProperties":true}}}},"responses":{"CollectionSummaryList":{"description":"Bounded collection metadata. Existing /collections responses retain full metadata.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"array","maxItems":100,"items":{"$ref":"#/components/schemas/CollectionSummary"}},"meta":{"$ref":"#/components/schemas/CatalogPagination"}}}}}},"FolderSummaryList":{"description":"Bounded folder metadata. Documentation and auth are omitted.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"array","maxItems":100,"items":{"$ref":"#/components/schemas/FolderSummary"}},"meta":{"$ref":"#/components/schemas/CatalogPagination"}}}}}},"RequestSummaryList":{"description":"Bounded request metadata. Definitions, documentation, examples, scripts, headers, auth, and variable values are omitted.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"array","maxItems":100,"items":{"$ref":"#/components/schemas/RequestSummary"}},"meta":{"$ref":"#/components/schemas/CatalogPagination"}}}}}},"WorkspaceResponse":{"description":"Workspace metadata","headers":{"ETag":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceEnvelope"}}}},"ResourceResponse":{"description":"Resource response","headers":{"ETag":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceEnvelope"}}}},"ListResponse":{"description":"Cursor-paginated result","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceEnvelope"}}}},"Problem":{"description":"RFC 9457-style problem response","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}}