A merge patch of the plugin’s defaults naming exactly one field, answered with the plugin: each rewrites every project’s enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project’s enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.
True: the plugin is enabled on every current project that does not enable it, with its default credential policy, and on every project created later. False: every project's enablement is deleted, and no project enables it until it is true again; refused with plugin_server_required while a server of the plugin is required.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Aether","colors":{"primary":"#9184ff","light":"#b3a9ff","dark":"#9184ff"},"logo":{"light":"https://mintcdn.com/aether-c4587800/hrC9bOYLpJ53VNbo/logo/light.svg?fit=max\u0026auto=format\u0026n=hrC9bOYLpJ53VNbo\u0026q=85\u0026s=cdf40b8647da8a5d82a91e289a1958f7","dark":"https://mintcdn.com/aether-c4587800/hrC9bOYLpJ53VNbo/logo/dark.svg?fit=max\u0026auto=format\u0026n=hrC9bOYLpJ53VNbo\u0026q=85\u0026s=ff1a5d20e563918957a5f0eba367dee4","href":"https://www.runaether.dev"},"favicon":"https://mintcdn.com/aether-c4587800/hrC9bOYLpJ53VNbo/favicon.svg?fit=max\u0026auto=format\u0026n=hrC9bOYLpJ53VNbo\u0026q=85\u0026s=26bfe1ec698456a716b64fb50a5848be","api":{"openapi":"api-reference/openapi.json"},"appearance":{"default":"dark","strict":true},"background":{"color":{"light":"#f4f3ef","dark":"#08080b"}},"navbar":{"links":[{"href":"https://www.runaether.dev/changelog","label":"Changelog"}],"primary":{"type":"button","label":"Open Aether","href":"https://app.runaether.dev"}},"footer":{"socials":{"x":"https://x.com/pranavctl","github":"https://github.com/Aether-Runtime"}},"fonts":{"family":"Geist"},"styling":{"codeblocks":"dark","latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"aether-c4587800","hasAudioNarration":false,"actualSubdomain":"aether-c4587800","customDomains":["docs.runaether.dev"],"gitSource":{"type":"github","owner":"aether-runtime","repo":"aether","deployBranch":"main","contentDirectory":"apps/docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adddcf2f92530aaaa785573","collectionId":"5ad90ce0-4d53-49d4-bfa6-1faf5fea6e71","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adddcf2f92530aaaa785573"},"entitlements":{},"buildId":"6adddcf2f92530aaaa785573","clientVersion":"0.0.3965","searchFilterCounts":[{"language":"default","tag":"API Reference","count":270},{"language":"default","tag":"CLI Reference","count":35},{"language":"default","tag":"Guides","count":28},{"language":"default","tag":"Pull Requests","count":26},{"language":"default","tag":"Tasks","count":24},{"language":"default","tag":"Using Aether","count":24},{"language":"default","tag":"MCP Servers","count":23},{"language":"default","tag":"Concepts","count":22},{"language":"default","tag":"Agent","count":17},{"language":"default","tag":"Connections","count":16}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":true},"customCss":[{"filePath":"style.css","content":":root{color-scheme:dark}::selection{background:rgba(145,132,255,.25)}"}],"page":{"pagePath":"api-reference/endpoints/plugins/patch-plugins-by-pluginid","slug":"/api-reference/endpoints/plugins/patch-plugins-by-pluginid","pageMetadata":{"title":"Change a plugin's organization-wide defaults","openapi":"api-reference/openapi.json PATCH /plugins/{pluginID}","description":"A merge patch of the plugin's defaults naming exactly one field, answered with the plugin: each rewrites every project's enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project's enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.","href":"/api-reference/endpoints/plugins/patch-plugins-by-pluginid"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"A merge patch of the plugin’s defaults naming exactly one field, answered with the plugin: each rewrites every project’s enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project’s enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"codeStyling":"dark","config":{},"pageMetadata":{"title":"Change a plugin's organization-wide defaults","openapi":"api-reference/openapi.json PATCH /plugins/{pluginID}","description":"A merge patch of the plugin's defaults naming exactly one field, answered with the plugin: each rewrites every project's enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project's enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.","href":"/api-reference/endpoints/plugins/patch-plugins-by-pluginid"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"A merge patch of the plugin's defaults naming exactly one field, answered with the plugin: each rewrites every project's enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project's enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.","operationId":"patchPlugin","parameters":["d52fcc9d-e8d7-4b54-80f0-d8a755985912"],"requestBody":"b8934d11-5907-4d02-a32d-91c1f247f604","responses":{"200":"71cd2b62-ed29-4625-8e0a-2500a3f37ba6","400":"b2e8297d-85d9-41e9-b272-12439513a81b","401":"12925dc1-1297-40bf-a6f9-3a8cf3e581e0","403":"e5abe981-21be-43a2-b47a-d9e619ad2233","404":"5ffca0ed-3aa5-4c89-a22a-dd6b6f707b2a","409":"1677aa86-2542-46eb-a720-289c5a41467f","422":"ca948fb3-ba23-4dcb-a620-609795a849a5","500":"58e72dd1-11e6-479b-9b44-9144eadff92a","503":"4ce32da5-4303-46a9-bf9e-3ad6d3f38c9c"},"summary":"Change a plugin's organization-wide defaults","tags":["plugins"],"x-aether-label":"plugins.patch","x-aether-path-ids":{"pluginID":"-"},"method":"patch","type":"path","servers":["eb3dfda0-5a87-43cb-a06e-9e615ed09db8"],"security":["ed131015-7e54-4577-885d-342557939388"],"path":"/plugins/{pluginID}","baseUrlOptions":["https://api.runaether.dev"],"title":"Change a plugin's organization-wide defaults","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"d52fcc9d-e8d7-4b54-80f0-d8a755985912":{"in":"path","name":"pluginID","required":true,"schema":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}}},"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"maxProperties":1,"minProperties":1,"properties":{"default_credential_policy":{"oneOf":[{"description":"Null exactly for a server or plugin that needs no credential. org needs the organization's own connection to every server it covers.","enum":["creator","org",null],"type":"string","uniqueKey":"default_credential_policy.oneOf.0","typeLabel":"enum\u003cstring>"},{"description":"Null exactly for a server or plugin that needs no credential. org needs the organization's own connection to every server it covers.","enum":["creator","org",null],"type":"null","uniqueKey":"default_credential_policy.oneOf.1","typeLabel":"null"}],"uniqueKey":"default_credential_policy","typeLabel":"enum\u003cstring> | null"},"enabled_by_default":{"description":"True: the plugin is enabled on every current project that does not enable it, with its default credential policy, and on every project created later. False: every project's enablement is deleted, and no project enables it until it is true again; refused with plugin_server_required while a server of the plugin is required.","type":"boolean","uniqueKey":"enabled_by_default","typeLabel":"boolean"}},"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"enabled_by_default":true}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"71cd2b62-ed29-4625-8e0a-2500a3f37ba6":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"plugin":{"additionalProperties":false,"properties":{"commit":{"type":"string","isRequired":true,"uniqueKey":"plugin.commit","typeLabel":"string"},"created_at":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"plugin.created_at","typeLabel":"string\u003cdate-time>"},"default_credential_policy":{"oneOf":[{"enum":["creator","org"],"type":"string","isRequired":true,"uniqueKey":"plugin.default_credential_policy.oneOf.0","typeLabel":"enum\u003cstring>"},{"enum":["creator","org"],"type":"null","isRequired":true,"uniqueKey":"plugin.default_credential_policy.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"plugin.default_credential_policy","typeLabel":"enum\u003cstring> | null"},"enabled_by_default":{"type":"boolean","isRequired":true,"uniqueKey":"plugin.enabled_by_default","typeLabel":"boolean"},"id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"plugin.id","typeLabel":"string\u003cuuid>"},"manifests":{"additionalProperties":false,"properties":{"agent_plugins":{"description":"The Agent Plugins plugin.json at the plugin's root.","type":"boolean","isRequired":true,"uniqueKey":"plugin.manifests.agent_plugins","typeLabel":"boolean"},"claude":{"description":".claude-plugin/plugin.json","type":"boolean","isRequired":true,"uniqueKey":"plugin.manifests.claude","typeLabel":"boolean"},"codex":{"description":".codex-plugin/plugin.json","type":"boolean","isRequired":true,"uniqueKey":"plugin.manifests.codex","typeLabel":"boolean"},"synthesized":{"description":"The plugin's directory holds no manifest, so Aether synthesizes one: the plugin is the directory's skills, every directory holding a SKILL.md, named after the directory.","type":"boolean","isRequired":true,"uniqueKey":"plugin.manifests.synthesized","typeLabel":"boolean"}},"required":["claude","codex","agent_plugins","synthesized"],"type":"object","isRequired":true,"uniqueKey":"plugin.manifests","typeLabel":"object"},"name":{"type":"string","isRequired":true,"uniqueKey":"plugin.name","typeLabel":"string"},"needs_credential":{"type":"boolean","isRequired":true,"uniqueKey":"plugin.needs_credential","typeLabel":"boolean"},"path":{"description":"The directory holding the plugin; empty for the repository's root.","type":"string","isRequired":true,"uniqueKey":"plugin.path","typeLabel":"string"},"ref":{"oneOf":[{"description":"The branch or tag the source follows; null for the default branch or a marketplace entry pinned to a commit.","type":"string","isRequired":true,"uniqueKey":"plugin.ref.oneOf.0","typeLabel":"string"},{"description":"The branch or tag the source follows; null for the default branch or a marketplace entry pinned to a commit.","type":"null","isRequired":true,"uniqueKey":"plugin.ref.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"plugin.ref","typeLabel":"string | null"},"repository_url":{"type":"string","isRequired":true,"uniqueKey":"plugin.repository_url","typeLabel":"string"},"servers":{"items":{"oneOf":[{"type":"object","required":["kind","mcp_server_id","key","url","auth"],"properties":{"auth":{"enum":["none","static_secret","oauth"],"type":"string","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.0.auth","typeLabel":"enum\u003cstring>"},"key":{"type":"string","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.0.key","typeLabel":"string"},"kind":{"enum":["remote"],"type":"string","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.0.kind","typeLabel":"enum\u003cstring>"},"mcp_server_id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.0.mcp_server_id","typeLabel":"string\u003cuuid>"},"url":{"type":"string","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.0.url","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","required":["kind","key","command","args"],"properties":{"args":{"items":{"type":"string","uniqueKey":"plugin.servers.items.[INDEX].oneOf.1.args.items.[INDEX]","typeLabel":"string"},"type":"array","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.1.args","typeLabel":"string[]"},"command":{"type":"string","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.1.command","typeLabel":"string"},"key":{"type":"string","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.1.key","typeLabel":"string"},"kind":{"enum":["stdio_unavailable"],"type":"string","isRequired":true,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.1.kind","typeLabel":"enum\u003cstring>"}},"additionalProperties":false,"uniqueKey":"plugin.servers.items.[INDEX].oneOf.1","typeLabel":"object"}],"uniqueKey":"plugin.servers.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"plugin.servers","typeLabel":"object[]"},"skills":{"oneOf":[{"description":"The plugin's skills, ordered by their SKILL.md's path; null until Aether reads the skills of a plugin installed before it recorded them.","items":{"additionalProperties":false,"properties":{"agents":{"description":"The agents that load the skill.","items":{"enum":["claude_code","codex"],"type":"string","uniqueKey":"plugin.skills.oneOf.0.items.[INDEX].agents.items.[INDEX]","typeLabel":"enum\u003cstring>"},"maxItems":2,"minItems":1,"type":"array","isRequired":true,"uniqueKey":"plugin.skills.oneOf.0.items.[INDEX].agents","typeLabel":"enum\u003cstring>[]"},"description":{"description":"The description the SKILL.md's frontmatter declares.","type":"string","isRequired":true,"uniqueKey":"plugin.skills.oneOf.0.items.[INDEX].description","typeLabel":"string"},"name":{"description":"The name the SKILL.md's frontmatter declares.","type":"string","isRequired":true,"uniqueKey":"plugin.skills.oneOf.0.items.[INDEX].name","typeLabel":"string"}},"required":["name","description","agents"],"type":"object","uniqueKey":"plugin.skills.oneOf.0.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"plugin.skills.oneOf.0","typeLabel":"object[]"},{"description":"The plugin's skills, ordered by their SKILL.md's path; null until Aether reads the skills of a plugin installed before it recorded them.","items":{"additionalProperties":false,"properties":{"agents":{"description":"The agents that load the skill.","items":{"enum":["claude_code","codex"],"type":"string"},"maxItems":2,"minItems":1,"type":"array"},"description":{"description":"The description the SKILL.md's frontmatter declares.","type":"string"},"name":{"description":"The name the SKILL.md's frontmatter declares.","type":"string"}},"required":["name","description","agents"],"type":"object"},"type":"null","isRequired":true,"uniqueKey":"plugin.skills.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"plugin.skills","typeLabel":"object[] | null"},"support":{"additionalProperties":false,"properties":{"claude_code":{"items":{"enum":["skills","commands","agents","hooks","mcp_servers"],"type":"string","uniqueKey":"plugin.support.claude_code.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"plugin.support.claude_code","typeLabel":"enum\u003cstring>[]"},"codex":{"items":{"enum":["skills","commands","agents","hooks","mcp_servers"],"type":"string","uniqueKey":"plugin.support.codex.items.[INDEX]","typeLabel":"enum\u003cstring>"},"type":"array","isRequired":true,"uniqueKey":"plugin.support.codex","typeLabel":"enum\u003cstring>[]"}},"required":["claude_code","codex"],"type":"object","isRequired":true,"uniqueKey":"plugin.support","typeLabel":"object"},"updated_at":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"plugin.updated_at","typeLabel":"string\u003cdate-time>"},"delivery":{"additionalProperties":false,"properties":{"claude_code":{"description":"deliverable, or why Claude Code cannot load the plugin: claude_code_manifest_skills, its .claude-plugin/plugin.json names its skills other than as ./ paths inside it.","enum":["deliverable","claude_code_manifest_skills"],"type":"string","isRequired":true,"uniqueKey":"plugin.delivery.claude_code","typeLabel":"enum\u003cstring>"},"codex":{"description":"deliverable, or why Codex cannot load the plugin: codex_plugin_name, its name ends in '.'; codex_no_manifest, it has none of the manifests Codex reads; codex_agent_plugins_servers, Codex reads it as an Agent Plugins plugin, whose mcp.json cannot carry the credential Aether's MCP gateway requires, and it has remote MCP servers.","enum":["deliverable","codex_plugin_name","codex_no_manifest","codex_agent_plugins_servers"],"type":"string","isRequired":true,"uniqueKey":"plugin.delivery.codex","typeLabel":"enum\u003cstring>"}},"required":["claude_code","codex"],"type":"object","uniqueKey":"plugin.delivery","typeLabel":"object"},"directory":{"additionalProperties":false,"properties":{"display_name":{"type":"string","isRequired":true,"uniqueKey":"plugin.directory.display_name","typeLabel":"string"},"homepage":{"type":"string","isRequired":true,"uniqueKey":"plugin.directory.homepage","typeLabel":"string"}},"required":["display_name","homepage"],"type":"object","uniqueKey":"plugin.directory","typeLabel":"object"},"marketplace":{"additionalProperties":false,"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"plugin.marketplace.name","typeLabel":"string"},"plugin":{"type":"string","isRequired":true,"uniqueKey":"plugin.marketplace.plugin","typeLabel":"string"},"url":{"type":"string","isRequired":true,"uniqueKey":"plugin.marketplace.url","typeLabel":"string"}},"required":["name","url","plugin"],"type":"object","uniqueKey":"plugin.marketplace","typeLabel":"object"}},"required":["id","name","repository_url","path","ref","commit","manifests","support","needs_credential","default_credential_policy","enabled_by_default","skills","servers","created_at","updated_at"],"type":"object","isRequired":true,"uniqueKey":"plugin","typeLabel":"object"}},"required":["plugin"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"plugin":{"commit":"\u003cstring>","created_at":"2023-11-07T05:31:56Z","default_credential_policy":"creator","enabled_by_default":true,"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","manifests":{"agent_plugins":true,"claude":true,"codex":true,"synthesized":true},"name":"\u003cstring>","needs_credential":true,"path":"\u003cstring>","ref":"\u003cstring>","repository_url":"\u003cstring>","servers":[{"auth":"none","key":"\u003cstring>","kind":"remote","mcp_server_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","url":"\u003cstring>"}],"skills":[{"agents":["claude_code"],"description":"\u003cstring>","name":"\u003cstring>"}],"support":{"claude_code":["skills"],"codex":["skills"]},"updated_at":"2023-11-07T05:31:56Z","delivery":{"claude_code":"deliverable","codex":"deliverable"},"directory":{"display_name":"\u003cstring>","homepage":"\u003cstring>"},"marketplace":{"name":"\u003cstring>","plugin":"\u003cstring>","url":"\u003cstring>"}}}}},"exampleType":"generated"}},"description":"OK","exampleType":"generated"},"b2e8297d-85d9-41e9-b272-12439513a81b":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"code":{"enum":["account_deleting","aether_inference_unavailable","aether_inference_unserved","agent_connector_not_found","agent_default_project_archived","bad_gateway","bad_request","conflict","connection_agent_only","connection_harness_mismatch","connection_not_held","control_forbidden","default_skill_required","forbidden","gateway_timeout","gone","integration_auth_unexpected","integration_not_in_directory","integration_shape_changed","internal_error","mcp_connection_github_not_connected","mcp_connection_oauth_not_accepted","mcp_connection_org_not_offered","mcp_connection_secret_invalid","mcp_connection_server_changed","mcp_connection_static_secret_not_accepted","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","mcp_credential_policy_required","mcp_oauth_app_auth_method_unsupported","mcp_oauth_app_invalid","mcp_oauth_app_issuer_invalid","mcp_oauth_app_required","mcp_oauth_not_advertised","mcp_oauth_pkce_unsupported","mcp_oauth_registration_failed","mcp_repo_config_invalid","mcp_server_address_refused","mcp_server_aether_managed","mcp_server_api_key_not_applicable","mcp_server_args_invalid","mcp_server_auth_discovery_failed","mcp_server_auth_unsupported","mcp_server_directory_managed","mcp_server_directory_moved","mcp_server_display_name_invalid","mcp_server_env_invalid","mcp_server_headers_invalid","mcp_server_key_invalid","mcp_server_key_reserved","mcp_server_key_taken","mcp_server_kind_change_refused","mcp_server_not_from_directory","mcp_server_not_mcp","mcp_server_package_invalid","mcp_server_plugin_bundled","mcp_server_plugin_off","mcp_server_response_too_large","mcp_server_return_to_invalid","mcp_server_runtime_invalid","mcp_server_switched_off","mcp_server_unreachable","mcp_server_url_invalid","mcp_server_version_unpinned","method_not_allowed","not_acceptable","not_found","not_implemented","org_role_insufficient","org_suspended","payment_required","plugin_moved","plugin_name_taken","plugin_request_invalid","plugin_server_key_reserved","plugin_server_key_taken","plugin_server_probe_failed","plugin_server_required","plugin_skill_invalid","plugin_source_address_refused","plugin_source_empty","plugin_source_invalid","plugin_source_not_found","plugin_source_not_public","plugin_source_too_large","plugin_source_unreachable","plugin_source_unsupported","plugin_switched_off","plugin_undeliverable","precondition_failed","rate_limited","request_canceled","request_timeout","request_too_large","service_unavailable","skill_slug_reserved","unauthenticated","unsupported_media_type","validation_failed"],"minLength":1,"type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"errors":{"items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"errors.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"errors.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"errors","typeLabel":"object[]"}},"required":["error","code"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"account_deleting","error":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Bad Request","exampleType":"generated"},"12925dc1-1297-40bf-a6f9-3a8cf3e581e0":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"code":{"enum":["account_deleting","aether_inference_unavailable","aether_inference_unserved","agent_connector_not_found","agent_default_project_archived","bad_gateway","bad_request","conflict","connection_agent_only","connection_harness_mismatch","connection_not_held","control_forbidden","default_skill_required","forbidden","gateway_timeout","gone","integration_auth_unexpected","integration_not_in_directory","integration_shape_changed","internal_error","mcp_connection_github_not_connected","mcp_connection_oauth_not_accepted","mcp_connection_org_not_offered","mcp_connection_secret_invalid","mcp_connection_server_changed","mcp_connection_static_secret_not_accepted","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","mcp_credential_policy_required","mcp_oauth_app_auth_method_unsupported","mcp_oauth_app_invalid","mcp_oauth_app_issuer_invalid","mcp_oauth_app_required","mcp_oauth_not_advertised","mcp_oauth_pkce_unsupported","mcp_oauth_registration_failed","mcp_repo_config_invalid","mcp_server_address_refused","mcp_server_aether_managed","mcp_server_api_key_not_applicable","mcp_server_args_invalid","mcp_server_auth_discovery_failed","mcp_server_auth_unsupported","mcp_server_directory_managed","mcp_server_directory_moved","mcp_server_display_name_invalid","mcp_server_env_invalid","mcp_server_headers_invalid","mcp_server_key_invalid","mcp_server_key_reserved","mcp_server_key_taken","mcp_server_kind_change_refused","mcp_server_not_from_directory","mcp_server_not_mcp","mcp_server_package_invalid","mcp_server_plugin_bundled","mcp_server_plugin_off","mcp_server_response_too_large","mcp_server_return_to_invalid","mcp_server_runtime_invalid","mcp_server_switched_off","mcp_server_unreachable","mcp_server_url_invalid","mcp_server_version_unpinned","method_not_allowed","not_acceptable","not_found","not_implemented","org_role_insufficient","org_suspended","payment_required","plugin_moved","plugin_name_taken","plugin_request_invalid","plugin_server_key_reserved","plugin_server_key_taken","plugin_server_probe_failed","plugin_server_required","plugin_skill_invalid","plugin_source_address_refused","plugin_source_empty","plugin_source_invalid","plugin_source_not_found","plugin_source_not_public","plugin_source_too_large","plugin_source_unreachable","plugin_source_unsupported","plugin_switched_off","plugin_undeliverable","precondition_failed","rate_limited","request_canceled","request_timeout","request_too_large","service_unavailable","skill_slug_reserved","unauthenticated","unsupported_media_type","validation_failed"],"minLength":1,"type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"errors":{"items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"errors.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"errors.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"errors","typeLabel":"object[]"}},"required":["error","code"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"account_deleting","error":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Unauthorized","exampleType":"generated"},"e5abe981-21be-43a2-b47a-d9e619ad2233":{"content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error","code"],"properties":{"code":{"enum":["account_deleting","aether_inference_unavailable","aether_inference_unserved","agent_connector_not_found","agent_default_project_archived","bad_gateway","bad_request","conflict","connection_agent_only","connection_harness_mismatch","connection_not_held","control_forbidden","default_skill_required","forbidden","gateway_timeout","gone","integration_auth_unexpected","integration_not_in_directory","integration_shape_changed","internal_error","mcp_connection_github_not_connected","mcp_connection_oauth_not_accepted","mcp_connection_org_not_offered","mcp_connection_secret_invalid","mcp_connection_server_changed","mcp_connection_static_secret_not_accepted","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","mcp_credential_policy_required","mcp_oauth_app_auth_method_unsupported","mcp_oauth_app_invalid","mcp_oauth_app_issuer_invalid","mcp_oauth_app_required","mcp_oauth_not_advertised","mcp_oauth_pkce_unsupported","mcp_oauth_registration_failed","mcp_repo_config_invalid","mcp_server_address_refused","mcp_server_aether_managed","mcp_server_api_key_not_applicable","mcp_server_args_invalid","mcp_server_auth_discovery_failed","mcp_server_auth_unsupported","mcp_server_directory_managed","mcp_server_directory_moved","mcp_server_display_name_invalid","mcp_server_env_invalid","mcp_server_headers_invalid","mcp_server_key_invalid","mcp_server_key_reserved","mcp_server_key_taken","mcp_server_kind_change_refused","mcp_server_not_from_directory","mcp_server_not_mcp","mcp_server_package_invalid","mcp_server_plugin_bundled","mcp_server_plugin_off","mcp_server_response_too_large","mcp_server_return_to_invalid","mcp_server_runtime_invalid","mcp_server_switched_off","mcp_server_unreachable","mcp_server_url_invalid","mcp_server_version_unpinned","method_not_allowed","not_acceptable","not_found","not_implemented","org_role_insufficient","org_suspended","payment_required","plugin_moved","plugin_name_taken","plugin_request_invalid","plugin_server_key_reserved","plugin_server_key_taken","plugin_server_probe_failed","plugin_server_required","plugin_skill_invalid","plugin_source_address_refused","plugin_source_empty","plugin_source_invalid","plugin_source_not_found","plugin_source_not_public","plugin_source_too_large","plugin_source_unreachable","plugin_source_unsupported","plugin_switched_off","plugin_undeliverable","precondition_failed","rate_limited","request_canceled","request_timeout","request_too_large","service_unavailable","skill_slug_reserved","unauthenticated","unsupported_media_type","validation_failed"],"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"string"},"errors":{"items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"oneOf.0.errors.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"oneOf.0.errors.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"oneOf.0.errors.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"oneOf.0.errors.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.errors","typeLabel":"object[]"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["error","code"],"properties":{"code":{"enum":["org_membership_required","org_role_insufficient","org_suspended","account_deleting","agent_host_route_not_allowed","credential_kind_not_admitted"],"type":"string","isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.error","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"},{"type":"object","required":["error","code"],"properties":{"code":{"enum":["control_forbidden"],"type":"string","isRequired":true,"uniqueKey":"oneOf.2.code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.2.error","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.2","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"account_deleting","error":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Forbidden","exampleType":"generated"},"5ffca0ed-3aa5-4c89-a22a-dd6b6f707b2a":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"code":{"enum":["account_deleting","aether_inference_unavailable","aether_inference_unserved","agent_connector_not_found","agent_default_project_archived","bad_gateway","bad_request","conflict","connection_agent_only","connection_harness_mismatch","connection_not_held","control_forbidden","default_skill_required","forbidden","gateway_timeout","gone","integration_auth_unexpected","integration_not_in_directory","integration_shape_changed","internal_error","mcp_connection_github_not_connected","mcp_connection_oauth_not_accepted","mcp_connection_org_not_offered","mcp_connection_secret_invalid","mcp_connection_server_changed","mcp_connection_static_secret_not_accepted","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","mcp_credential_policy_required","mcp_oauth_app_auth_method_unsupported","mcp_oauth_app_invalid","mcp_oauth_app_issuer_invalid","mcp_oauth_app_required","mcp_oauth_not_advertised","mcp_oauth_pkce_unsupported","mcp_oauth_registration_failed","mcp_repo_config_invalid","mcp_server_address_refused","mcp_server_aether_managed","mcp_server_api_key_not_applicable","mcp_server_args_invalid","mcp_server_auth_discovery_failed","mcp_server_auth_unsupported","mcp_server_directory_managed","mcp_server_directory_moved","mcp_server_display_name_invalid","mcp_server_env_invalid","mcp_server_headers_invalid","mcp_server_key_invalid","mcp_server_key_reserved","mcp_server_key_taken","mcp_server_kind_change_refused","mcp_server_not_from_directory","mcp_server_not_mcp","mcp_server_package_invalid","mcp_server_plugin_bundled","mcp_server_plugin_off","mcp_server_response_too_large","mcp_server_return_to_invalid","mcp_server_runtime_invalid","mcp_server_switched_off","mcp_server_unreachable","mcp_server_url_invalid","mcp_server_version_unpinned","method_not_allowed","not_acceptable","not_found","not_implemented","org_role_insufficient","org_suspended","payment_required","plugin_moved","plugin_name_taken","plugin_request_invalid","plugin_server_key_reserved","plugin_server_key_taken","plugin_server_probe_failed","plugin_server_required","plugin_skill_invalid","plugin_source_address_refused","plugin_source_empty","plugin_source_invalid","plugin_source_not_found","plugin_source_not_public","plugin_source_too_large","plugin_source_unreachable","plugin_source_unsupported","plugin_switched_off","plugin_undeliverable","precondition_failed","rate_limited","request_canceled","request_timeout","request_too_large","service_unavailable","skill_slug_reserved","unauthenticated","unsupported_media_type","validation_failed"],"minLength":1,"type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"errors":{"items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"errors.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"errors.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"errors","typeLabel":"object[]"}},"required":["error","code"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"account_deleting","error":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Not Found","exampleType":"generated"},"1677aa86-2542-46eb-a720-289c5a41467f":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"code":{"enum":["plugin_request_invalid","plugin_source_address_refused","plugin_source_not_public","plugin_source_unreachable","plugin_source_not_found","plugin_source_unsupported","plugin_source_too_large","plugin_source_invalid","plugin_source_empty","plugin_skill_invalid","plugin_undeliverable","plugin_server_probe_failed","plugin_server_key_taken","plugin_server_key_reserved","plugin_name_taken","plugin_moved","plugin_server_required","plugin_switched_off","mcp_credential_policy_required","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","integration_not_in_directory","integration_shape_changed","integration_auth_unexpected"],"type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"conflicts":{"items":{"additionalProperties":false,"properties":{"key":{"type":"string","isRequired":true,"uniqueKey":"conflicts.items.[INDEX].key","typeLabel":"string"},"plugin":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"conflicts.items.[INDEX].plugin.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"conflicts.items.[INDEX].plugin.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"conflicts.items.[INDEX].plugin","typeLabel":"string | null"},"source":{"enum":["manual","aether","plugin","directory"],"type":"string","isRequired":true,"uniqueKey":"conflicts.items.[INDEX].source","typeLabel":"enum\u003cstring>"}},"required":["key","source","plugin"],"type":"object","uniqueKey":"conflicts.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"conflicts","typeLabel":"object[]"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"}},"required":["error","code","conflicts"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"plugin_request_invalid","conflicts":[{"key":"\u003cstring>","plugin":"\u003cstring>","source":"manual"}],"error":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Conflict","exampleType":"generated"},"ca948fb3-ba23-4dcb-a620-609795a849a5":{"content":{"application/json":{"schema":{"oneOf":[{"type":"object","required":["error","code"],"properties":{"code":{"enum":["account_deleting","aether_inference_unavailable","aether_inference_unserved","agent_connector_not_found","agent_default_project_archived","bad_gateway","bad_request","conflict","connection_agent_only","connection_harness_mismatch","connection_not_held","control_forbidden","default_skill_required","forbidden","gateway_timeout","gone","integration_auth_unexpected","integration_not_in_directory","integration_shape_changed","internal_error","mcp_connection_github_not_connected","mcp_connection_oauth_not_accepted","mcp_connection_org_not_offered","mcp_connection_secret_invalid","mcp_connection_server_changed","mcp_connection_static_secret_not_accepted","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","mcp_credential_policy_required","mcp_oauth_app_auth_method_unsupported","mcp_oauth_app_invalid","mcp_oauth_app_issuer_invalid","mcp_oauth_app_required","mcp_oauth_not_advertised","mcp_oauth_pkce_unsupported","mcp_oauth_registration_failed","mcp_repo_config_invalid","mcp_server_address_refused","mcp_server_aether_managed","mcp_server_api_key_not_applicable","mcp_server_args_invalid","mcp_server_auth_discovery_failed","mcp_server_auth_unsupported","mcp_server_directory_managed","mcp_server_directory_moved","mcp_server_display_name_invalid","mcp_server_env_invalid","mcp_server_headers_invalid","mcp_server_key_invalid","mcp_server_key_reserved","mcp_server_key_taken","mcp_server_kind_change_refused","mcp_server_not_from_directory","mcp_server_not_mcp","mcp_server_package_invalid","mcp_server_plugin_bundled","mcp_server_plugin_off","mcp_server_response_too_large","mcp_server_return_to_invalid","mcp_server_runtime_invalid","mcp_server_switched_off","mcp_server_unreachable","mcp_server_url_invalid","mcp_server_version_unpinned","method_not_allowed","not_acceptable","not_found","not_implemented","org_role_insufficient","org_suspended","payment_required","plugin_moved","plugin_name_taken","plugin_request_invalid","plugin_server_key_reserved","plugin_server_key_taken","plugin_server_probe_failed","plugin_server_required","plugin_skill_invalid","plugin_source_address_refused","plugin_source_empty","plugin_source_invalid","plugin_source_not_found","plugin_source_not_public","plugin_source_too_large","plugin_source_unreachable","plugin_source_unsupported","plugin_switched_off","plugin_undeliverable","precondition_failed","rate_limited","request_canceled","request_timeout","request_too_large","service_unavailable","skill_slug_reserved","unauthenticated","unsupported_media_type","validation_failed"],"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"string"},"errors":{"items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"oneOf.0.errors.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"oneOf.0.errors.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"oneOf.0.errors.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"oneOf.0.errors.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"oneOf.0.errors","typeLabel":"object[]"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["error","code","conflicts"],"properties":{"code":{"enum":["plugin_request_invalid","plugin_source_address_refused","plugin_source_not_public","plugin_source_unreachable","plugin_source_not_found","plugin_source_unsupported","plugin_source_too_large","plugin_source_invalid","plugin_source_empty","plugin_skill_invalid","plugin_undeliverable","plugin_server_probe_failed","plugin_server_key_taken","plugin_server_key_reserved","plugin_name_taken","plugin_moved","plugin_server_required","plugin_switched_off","mcp_credential_policy_required","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","integration_not_in_directory","integration_shape_changed","integration_auth_unexpected"],"type":"string","isRequired":true,"uniqueKey":"oneOf.1.code","typeLabel":"enum\u003cstring>"},"conflicts":{"items":{"additionalProperties":false,"properties":{"key":{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.conflicts.items.[INDEX].key","typeLabel":"string"},"plugin":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"oneOf.1.conflicts.items.[INDEX].plugin.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"oneOf.1.conflicts.items.[INDEX].plugin.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"oneOf.1.conflicts.items.[INDEX].plugin","typeLabel":"string | null"},"source":{"enum":["manual","aether","plugin","directory"],"type":"string","isRequired":true,"uniqueKey":"oneOf.1.conflicts.items.[INDEX].source","typeLabel":"enum\u003cstring>"}},"required":["key","source","plugin"],"type":"object","uniqueKey":"oneOf.1.conflicts.items.[INDEX]","typeLabel":"object"},"type":"array","isRequired":true,"uniqueKey":"oneOf.1.conflicts","typeLabel":"object[]"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.1.error","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.1","typeLabel":"object"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"account_deleting","error":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Unprocessable Entity","exampleType":"generated"},"58e72dd1-11e6-479b-9b44-9144eadff92a":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"code":{"enum":["account_deleting","aether_inference_unavailable","aether_inference_unserved","agent_connector_not_found","agent_default_project_archived","bad_gateway","bad_request","conflict","connection_agent_only","connection_harness_mismatch","connection_not_held","control_forbidden","default_skill_required","forbidden","gateway_timeout","gone","integration_auth_unexpected","integration_not_in_directory","integration_shape_changed","internal_error","mcp_connection_github_not_connected","mcp_connection_oauth_not_accepted","mcp_connection_org_not_offered","mcp_connection_secret_invalid","mcp_connection_server_changed","mcp_connection_static_secret_not_accepted","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","mcp_credential_policy_required","mcp_oauth_app_auth_method_unsupported","mcp_oauth_app_invalid","mcp_oauth_app_issuer_invalid","mcp_oauth_app_required","mcp_oauth_not_advertised","mcp_oauth_pkce_unsupported","mcp_oauth_registration_failed","mcp_repo_config_invalid","mcp_server_address_refused","mcp_server_aether_managed","mcp_server_api_key_not_applicable","mcp_server_args_invalid","mcp_server_auth_discovery_failed","mcp_server_auth_unsupported","mcp_server_directory_managed","mcp_server_directory_moved","mcp_server_display_name_invalid","mcp_server_env_invalid","mcp_server_headers_invalid","mcp_server_key_invalid","mcp_server_key_reserved","mcp_server_key_taken","mcp_server_kind_change_refused","mcp_server_not_from_directory","mcp_server_not_mcp","mcp_server_package_invalid","mcp_server_plugin_bundled","mcp_server_plugin_off","mcp_server_response_too_large","mcp_server_return_to_invalid","mcp_server_runtime_invalid","mcp_server_switched_off","mcp_server_unreachable","mcp_server_url_invalid","mcp_server_version_unpinned","method_not_allowed","not_acceptable","not_found","not_implemented","org_role_insufficient","org_suspended","payment_required","plugin_moved","plugin_name_taken","plugin_request_invalid","plugin_server_key_reserved","plugin_server_key_taken","plugin_server_probe_failed","plugin_server_required","plugin_skill_invalid","plugin_source_address_refused","plugin_source_empty","plugin_source_invalid","plugin_source_not_found","plugin_source_not_public","plugin_source_too_large","plugin_source_unreachable","plugin_source_unsupported","plugin_switched_off","plugin_undeliverable","precondition_failed","rate_limited","request_canceled","request_timeout","request_too_large","service_unavailable","skill_slug_reserved","unauthenticated","unsupported_media_type","validation_failed"],"minLength":1,"type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"errors":{"items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"errors.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"errors.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"errors","typeLabel":"object[]"}},"required":["error","code"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"account_deleting","error":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Internal Server Error","exampleType":"generated"},"4ce32da5-4303-46a9-bf9e-3ad6d3f38c9c":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"code":{"enum":["account_deleting","aether_inference_unavailable","aether_inference_unserved","agent_connector_not_found","agent_default_project_archived","bad_gateway","bad_request","conflict","connection_agent_only","connection_harness_mismatch","connection_not_held","control_forbidden","default_skill_required","forbidden","gateway_timeout","gone","integration_auth_unexpected","integration_not_in_directory","integration_shape_changed","internal_error","mcp_connection_github_not_connected","mcp_connection_oauth_not_accepted","mcp_connection_org_not_offered","mcp_connection_secret_invalid","mcp_connection_server_changed","mcp_connection_static_secret_not_accepted","mcp_credential_policy_not_applicable","mcp_credential_policy_org_unavailable","mcp_credential_policy_required","mcp_oauth_app_auth_method_unsupported","mcp_oauth_app_invalid","mcp_oauth_app_issuer_invalid","mcp_oauth_app_required","mcp_oauth_not_advertised","mcp_oauth_pkce_unsupported","mcp_oauth_registration_failed","mcp_repo_config_invalid","mcp_server_address_refused","mcp_server_aether_managed","mcp_server_api_key_not_applicable","mcp_server_args_invalid","mcp_server_auth_discovery_failed","mcp_server_auth_unsupported","mcp_server_directory_managed","mcp_server_directory_moved","mcp_server_display_name_invalid","mcp_server_env_invalid","mcp_server_headers_invalid","mcp_server_key_invalid","mcp_server_key_reserved","mcp_server_key_taken","mcp_server_kind_change_refused","mcp_server_not_from_directory","mcp_server_not_mcp","mcp_server_package_invalid","mcp_server_plugin_bundled","mcp_server_plugin_off","mcp_server_response_too_large","mcp_server_return_to_invalid","mcp_server_runtime_invalid","mcp_server_switched_off","mcp_server_unreachable","mcp_server_url_invalid","mcp_server_version_unpinned","method_not_allowed","not_acceptable","not_found","not_implemented","org_role_insufficient","org_suspended","payment_required","plugin_moved","plugin_name_taken","plugin_request_invalid","plugin_server_key_reserved","plugin_server_key_taken","plugin_server_probe_failed","plugin_server_required","plugin_skill_invalid","plugin_source_address_refused","plugin_source_empty","plugin_source_invalid","plugin_source_not_found","plugin_source_not_public","plugin_source_too_large","plugin_source_unreachable","plugin_source_unsupported","plugin_switched_off","plugin_undeliverable","precondition_failed","rate_limited","request_canceled","request_timeout","request_too_large","service_unavailable","skill_slug_reserved","unauthenticated","unsupported_media_type","validation_failed"],"minLength":1,"type":"string","isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"errors":{"items":{"additionalProperties":false,"properties":{"location":{"description":"Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'","type":"string","uniqueKey":"errors.items.[INDEX].location","typeLabel":"string"},"message":{"description":"Error message text","type":"string","uniqueKey":"errors.items.[INDEX].message","typeLabel":"string"},"value":{"description":"The value at the given location","uniqueKey":"errors.items.[INDEX].value","typeLabel":"any"}},"type":"object","uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"type":"array","uniqueKey":"errors","typeLabel":"object[]"}},"required":["error","code"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"account_deleting","error":"\u003cstring>","errors":[{"location":"\u003cstring>","message":"\u003cstring>","value":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Service Unavailable","exampleType":"generated"}},"security":{"ed131015-7e54-4577-885d-342557939388":{"bearerAuth":{"bearerFormat":"JWT","scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"eb3dfda0-5a87-43cb-a06e-9e615ed09db8":{"url":"https://api.runaether.dev"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"bearerFormat":"JWT","scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"aether-c4587800","siteName":"Aether","title":"Change a plugin's organization-wide defaults - Aether","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-25T10:23:24.836Z","originalFileLocation":"api-reference/endpoints/plugins/patch-plugins-by-pluginid.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"dark\";if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"A merge patch of the plugin\u0026#x27;s defaults naming exactly one field, answered with the plugin: each rewrites every project\u0026#x27;s enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project\u0026#x27;s enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Aether\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Change a plugin\u0026#x27;s organization-wide defaults - Aether\">\u003cmeta data-mint-head property=\"og:description\" content=\"A merge patch of the plugin\u0026#x27;s defaults naming exactly one field, answered with the plugin: each rewrites every project\u0026#x27;s enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project\u0026#x27;s enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Aether\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://aether-c4587800.mintlify.app/_mintlify/api/og/v2?division=Plugins\u0026amp;title=Change+a+plugin%27s+organization-wide+defaults\u0026amp;description=A+merge+patch+of+the+plugin%27s+defaults+naming+exactly+one+field%2C+answered+with+the+plugin%3A+each+rewrites+every+project%27s+enablement+on+its+own%2C+so+a+body+naming\u0026amp;theme=45bbe8413141f5c0b81fcea8\u0026amp;signature=0edfcee9e45fd1084a21ecb73a89551893376317457b41633e88e219c0ae685e\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Change a plugin\u0026#x27;s organization-wide defaults - Aether\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"A merge patch of the plugin\u0026#x27;s defaults naming exactly one field, answered with the plugin: each rewrites every project\u0026#x27;s enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project\u0026#x27;s enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://aether-c4587800.mintlify.app/_mintlify/api/og/v2?division=Plugins\u0026amp;title=Change+a+plugin%27s+organization-wide+defaults\u0026amp;description=A+merge+patch+of+the+plugin%27s+defaults+naming+exactly+one+field%2C+answered+with+the+plugin%3A+each+rewrites+every+project%27s+enablement+on+its+own%2C+so+a+body+naming\u0026amp;theme=45bbe8413141f5c0b81fcea8\u0026amp;signature=0edfcee9e45fd1084a21ecb73a89551893376317457b41633e88e219c0ae685e\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/aether-c4587800/RjJo40w5LK5jrZHD/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Aether\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#9184ff\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/endpoints/plugins/patch-plugins-by-pluginid.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.runaether.dev/#organization\",\"name\":\"Aether\",\"url\":\"https://docs.runaether.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/aether-c4587800/hrC9bOYLpJ53VNbo/logo/light.svg?fit=max\u0026auto=format\u0026n=hrC9bOYLpJ53VNbo\u0026q=85\u0026s=cdf40b8647da8a5d82a91e289a1958f7\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.runaether.dev#website\",\"name\":\"Aether\",\"url\":\"https://docs.runaether.dev\",\"publisher\":{\"@id\":\"https://docs.runaether.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid#webpage\",\"url\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid\",\"name\":\"Change a plugin's organization-wide defaults\",\"description\":\"A merge patch of the plugin's defaults naming exactly one field, answered with the plugin: each rewrites every project's enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project's enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.\",\"dateModified\":\"2026-10-25T10:23:24.836Z\",\"isPartOf\":{\"@id\":\"https://docs.runaether.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Plugins\",\"item\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/get-plugin-marketplaces\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Change a plugin's organization-wide defaults\",\"item\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid#apireference\",\"headline\":\"Change a plugin's organization-wide defaults\",\"name\":\"Change a plugin's organization-wide defaults\",\"description\":\"A merge patch of the plugin's defaults naming exactly one field, answered with the plugin: each rewrites every project's enablement on its own, so a body naming two or none is refused with 422. default_credential_policy is whose connections every project enabling the plugin uses, set on every project that enables it now, replacing what each set for itself; it applies to every authenticated MCP server of the plugin. Null exactly for a plugin none of whose servers authenticates: otherwise mcp_credential_policy_required, and a policy for one that needs none mcp_credential_policy_not_applicable. The org policy is refused with mcp_credential_policy_org_unavailable unless the organization has its own connection to every authenticated server of the plugin. enabled_by_default true enables the plugin on every current project of the organization that does not enable it, with its default credential policy, and on every project created later; false deletes every project's enablement, and no project enables it (enableProjectPlugin refuses with plugin_switched_off) until it is set true again. Setting the value the plugin has writes nothing. False is refused with plugin_server_required while a server of the plugin is required.\",\"url\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid\",\"mainEntityOfPage\":{\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/patch-plugins-by-pluginid#webpage\"},\"dateModified\":\"2026-10-25T10:23:24.836Z\",\"publisher\":{\"@id\":\"https://docs.runaether.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.runaether.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Aether\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Aether","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/introduction"}]},{"tab":"Concepts","pages":[{"title":"Concepts","href":"/concepts/overview"}]},{"tab":"API Reference","groups":[{"group":"API Reference","pages":[{"title":"API Overview","href":"/api-reference/overview"},{"title":"Authentication","href":"/api-reference/authentication"},{"title":"Release Notes","href":"/api-reference/release-notes"}]},{"group":"Projects","pages":[{"title":"List projects","openapi":"api-reference/openapi.json GET /projects","href":"/api-reference/endpoints/projects/get-projects"},{"title":"Create project","openapi":"api-reference/openapi.json POST /projects","href":"/api-reference/endpoints/projects/post-projects"},{"title":"Get project","openapi":"api-reference/openapi.json GET /projects/{id}","href":"/api-reference/endpoints/projects/get-projects-by-id"},{"title":"Get project runtime options","openapi":"api-reference/openapi.json GET /projects/{projectID}/runtime-options","href":"/api-reference/endpoints/projects/get-projects-by-projectid-runtime-options"},{"title":"Update project","openapi":"api-reference/openapi.json PATCH /projects/{id}","href":"/api-reference/endpoints/projects/patch-projects-by-id"}]},{"group":"Workspaces","pages":[{"title":"List workspaces for a project","openapi":"api-reference/openapi.json GET /projects/{projectID}/workspaces","href":"/api-reference/endpoints/workspaces/get-projects-by-projectid-workspaces"},{"title":"List workspaces across all projects","openapi":"api-reference/openapi.json GET /workspaces","href":"/api-reference/endpoints/workspaces/get-workspaces"},{"title":"Get a workspace","openapi":"api-reference/openapi.json GET /workspaces/{workspaceID}","href":"/api-reference/endpoints/workspaces/get-workspaces-by-workspaceid"},{"title":"Update workspace settings","openapi":"api-reference/openapi.json PATCH /workspaces/{workspaceID}","href":"/api-reference/endpoints/workspaces/patch-workspaces-by-workspaceid"},{"title":"Delete a workspace","openapi":"api-reference/openapi.json DELETE /workspaces/{workspaceID}","href":"/api-reference/endpoints/workspaces/delete-workspaces-by-workspaceid"},{"title":"Connect to a workspace","openapi":"api-reference/openapi.json POST /workspaces/{workspaceID}/connect","href":"/api-reference/endpoints/workspaces/post-workspaces-by-workspaceid-connect"},{"title":"Create an authenticated preview","openapi":"api-reference/openapi.json POST /workspaces/{workspaceID}/preview-auth","href":"/api-reference/endpoints/workspaces/post-workspaces-by-workspaceid-preview-auth"},{"title":"Stop a workspace","openapi":"api-reference/openapi.json POST /workspaces/{workspaceID}/stop","href":"/api-reference/endpoints/workspaces/post-workspaces-by-workspaceid-stop"}]},{"group":"Tasks","pages":[{"title":"List tasks","openapi":"api-reference/openapi.json GET /tasks","href":"/api-reference/endpoints/tasks/get-tasks"},{"title":"Search conversations","openapi":"api-reference/openapi.json GET /tasks/search","href":"/api-reference/endpoints/tasks/get-tasks-search"},{"title":"Create a task","openapi":"api-reference/openapi.json POST /tasks","href":"/api-reference/endpoints/tasks/post-tasks"},{"title":"Get a task with its activity","openapi":"api-reference/openapi.json GET /tasks/{taskID}","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid"},{"title":"Get the tree containing a task","openapi":"api-reference/openapi.json GET /tasks/{taskID}/tree","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-tree"},{"title":"List a task's activity","openapi":"api-reference/openapi.json GET /tasks/{taskID}/activity","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-activity"},{"title":"List media captured for a task","openapi":"api-reference/openapi.json GET /tasks/{taskID}/media","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-media"},{"title":"Hide a capture from the proof page and the Verify panel, or return it to them","openapi":"api-reference/openapi.json PATCH /tasks/{taskID}/media/{mediaID}","href":"/api-reference/endpoints/tasks/patch-tasks-by-taskid-media-by-mediaid"},{"title":"List the cloud devices a task is currently holding","openapi":"api-reference/openapi.json GET /tasks/{taskID}/device-sessions","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-device-sessions"},{"title":"List the provider-native subagents a task owns","openapi":"api-reference/openapi.json GET /tasks/{taskID}/subagents","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-subagents"},{"title":"Read one subagent's transcript","openapi":"api-reference/openapi.json GET /tasks/{taskID}/subagents/{toolCallID}/events","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-subagents-by-toolcallid-events"},{"title":"Get the content of one referenced conversation attachment","openapi":"api-reference/openapi.json GET /tasks/{taskID}/messages/{messageID}/attachments/{sha256}","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-messages-by-messageid-attachments-by-sha256"},{"title":"Replace task settings","openapi":"api-reference/openapi.json PUT /tasks/{taskID}","href":"/api-reference/endpoints/tasks/put-tasks-by-taskid"},{"title":"Change a task's archive and pin state","openapi":"api-reference/openapi.json PATCH /tasks/{taskID}","href":"/api-reference/endpoints/tasks/patch-tasks-by-taskid"},{"title":"Rename a task","openapi":"api-reference/openapi.json PUT /tasks/{taskID}/name","href":"/api-reference/endpoints/tasks/put-tasks-by-taskid-name"},{"title":"Read accepted open messages and their canonical replacements","openapi":"api-reference/openapi.json GET /tasks/{taskID}/conversation/live","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-conversation-live"},{"title":"Read one task's model spend by what paid for it","openapi":"api-reference/openapi.json GET /tasks/{taskID}/spend","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-spend"},{"title":"Read what one task's metered runs have used so far","openapi":"api-reference/openapi.json GET /tasks/{taskID}/runtime-usage","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-runtime-usage"},{"title":"Get a page of task conversation turn summaries","openapi":"api-reference/openapi.json GET /tasks/{taskID}/conversation/turns","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-conversation-turns"},{"title":"Get a page of activity owned by a task conversation turn","openapi":"api-reference/openapi.json GET /tasks/{taskID}/conversation/turns/{turnID}/activity","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-conversation-turns-by-turnid-activity"},{"title":"Get a page of task conversation turn summaries","openapi":"api-reference/openapi.json GET /tasks/{taskID}/conversation/turns","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-conversation-turns"},{"title":"Get a page of activity owned by a task conversation turn","openapi":"api-reference/openapi.json GET /tasks/{taskID}/conversation/turns/{turnID}/activity","href":"/api-reference/endpoints/tasks/get-tasks-by-taskid-conversation-turns-by-turnid-activity"},{"title":"Remove a queued message from a task","openapi":"api-reference/openapi.json POST /tasks/{taskID}/remove-from-queue","href":"/api-reference/endpoints/tasks/post-tasks-by-taskid-remove-from-queue"},{"title":"Respond to a task","openapi":"api-reference/openapi.json POST /tasks/{taskID}/respond","href":"/api-reference/endpoints/tasks/post-tasks-by-taskid-respond"},{"title":"Stop a running task","openapi":"api-reference/openapi.json POST /tasks/{taskID}/stop","href":"/api-reference/endpoints/tasks/post-tasks-by-taskid-stop"},{"title":"Create a task from an imported local agent session","openapi":"api-reference/openapi.json POST /tasks/teleport","href":"/api-reference/endpoints/tasks/post-tasks-teleport"}]},{"group":"Environment Variables","pages":[{"title":"List project environment variables","openapi":"api-reference/openapi.json GET /projects/{id}/env-vars","href":"/api-reference/endpoints/env-vars/get-projects-by-id-env-vars"},{"title":"Import project environment variables","openapi":"api-reference/openapi.json POST /projects/{id}/env-vars/import","href":"/api-reference/endpoints/env-vars/post-projects-by-id-env-vars-import"},{"title":"Get project environment variable","openapi":"api-reference/openapi.json GET /projects/{id}/env-vars/{key}","href":"/api-reference/endpoints/env-vars/get-projects-by-id-env-vars-by-key"},{"title":"Set project environment variable","openapi":"api-reference/openapi.json PUT /projects/{id}/env-vars/{key}","href":"/api-reference/endpoints/env-vars/put-projects-by-id-env-vars-by-key"},{"title":"Delete project environment variable","openapi":"api-reference/openapi.json DELETE /projects/{id}/env-vars/{key}","href":"/api-reference/endpoints/env-vars/delete-projects-by-id-env-vars-by-key"}]},{"group":"Secret Files","pages":[{"title":"List project secret files","openapi":"api-reference/openapi.json GET /projects/{id}/secret-files","href":"/api-reference/endpoints/secret-files/get-projects-by-id-secret-files"},{"title":"Upload project secret file","openapi":"api-reference/openapi.json POST /projects/{id}/secret-files","href":"/api-reference/endpoints/secret-files/post-projects-by-id-secret-files"},{"title":"Bulk upload project secret files","openapi":"api-reference/openapi.json POST /projects/{id}/secret-files/bulk","href":"/api-reference/endpoints/secret-files/post-projects-by-id-secret-files-bulk"},{"title":"Get project secret file","openapi":"api-reference/openapi.json GET /projects/{id}/secret-files/{file_key}","href":"/api-reference/endpoints/secret-files/get-projects-by-id-secret-files-by-file-key"},{"title":"Delete project secret file","openapi":"api-reference/openapi.json DELETE /projects/{id}/secret-files/{file_key}","href":"/api-reference/endpoints/secret-files/delete-projects-by-id-secret-files-by-file-key"}]},{"group":"Skills","pages":[{"title":"List project skills","openapi":"api-reference/openapi.json GET /projects/{id}/skills","href":"/api-reference/endpoints/skills/get-projects-by-id-skills"},{"title":"List user skills","openapi":"api-reference/openapi.json GET /skills","href":"/api-reference/endpoints/skills/get-skills"},{"title":"Upload user skill","openapi":"api-reference/openapi.json POST /skills","href":"/api-reference/endpoints/skills/post-skills"},{"title":"Get user skill","openapi":"api-reference/openapi.json GET /skills/{slug}","href":"/api-reference/endpoints/skills/get-skills-by-slug"},{"title":"Delete user skill","openapi":"api-reference/openapi.json DELETE /skills/{slug}","href":"/api-reference/endpoints/skills/delete-skills-by-slug"},{"title":"List default skills","openapi":"api-reference/openapi.json GET /default-skills","href":"/api-reference/endpoints/skills/get-default-skills"},{"title":"Enable or disable a default skill","openapi":"api-reference/openapi.json PUT /default-skills/{slug}","href":"/api-reference/endpoints/skills/put-default-skills-by-slug"}]},{"group":"Automations","pages":[{"title":"List automations","openapi":"api-reference/openapi.json GET /automations","href":"/api-reference/endpoints/automations/get-automations"},{"title":"Update automation","openapi":"api-reference/openapi.json PUT /automations/{automationID}","href":"/api-reference/endpoints/automations/put-automations-by-automationid"},{"title":"Delete automation","openapi":"api-reference/openapi.json DELETE /automations/{automationID}","href":"/api-reference/endpoints/automations/delete-automations-by-automationid"},{"title":"Pause or resume an automation","openapi":"api-reference/openapi.json PATCH /automations/{automationID}","href":"/api-reference/endpoints/automations/patch-automations-by-automationid"},{"title":"List automation runs","openapi":"api-reference/openapi.json GET /automations/{automationID}/runs","href":"/api-reference/endpoints/automations/get-automations-by-automationid-runs"},{"title":"Create project automation","openapi":"api-reference/openapi.json POST /projects/{projectID}/automations","href":"/api-reference/endpoints/automations/post-projects-by-projectid-automations"}]},{"group":"Agent Profiles","pages":[{"title":"List agent profiles","openapi":"api-reference/openapi.json GET /agent-profiles","href":"/api-reference/endpoints/agent-profiles/get-agent-profiles"},{"title":"Create agent profile","openapi":"api-reference/openapi.json POST /agent-profiles","href":"/api-reference/endpoints/agent-profiles/post-agent-profiles"},{"title":"Update agent profile","openapi":"api-reference/openapi.json PUT /agent-profiles/{profileID}","href":"/api-reference/endpoints/agent-profiles/put-agent-profiles-by-profileid"},{"title":"Delete agent profile","openapi":"api-reference/openapi.json DELETE /agent-profiles/{profileID}","href":"/api-reference/endpoints/agent-profiles/delete-agent-profiles-by-profileid"}]},{"group":"MCP Servers","pages":[{"title":"List the organization's MCP servers","openapi":"api-reference/openapi.json GET /mcp-servers","href":"/api-reference/endpoints/mcp-servers/get-mcp-servers"},{"title":"Probe how a remote MCP server authenticates","openapi":"api-reference/openapi.json POST /mcp-servers/probe","href":"/api-reference/endpoints/mcp-servers/post-mcp-servers-probe"},{"title":"Add an MCP server to the organization's catalog","openapi":"api-reference/openapi.json POST /mcp-servers","href":"/api-reference/endpoints/mcp-servers/post-mcp-servers"},{"title":"Update an MCP server","openapi":"api-reference/openapi.json PUT /mcp-servers/{mcpServerID}","href":"/api-reference/endpoints/mcp-servers/put-mcp-servers-by-mcpserverid"},{"title":"Change an MCP server's organization-wide defaults","openapi":"api-reference/openapi.json PATCH /mcp-servers/{mcpServerID}","href":"/api-reference/endpoints/mcp-servers/patch-mcp-servers-by-mcpserverid"},{"title":"Delete an MCP server","openapi":"api-reference/openapi.json DELETE /mcp-servers/{mcpServerID}","href":"/api-reference/endpoints/mcp-servers/delete-mcp-servers-by-mcpserverid"},{"title":"Preview updating a directory server from its entry","openapi":"api-reference/openapi.json POST /mcp-servers/{mcpServerID}/directory-update-preview","href":"/api-reference/endpoints/mcp-servers/post-mcp-servers-by-mcpserverid-directory-update-preview"},{"title":"Update a directory server to the revision its preview showed","openapi":"api-reference/openapi.json POST /mcp-servers/{mcpServerID}/directory-update","href":"/api-reference/endpoints/mcp-servers/post-mcp-servers-by-mcpserverid-directory-update"},{"title":"List the MCP servers a project enables","openapi":"api-reference/openapi.json GET /projects/{id}/mcp-servers","href":"/api-reference/endpoints/mcp-servers/get-projects-by-id-mcp-servers"},{"title":"Check whether your tasks in a project can start","openapi":"api-reference/openapi.json GET /projects/{id}/mcp-server-readiness","href":"/api-reference/endpoints/mcp-servers/get-projects-by-id-mcp-server-readiness"},{"title":"Enable an MCP server on a project","openapi":"api-reference/openapi.json PUT /projects/{id}/mcp-servers/{mcpServerID}","href":"/api-reference/endpoints/mcp-servers/put-projects-by-id-mcp-servers-by-mcpserverid"},{"title":"Disable an MCP server on a project","openapi":"api-reference/openapi.json DELETE /projects/{id}/mcp-servers/{mcpServerID}","href":"/api-reference/endpoints/mcp-servers/delete-projects-by-id-mcp-servers-by-mcpserverid"},{"title":"List your MCP server connections and the organization's","openapi":"api-reference/openapi.json GET /mcp-server-connections","href":"/api-reference/endpoints/mcp-servers/get-mcp-server-connections"},{"title":"Connect an MCP server with your API key","openapi":"api-reference/openapi.json PUT /mcp-servers/{mcpServerID}/connection","href":"/api-reference/endpoints/mcp-servers/put-mcp-servers-by-mcpserverid-connection"},{"title":"Disconnect your MCP server connection","openapi":"api-reference/openapi.json DELETE /mcp-servers/{mcpServerID}/connection","href":"/api-reference/endpoints/mcp-servers/delete-mcp-servers-by-mcpserverid-connection"},{"title":"Connect an MCP server for the organization","openapi":"api-reference/openapi.json PUT /mcp-servers/{mcpServerID}/org-connection","href":"/api-reference/endpoints/mcp-servers/put-mcp-servers-by-mcpserverid-org-connection"},{"title":"Disconnect the organization's MCP server connection","openapi":"api-reference/openapi.json DELETE /mcp-servers/{mcpServerID}/org-connection","href":"/api-reference/endpoints/mcp-servers/delete-mcp-servers-by-mcpserverid-org-connection"},{"title":"Connect an MCP server with OAuth","openapi":"api-reference/openapi.json POST /mcp-servers/{mcpServerID}/connection/oauth","href":"/api-reference/endpoints/mcp-servers/post-mcp-servers-by-mcpserverid-connection-oauth"},{"title":"Connect an MCP server with OAuth for the organization","openapi":"api-reference/openapi.json POST /mcp-servers/{mcpServerID}/org-connection/oauth","href":"/api-reference/endpoints/mcp-servers/post-mcp-servers-by-mcpserverid-org-connection-oauth"},{"title":"Finish connecting an MCP server with OAuth","openapi":"api-reference/openapi.json POST /mcp-servers/oauth/callback","href":"/api-reference/endpoints/mcp-servers/post-mcp-servers-oauth-callback"},{"title":"List the organization's OAuth apps","openapi":"api-reference/openapi.json GET /mcp-oauth-apps","href":"/api-reference/endpoints/mcp-servers/get-mcp-oauth-apps"},{"title":"Save the organization's OAuth app for an issuer","openapi":"api-reference/openapi.json PUT /mcp-oauth-apps","href":"/api-reference/endpoints/mcp-servers/put-mcp-oauth-apps"},{"title":"Delete the organization's OAuth app for an issuer","openapi":"api-reference/openapi.json DELETE /mcp-oauth-apps","href":"/api-reference/endpoints/mcp-servers/delete-mcp-oauth-apps"}]},{"group":"Plugins","pages":[{"title":"List the official plugin marketplaces","openapi":"api-reference/openapi.json GET /plugin-marketplaces","href":"/api-reference/endpoints/plugins/get-plugin-marketplaces"},{"title":"List the plugins a marketplace offers","openapi":"api-reference/openapi.json POST /plugin-marketplaces/browse","href":"/api-reference/endpoints/plugins/post-plugin-marketplaces-browse"},{"title":"List the organization's plugins","openapi":"api-reference/openapi.json GET /plugins","href":"/api-reference/endpoints/plugins/get-plugins"},{"title":"Install a plugin in the organization","openapi":"api-reference/openapi.json POST /plugins","href":"/api-reference/endpoints/plugins/post-plugins"},{"title":"Preview updating a plugin","openapi":"api-reference/openapi.json POST /plugins/{pluginID}/update-preview","href":"/api-reference/endpoints/plugins/post-plugins-by-pluginid-update-preview"},{"title":"Update a plugin to the revision its preview showed","openapi":"api-reference/openapi.json POST /plugins/{pluginID}/update","description":"Moves the plugin to the revision its source resolves to now, which must be the previewed one. A server the new revision no longer declares is removed with its connections; a server whose URL or auth changes loses its connections.","href":"/api-reference/endpoints/plugins/post-plugins-by-pluginid-update"},{"title":"Change a plugin's organization-wide defaults","openapi":"api-reference/openapi.json PATCH /plugins/{pluginID}","href":"/api-reference/endpoints/plugins/patch-plugins-by-pluginid"},{"title":"Uninstall a plugin","openapi":"api-reference/openapi.json DELETE /plugins/{pluginID}","description":"Deletes the plugin, its MCP servers and their connections, and every project's enablement of it.","href":"/api-reference/endpoints/plugins/delete-plugins-by-pluginid"},{"title":"List the plugins a project enables","openapi":"api-reference/openapi.json GET /projects/{id}/plugins","href":"/api-reference/endpoints/plugins/get-projects-by-id-plugins"},{"title":"Enable a plugin on a project","openapi":"api-reference/openapi.json PUT /projects/{id}/plugins/{pluginID}","href":"/api-reference/endpoints/plugins/put-projects-by-id-plugins-by-pluginid"},{"title":"Disable a plugin on a project","openapi":"api-reference/openapi.json DELETE /projects/{id}/plugins/{pluginID}","href":"/api-reference/endpoints/plugins/delete-projects-by-id-plugins-by-pluginid"},{"title":"List Aether's integration directory","openapi":"api-reference/openapi.json GET /integration-directory","href":"/api-reference/endpoints/plugins/get-integration-directory"},{"title":"Search integrations by name","openapi":"api-reference/openapi.json GET /integration-search","href":"/api-reference/endpoints/plugins/get-integration-search"},{"title":"Search the MCP registry","openapi":"api-reference/openapi.json GET /integration-search/registry","href":"/api-reference/endpoints/plugins/get-integration-search-registry"},{"title":"Install an integration of Aether's integration directory","openapi":"api-reference/openapi.json POST /integration-directory/{key}/install","href":"/api-reference/endpoints/plugins/post-integration-directory-by-key-install"}]},{"group":"Usage","pages":[{"title":"Get usage summary","openapi":"api-reference/openapi.json GET /usage/summary","href":"/api-reference/endpoints/usage/get-usage-summary"}]},{"group":"Profile","pages":[{"title":"Get profile","openapi":"api-reference/openapi.json GET /profile","href":"/api-reference/endpoints/profile/get-profile"},{"title":"Delete your account","openapi":"api-reference/openapi.json DELETE /profile","href":"/api-reference/endpoints/profile/delete-profile"},{"title":"Complete onboarding","openapi":"api-reference/openapi.json POST /profile/onboarding/complete","href":"/api-reference/endpoints/profile/post-profile-onboarding-complete"},{"title":"Launch the onboarding task","openapi":"api-reference/openapi.json POST /profile/onboarding/launch","href":"/api-reference/endpoints/profile/post-profile-onboarding-launch"},{"title":"Set up the onboarding repository","openapi":"api-reference/openapi.json POST /profile/onboarding/repo","href":"/api-reference/endpoints/profile/post-profile-onboarding-repo"}]},{"group":"Organizations","pages":[{"title":"List my organizations","openapi":"api-reference/openapi.json GET /orgs","href":"/api-reference/endpoints/orgs/get-orgs"},{"title":"Create a team organization","openapi":"api-reference/openapi.json POST /orgs","href":"/api-reference/endpoints/orgs/post-orgs"},{"title":"Change organization settings","openapi":"api-reference/openapi.json PATCH /orgs/{orgID}","href":"/api-reference/endpoints/orgs/patch-orgs-by-orgid"},{"title":"List organization members","openapi":"api-reference/openapi.json GET /orgs/{orgID}/members","href":"/api-reference/endpoints/orgs/get-orgs-by-orgid-members"},{"title":"Change an organization member role","openapi":"api-reference/openapi.json PATCH /orgs/{orgID}/members/{userID}","href":"/api-reference/endpoints/orgs/patch-orgs-by-orgid-members-by-userid"},{"title":"Remove an organization member","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/members/{userID}","href":"/api-reference/endpoints/orgs/delete-orgs-by-orgid-members-by-userid"},{"title":"Leave an organization","openapi":"api-reference/openapi.json POST /orgs/{orgID}/leave","href":"/api-reference/endpoints/orgs/post-orgs-by-orgid-leave"},{"title":"Ask the organization's admins for a seat","openapi":"api-reference/openapi.json POST /orgs/{orgID}/seat-requests","href":"/api-reference/endpoints/orgs/post-orgs-by-orgid-seat-requests"},{"title":"List open organization invitations (pending or expired)","openapi":"api-reference/openapi.json GET /orgs/{orgID}/invites","href":"/api-reference/endpoints/orgs/get-orgs-by-orgid-invites"},{"title":"Invite a user to an organization","openapi":"api-reference/openapi.json POST /orgs/{orgID}/invites","href":"/api-reference/endpoints/orgs/post-orgs-by-orgid-invites"},{"title":"Revoke an organization invitation","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/invites/{inviteID}","href":"/api-reference/endpoints/orgs/delete-orgs-by-orgid-invites-by-inviteid"},{"title":"Resend an organization invitation","openapi":"api-reference/openapi.json POST /orgs/{orgID}/invites/{inviteID}/resend","href":"/api-reference/endpoints/orgs/post-orgs-by-orgid-invites-by-inviteid-resend"},{"title":"List my open organization invitations (pending or expired)","openapi":"api-reference/openapi.json GET /invites","href":"/api-reference/endpoints/orgs/get-invites"},{"title":"Accept an organization invitation","openapi":"api-reference/openapi.json POST /invites/{inviteID}/accept","href":"/api-reference/endpoints/orgs/post-invites-by-inviteid-accept"}]},{"group":"User Discovery","pages":[{"title":"Get dismissed discovery keys","openapi":"api-reference/openapi.json GET /user/discovery","href":"/api-reference/endpoints/user-discovery/get-user-discovery"},{"title":"Dismiss a discovery key","openapi":"api-reference/openapi.json POST /user/discovery/dismiss","href":"/api-reference/endpoints/user-discovery/post-user-discovery-dismiss"}]},{"group":"Pr Reviews","pages":[{"title":"List reviewed pull requests with their review runs","openapi":"api-reference/openapi.json GET /pr-reviews","href":"/api-reference/endpoints/pr-reviews/get-pr-reviews"},{"title":"Get one reviewed pull request with its review runs","openapi":"api-reference/openapi.json GET /pr-reviews/{pullRequestID}","href":"/api-reference/endpoints/pr-reviews/get-pr-reviews-by-pullrequestid"},{"title":"Get one file's content at a reviewed commit of a pull request","openapi":"api-reference/openapi.json GET /pr-reviews/{pullRequestID}/file-content","href":"/api-reference/endpoints/pr-reviews/get-pr-reviews-by-pullrequestid-file-content"},{"title":"Get the whole stack a reviewed pull request belongs to","openapi":"api-reference/openapi.json GET /pr-reviews/{pullRequestID}/stack","href":"/api-reference/endpoints/pr-reviews/get-pr-reviews-by-pullrequestid-stack"}]},{"group":"Pull Requests","pages":[{"title":"Dispatch pull request feedback to Aether","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/dispatch","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-dispatch"},{"title":"List Aether feedback dispatches for a pull request","openapi":"api-reference/openapi.json GET /pull-requests/{pullRequestID}/github/dispatches","href":"/api-reference/endpoints/pull-requests/get-pull-requests-by-pullrequestid-github-dispatches"},{"title":"Get a pull request's merge box and checks","openapi":"api-reference/openapi.json GET /pull-requests/{pullRequestID}/github/pr","href":"/api-reference/endpoints/pull-requests/get-pull-requests-by-pullrequestid-github-pr"},{"title":"Post a top-level comment on a pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/comments","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-comments"},{"title":"Reply to a review comment on a pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/comments/{commentID}/reply","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-comments-by-commentid-reply"},{"title":"Resolve the review thread containing a comment on a pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/comments/{commentID}/resolve","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-comments-by-commentid-resolve"},{"title":"Unresolve the review thread containing a comment on a pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/comments/{commentID}/unresolve","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-comments-by-commentid-unresolve"},{"title":"Get a pull request's changed files with unified-diff patches","openapi":"api-reference/openapi.json GET /pull-requests/{pullRequestID}/github/pr/diff","href":"/api-reference/endpoints/pull-requests/get-pull-requests-by-pullrequestid-github-pr-diff"},{"title":"Merge a pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/merge","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-merge"},{"title":"Convert a pull request to a draft","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/draft","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-draft"},{"title":"Mark a draft pull request ready for review","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/ready","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-ready"},{"title":"Close a pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/close","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-close"},{"title":"Reopen a closed pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/reopen","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-reopen"},{"title":"Request reviewers on a pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/pr/reviewers","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-pr-reviewers"},{"title":"Remove requested reviewers from a pull request","openapi":"api-reference/openapi.json DELETE /pull-requests/{pullRequestID}/github/pr/reviewers","href":"/api-reference/endpoints/pull-requests/delete-pull-requests-by-pullrequestid-github-pr-reviewers"},{"title":"Submit a human pull request review","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/review","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-review"},{"title":"Request an Aether review of a pull request","openapi":"api-reference/openapi.json POST /pull-requests/{pullRequestID}/github/review-runs","href":"/api-reference/endpoints/pull-requests/post-pull-requests-by-pullrequestid-github-review-runs"},{"title":"List a pull request's review threads","openapi":"api-reference/openapi.json GET /pull-requests/{pullRequestID}/github/pr/threads","href":"/api-reference/endpoints/pull-requests/get-pull-requests-by-pullrequestid-github-pr-threads"},{"title":"List a pull request's activity","openapi":"api-reference/openapi.json GET /pull-requests/{pullRequestID}/activity","href":"/api-reference/endpoints/pull-requests/get-pull-requests-by-pullrequestid-activity"},{"title":"List a pull request's recorded verification events","openapi":"api-reference/openapi.json GET /pull-requests/{pullRequestID}/verification-events","href":"/api-reference/endpoints/pull-requests/get-pull-requests-by-pullrequestid-verification-events"},{"title":"Get everything recorded as proof of a pull request","openapi":"api-reference/openapi.json GET /pull-requests/{pullRequestID}/proof","href":"/api-reference/endpoints/pull-requests/get-pull-requests-by-pullrequestid-proof"},{"title":"Change who may watch a pull request's proof","openapi":"api-reference/openapi.json PATCH /pull-requests/{pullRequestID}/proof","href":"/api-reference/endpoints/pull-requests/patch-pull-requests-by-pullrequestid-proof"},{"title":"Resolve a pull request's proof by repository and number","openapi":"api-reference/openapi.json GET /repos/{owner}/{repo}/pulls/{number}/proof","href":"/api-reference/endpoints/pull-requests/get-repos-by-owner-by-repo-pulls-by-number-proof"},{"title":"Get a public pull request's proof","openapi":"api-reference/openapi.json GET /public/pull-requests/{pullRequestID}/proof","href":"/api-reference/endpoints/pull-requests/get-public-pull-requests-by-pullrequestid-proof"},{"title":"Resolve where a task's public proof is watched","openapi":"api-reference/openapi.json GET /public/tasks/{taskID}/proof","href":"/api-reference/endpoints/pull-requests/get-public-tasks-by-taskid-proof"},{"title":"Resolve a public pull request's proof by repository and number","openapi":"api-reference/openapi.json GET /public/repos/{owner}/{repo}/pulls/{number}/proof","href":"/api-reference/endpoints/pull-requests/get-public-repos-by-owner-by-repo-pulls-by-number-proof"}]},{"group":"Push Tokens","pages":[{"title":"Register an Expo push token for the current user","openapi":"api-reference/openapi.json POST /user/push-tokens","href":"/api-reference/endpoints/push-tokens/post-user-push-tokens"},{"title":"Unregister an Expo push token for the current user","openapi":"api-reference/openapi.json POST /user/push-tokens/unregister","href":"/api-reference/endpoints/push-tokens/post-user-push-tokens-unregister"}]},{"group":"Agent","pages":[{"title":"Get your agent","openapi":"api-reference/openapi.json GET /agent","href":"/api-reference/endpoints/agent/get-agent"},{"title":"List your agent's events","openapi":"api-reference/openapi.json GET /agent/events","href":"/api-reference/endpoints/agent/get-agent-events"},{"title":"List your conversation with your agent","openapi":"api-reference/openapi.json GET /agent/messages","href":"/api-reference/endpoints/agent/get-agent-messages"},{"title":"Send your agent a message","openapi":"api-reference/openapi.json POST /agent/messages","href":"/api-reference/endpoints/agent/post-agent-messages"},{"title":"Choose what your agent runs on and its model","openapi":"api-reference/openapi.json PUT /agent/inference","href":"/api-reference/endpoints/agent/put-agent-inference"},{"title":"Edit your agent's memory","openapi":"api-reference/openapi.json POST /agent/memory","href":"/api-reference/endpoints/agent/post-agent-memory"},{"title":"Change your agent's default project, browser tools or status","openapi":"api-reference/openapi.json PATCH /agent","href":"/api-reference/endpoints/agent/patch-agent"},{"title":"Issue a single-use link","openapi":"api-reference/openapi.json POST /agent/links","href":"/api-reference/endpoints/agent/post-agent-links"},{"title":"Redeem a single-use link","openapi":"api-reference/openapi.json POST /agent/links/redeem","href":"/api-reference/endpoints/agent/post-agent-links-redeem"},{"title":"Paste a code on a single-use link","openapi":"api-reference/openapi.json POST /agent/links/paste","href":"/api-reference/endpoints/agent/post-agent-links-paste"},{"title":"Pick up the code pasted on a single-use link","openapi":"api-reference/openapi.json POST /agent/links/pickup","href":"/api-reference/endpoints/agent/post-agent-links-pickup"},{"title":"Get a connector","openapi":"api-reference/openapi.json GET /agent/connectors/{key}","href":"/api-reference/endpoints/agent/get-agent-connectors-by-key"},{"title":"Get your phone link","openapi":"api-reference/openapi.json GET /agent/phone","href":"/api-reference/endpoints/agent/get-agent-phone"},{"title":"Ask for a code to link your phone","openapi":"api-reference/openapi.json POST /agent/phone/verification","href":"/api-reference/endpoints/agent/post-agent-phone-verification"},{"title":"Delete your agent","openapi":"api-reference/openapi.json DELETE /agent","href":"/api-reference/endpoints/agent/delete-agent"},{"title":"Get your agent's daily spend cap","openapi":"api-reference/openapi.json GET /agent/daily-cap","href":"/api-reference/endpoints/agent/get-agent-daily-cap"},{"title":"Set your agent's daily spend cap","openapi":"api-reference/openapi.json PUT /agent/daily-cap","href":"/api-reference/endpoints/agent/put-agent-daily-cap"}]},{"group":"Connections","pages":[{"title":"List your connections","openapi":"api-reference/openapi.json GET /connections","href":"/api-reference/endpoints/connections/get-connections"},{"title":"Add a connection: Claude plan","openapi":"api-reference/openapi.json POST /connections/claude-plan","href":"/api-reference/endpoints/connections/post-connections-claude-plan"},{"title":"Add a connection: Anthropic API key","openapi":"api-reference/openapi.json POST /connections/anthropic-api-key","href":"/api-reference/endpoints/connections/post-connections-anthropic-api-key"},{"title":"Add a connection: OpenAI API key","openapi":"api-reference/openapi.json POST /connections/openai-api-key","href":"/api-reference/endpoints/connections/post-connections-openai-api-key"},{"title":"Add a connection: OpenRouter API key","openapi":"api-reference/openapi.json POST /connections/openrouter-api-key","href":"/api-reference/endpoints/connections/post-connections-openrouter-api-key"},{"title":"Add a connection: OpenCode auth file","openapi":"api-reference/openapi.json POST /connections/opencode-auth-file","href":"/api-reference/endpoints/connections/post-connections-opencode-auth-file"},{"title":"Start the ChatGPT plan device flow","openapi":"api-reference/openapi.json POST /connections/chatgpt-plan/device-auth/start","href":"/api-reference/endpoints/connections/post-connections-chatgpt-plan-device-auth-start"},{"title":"Poll the ChatGPT plan device flow","openapi":"api-reference/openapi.json POST /connections/chatgpt-plan/device-auth/poll","href":"/api-reference/endpoints/connections/post-connections-chatgpt-plan-device-auth-poll"},{"title":"Reconnect a connection: Claude plan","openapi":"api-reference/openapi.json PUT /connections/{id}/claude-plan","href":"/api-reference/endpoints/connections/put-connections-by-id-claude-plan"},{"title":"Reconnect a connection: Anthropic API key","openapi":"api-reference/openapi.json PUT /connections/{id}/anthropic-api-key","href":"/api-reference/endpoints/connections/put-connections-by-id-anthropic-api-key"},{"title":"Reconnect a connection: OpenAI API key","openapi":"api-reference/openapi.json PUT /connections/{id}/openai-api-key","href":"/api-reference/endpoints/connections/put-connections-by-id-openai-api-key"},{"title":"Reconnect a connection: OpenRouter API key","openapi":"api-reference/openapi.json PUT /connections/{id}/openrouter-api-key","href":"/api-reference/endpoints/connections/put-connections-by-id-openrouter-api-key"},{"title":"Reconnect a connection: OpenCode auth file","openapi":"api-reference/openapi.json PUT /connections/{id}/opencode-auth-file","href":"/api-reference/endpoints/connections/put-connections-by-id-opencode-auth-file"},{"title":"Rename a connection","openapi":"api-reference/openapi.json PATCH /connections/{id}","href":"/api-reference/endpoints/connections/patch-connections-by-id"},{"title":"Disconnect a connection","openapi":"api-reference/openapi.json DELETE /connections/{id}","href":"/api-reference/endpoints/connections/delete-connections-by-id"},{"title":"Set a harness's default connection","openapi":"api-reference/openapi.json PUT /connections/defaults/{harness}","href":"/api-reference/endpoints/connections/put-connections-defaults-by-harness"}]},{"group":"Slack","pages":[{"title":"Get Slack install URL","openapi":"api-reference/openapi.json GET /auth/slack/url","href":"/api-reference/endpoints/slack/get-auth-slack-url"},{"title":"List Slack channels","openapi":"api-reference/openapi.json GET /slack/channels","href":"/api-reference/endpoints/slack/get-slack-channels"},{"title":"Disconnect Slack","openapi":"api-reference/openapi.json DELETE /slack/connection","href":"/api-reference/endpoints/slack/delete-slack-connection"},{"title":"Update Slack connection","openapi":"api-reference/openapi.json PATCH /slack/connection","href":"/api-reference/endpoints/slack/patch-slack-connection"},{"title":"Link my Slack identity","openapi":"api-reference/openapi.json POST /slack/identity/link","href":"/api-reference/endpoints/slack/post-slack-identity-link"},{"title":"Unlink my Slack identity","openapi":"api-reference/openapi.json DELETE /slack/identity/link","href":"/api-reference/endpoints/slack/delete-slack-identity-link"},{"title":"Get whether Slack must reconnect","openapi":"api-reference/openapi.json GET /slack/reconnect","href":"/api-reference/endpoints/slack/get-slack-reconnect"},{"title":"List Slack routes","openapi":"api-reference/openapi.json GET /slack/routes","href":"/api-reference/endpoints/slack/get-slack-routes"},{"title":"Create Slack route","openapi":"api-reference/openapi.json POST /slack/routes","href":"/api-reference/endpoints/slack/post-slack-routes"},{"title":"Update Slack route","openapi":"api-reference/openapi.json PATCH /slack/routes/{routeId}","href":"/api-reference/endpoints/slack/patch-slack-routes-by-routeid"},{"title":"Delete Slack route","openapi":"api-reference/openapi.json DELETE /slack/routes/{routeId}","href":"/api-reference/endpoints/slack/delete-slack-routes-by-routeid"},{"title":"Get Slack status","openapi":"api-reference/openapi.json GET /slack/status","href":"/api-reference/endpoints/slack/get-slack-status"}]},{"group":"Sentry","pages":[{"title":"Get Sentry install URL","openapi":"api-reference/openapi.json GET /auth/sentry/url","href":"/api-reference/endpoints/sentry/get-auth-sentry-url"},{"title":"Disconnect Sentry","openapi":"api-reference/openapi.json DELETE /sentry/connection","href":"/api-reference/endpoints/sentry/delete-sentry-connection"},{"title":"Update Sentry connection","openapi":"api-reference/openapi.json PATCH /sentry/connection","href":"/api-reference/endpoints/sentry/patch-sentry-connection"},{"title":"List Sentry project links","openapi":"api-reference/openapi.json GET /sentry/links","href":"/api-reference/endpoints/sentry/get-sentry-links"},{"title":"Create Sentry project link","openapi":"api-reference/openapi.json POST /sentry/links","href":"/api-reference/endpoints/sentry/post-sentry-links"},{"title":"Update Sentry project link","openapi":"api-reference/openapi.json PATCH /sentry/links/{linkId}","href":"/api-reference/endpoints/sentry/patch-sentry-links-by-linkid"},{"title":"Delete Sentry project link","openapi":"api-reference/openapi.json DELETE /sentry/links/{linkId}","href":"/api-reference/endpoints/sentry/delete-sentry-links-by-linkid"},{"title":"List Sentry projects","openapi":"api-reference/openapi.json GET /sentry/projects","href":"/api-reference/endpoints/sentry/get-sentry-projects"},{"title":"Get Sentry status","openapi":"api-reference/openapi.json GET /sentry/status","href":"/api-reference/endpoints/sentry/get-sentry-status"}]},{"group":"Feedback","pages":[{"title":"Submit feedback","openapi":"api-reference/openapi.json POST /feedback","href":"/api-reference/endpoints/feedback/post-feedback"}]},{"group":"Notifications","pages":[{"title":"Get notification preferences","openapi":"api-reference/openapi.json GET /user/notification-preferences","href":"/api-reference/endpoints/notifications/get-user-notification-preferences"},{"title":"Update notification preferences","openapi":"api-reference/openapi.json PUT /user/notification-preferences","href":"/api-reference/endpoints/notifications/put-user-notification-preferences"},{"title":"List notifications","openapi":"api-reference/openapi.json GET /user/notifications","href":"/api-reference/endpoints/notifications/get-user-notifications"},{"title":"Count tasks waiting on you","openapi":"api-reference/openapi.json GET /user/waiting-task-count","href":"/api-reference/endpoints/notifications/get-user-waiting-task-count"},{"title":"Resolve task notifications","openapi":"api-reference/openapi.json POST /user/notifications/tasks/{taskID}/resolve","href":"/api-reference/endpoints/notifications/post-user-notifications-tasks-by-taskid-resolve"},{"title":"Dismiss notification","openapi":"api-reference/openapi.json POST /user/notifications/{id}/dismiss","href":"/api-reference/endpoints/notifications/post-user-notifications-by-id-dismiss"}]},{"group":"GitHub","pages":[{"title":"Get GitHub install URL","openapi":"api-reference/openapi.json GET /auth/github/url","href":"/api-reference/endpoints/github/get-auth-github-url"},{"title":"Get GitHub authorize URL","openapi":"api-reference/openapi.json GET /auth/github/authorize-url","href":"/api-reference/endpoints/github/get-auth-github-authorize-url"},{"title":"Claim GitHub installations from an OAuth code","openapi":"api-reference/openapi.json POST /github/installations/claim","href":"/api-reference/endpoints/github/post-github-installations-claim"},{"title":"Disconnect GitHub","openapi":"api-reference/openapi.json DELETE /github/connection","href":"/api-reference/endpoints/github/delete-github-connection"},{"title":"List GitHub repos","openapi":"api-reference/openapi.json GET /github/repos","href":"/api-reference/endpoints/github/get-github-repos"},{"title":"Get a GitHub repo","openapi":"api-reference/openapi.json GET /github/repos/{owner}/{repo}","href":"/api-reference/endpoints/github/get-github-repos-by-owner-by-repo"},{"title":"Get GitHub status","openapi":"api-reference/openapi.json GET /github/status","href":"/api-reference/endpoints/github/get-github-status"},{"title":"List GitHub repo branch suggestions","openapi":"api-reference/openapi.json GET /projects/{id}/github/branch-suggestions","href":"/api-reference/endpoints/github/get-projects-by-id-github-branch-suggestions"},{"title":"Export GitHub repo","openapi":"api-reference/openapi.json POST /projects/{id}/github/export","href":"/api-reference/endpoints/github/post-projects-by-id-github-export"},{"title":"Get GitHub git status","openapi":"api-reference/openapi.json GET /projects/{id}/github/git-status","href":"/api-reference/endpoints/github/get-projects-by-id-github-git-status"},{"title":"Import GitHub repo","openapi":"api-reference/openapi.json POST /projects/{id}/github/import","href":"/api-reference/endpoints/github/post-projects-by-id-github-import"},{"title":"Get GitHub project link","openapi":"api-reference/openapi.json GET /projects/{id}/github/link","href":"/api-reference/endpoints/github/get-projects-by-id-github-link"},{"title":"Fetch GitHub repo tree","openapi":"api-reference/openapi.json GET /projects/{id}/github/tree","href":"/api-reference/endpoints/github/get-projects-by-id-github-tree"}]},{"group":"Platform API Keys","pages":[{"title":"List platform API keys","openapi":"api-reference/openapi.json GET /user/platform-keys","href":"/api-reference/endpoints/platform-keys/get-user-platform-keys"},{"title":"Create platform API key","openapi":"api-reference/openapi.json POST /user/platform-keys","href":"/api-reference/endpoints/platform-keys/post-user-platform-keys"},{"title":"Revoke platform API key","openapi":"api-reference/openapi.json DELETE /user/platform-keys/{id}","href":"/api-reference/endpoints/platform-keys/delete-user-platform-keys-by-id"}]},{"group":"User Settings","pages":[{"title":"Get user settings","openapi":"api-reference/openapi.json GET /user/settings","href":"/api-reference/endpoints/user-settings/get-user-settings"},{"title":"Update user settings","openapi":"api-reference/openapi.json PUT /user/settings","href":"/api-reference/endpoints/user-settings/put-user-settings"}]},{"group":"Billing","pages":[{"title":"Get billing catalog","openapi":"api-reference/openapi.json GET /billing/catalog","href":"/api-reference/endpoints/billing/get-billing-catalog"},{"title":"Get inference balance","openapi":"api-reference/openapi.json GET /billing/inference-balance","href":"/api-reference/endpoints/billing/get-billing-inference-balance"},{"title":"Create billing checkout session","openapi":"api-reference/openapi.json POST /billing/checkout-sessions","href":"/api-reference/endpoints/billing/post-billing-checkout-sessions"},{"title":"Bind a store transaction to a purchase intent","openapi":"api-reference/openapi.json POST /billing/checkout-sessions/{checkoutSessionID}/transaction","href":"/api-reference/endpoints/billing/post-billing-checkout-sessions-by-checkoutsessionid-transaction"},{"title":"Get billing checkout session","openapi":"api-reference/openapi.json GET /billing/checkout-sessions/{lookup}","href":"/api-reference/endpoints/billing/get-billing-checkout-sessions-by-lookup"},{"title":"List billing credit packs","openapi":"api-reference/openapi.json GET /billing/credit-packs","href":"/api-reference/endpoints/billing/get-billing-credit-packs"},{"title":"Create billing portal session","openapi":"api-reference/openapi.json POST /billing/portal-sessions","href":"/api-reference/endpoints/billing/post-billing-portal-sessions"},{"title":"List the caller's unassigned store purchases","openapi":"api-reference/openapi.json GET /billing/store/unassigned-purchases","href":"/api-reference/endpoints/billing/get-billing-store-unassigned-purchases"},{"title":"Claim an unassigned store purchase into an org","openapi":"api-reference/openapi.json POST /billing/store/unassigned-purchases/{transactionID}/claim","href":"/api-reference/endpoints/billing/post-billing-store-unassigned-purchases-by-transactionid-claim"},{"title":"List billing warm slots","openapi":"api-reference/openapi.json GET /billing/slots","href":"/api-reference/endpoints/billing/get-billing-slots"},{"title":"Assign a project to a billing warm slot","openapi":"api-reference/openapi.json POST /billing/slots","href":"/api-reference/endpoints/billing/post-billing-slots"},{"title":"Release a billing warm slot","openapi":"api-reference/openapi.json DELETE /billing/slots/{slotID}","href":"/api-reference/endpoints/billing/delete-billing-slots-by-slotid"},{"title":"Get billing subscription","openapi":"api-reference/openapi.json GET /billing/subscription","href":"/api-reference/endpoints/billing/get-billing-subscription"}]},{"group":"Linear","pages":[{"title":"Get Linear install URL","openapi":"api-reference/openapi.json GET /auth/linear/url","href":"/api-reference/endpoints/linear/get-auth-linear-url"},{"title":"Disconnect Linear","openapi":"api-reference/openapi.json DELETE /linear/connection","href":"/api-reference/endpoints/linear/delete-linear-connection"},{"title":"Update Linear connection","openapi":"api-reference/openapi.json PATCH /linear/connection","href":"/api-reference/endpoints/linear/patch-linear-connection"},{"title":"List Linear projects","openapi":"api-reference/openapi.json GET /linear/projects","href":"/api-reference/endpoints/linear/get-linear-projects"},{"title":"List Linear routes","openapi":"api-reference/openapi.json GET /linear/routes","href":"/api-reference/endpoints/linear/get-linear-routes"},{"title":"Create Linear route","openapi":"api-reference/openapi.json POST /linear/routes","href":"/api-reference/endpoints/linear/post-linear-routes"},{"title":"Update Linear route","openapi":"api-reference/openapi.json PATCH /linear/routes/{routeId}","href":"/api-reference/endpoints/linear/patch-linear-routes-by-routeid"},{"title":"Delete Linear route","openapi":"api-reference/openapi.json DELETE /linear/routes/{routeId}","href":"/api-reference/endpoints/linear/delete-linear-routes-by-routeid"},{"title":"Get Linear status","openapi":"api-reference/openapi.json GET /linear/status","href":"/api-reference/endpoints/linear/get-linear-status"},{"title":"List Linear teams","openapi":"api-reference/openapi.json GET /linear/teams","href":"/api-reference/endpoints/linear/get-linear-teams"}]},{"group":"WebSocket","pages":[{"title":"WebSocket Overview","href":"/api-reference/websocket/overview"},{"title":"Terminal Channel","href":"/api-reference/websocket/terminal"},{"title":"Files Channel","href":"/api-reference/websocket/files"},{"title":"Agent Channel","href":"/api-reference/websocket/agent"},{"title":"Ports Channel","href":"/api-reference/websocket/ports"},{"title":"Git Channel","href":"/api-reference/websocket/git"}]}]},{"tab":"CLI Reference","pages":[{"title":"CLI Reference","href":"/cli/overview"}]}]},"title":"Change a plugin's organization-wide defaults - Aether","buildId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","deploymentId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Bbp7I60D.js","utils-C3RIvJha.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DqD-vLt8.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B31Loprg.js","snippetPresets-DKpk-b8t.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-Cj65AhOR.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BXtn5gcC.js","shallow-RY2b03Cp.js","getApiPlaygroundDisplay-B0jeiPk3.js","CodeSnippet-CYgBjjwn.js","CodeSnippets-DOngDrYB.js","Page-n7I5XbKb.js","getPastedJson-DRQbJx-T.js","icon-CQiQCicY.js","MethodPill-BKTLdNtu.js","DuplicateIcon-B9jpAdat.js","createIcon-DCddRrXv.js","DynamicMarkdown-a8hUKrw6.js","SectionHeading-eECVV2eH.js","axios-vUo_bRtp.js","Markdown--GF7ZIpf.js","clsx-DZLdJUrt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-2LoAhjKH.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Zwc0ZncM.js"]}