Enables the plugin as one unit, or sets the project’s own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin’s default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.
{"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":"6addfa6e8dc007203f176071","collectionId":"2a009af6-1ff4-46b6-83a4-3989da04ee75","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6addfa6e8dc007203f176071"},"entitlements":{},"buildId":"6addfacfd2e4fef472e034f4","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/put-projects-by-projectid-plugins-by-pluginid","slug":"/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid","pageMetadata":{"title":"Enable a plugin on a project","openapi":"api-reference/openapi.json PUT /projects/{projectID}/plugins/{pluginID}","description":"Enables the plugin as one unit, or sets the project's own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin's default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.","href":"/api-reference/endpoints/plugins/put-projects-by-projectid-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: \"Enables the plugin as one unit, or sets the project’s own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin’s default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.\"\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":"Enable a plugin on a project","openapi":"api-reference/openapi.json PUT /projects/{projectID}/plugins/{pluginID}","description":"Enables the plugin as one unit, or sets the project's own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin's default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.","href":"/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Enables the plugin as one unit, or sets the project's own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin's default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.","operationId":"enableProjectPlugin","parameters":["d3aa3a81-9bda-417d-b8a6-1df3120aa0d6","301d1279-3a14-4af7-a46d-d4be2a98fb14"],"requestBody":"2cd5c0a3-84c3-4e5e-aefa-9b979a1416c5","responses":{"200":"0b165a54-2122-47e3-b6ec-c3fa6bdf514e","400":"4541e3d4-df30-4c8c-bde4-55b604d1e1ad","401":"ea5df082-ed7f-4c02-8b28-eb92c51d6a17","403":"7ef980f2-3ae8-4c40-9d0a-1e08959b650c","404":"5bd057d4-7823-4654-b9ef-05db03fdcef8","409":"d5ef6d97-b426-48aa-a60f-2f36499e1408","422":"66a8d9b1-9510-4524-ac57-2280974d82dd","500":"25bfc5ed-7f83-4205-8a7f-007eb2f43a85","503":"a211dcbc-443b-4f31-b285-d6e31277bd4d"},"summary":"Enable a plugin on a project","tags":["plugins"],"x-aether-label":"plugins.enableProject","x-aether-path-ids":{"pluginID":"-"},"method":"put","type":"path","servers":["1e6fa16f-04c3-4c35-b660-15616e3446f5"],"security":["39293ae3-d6e2-4dda-a889-3d56e4ae7c55"],"path":"/projects/{projectID}/plugins/{pluginID}","baseUrlOptions":["https://api.runaether.dev"],"title":"Enable a plugin on a project","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"d3aa3a81-9bda-417d-b8a6-1df3120aa0d6":{"in":"path","name":"projectID","required":true,"schema":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}},"301d1279-3a14-4af7-a46d-d4be2a98fb14":{"in":"path","name":"pluginID","required":true,"schema":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}}},"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"credential_policy":{"oneOf":[{"description":"The project's own credential policy. Omitted or null: the plugin's default_credential_policy, which an enabled project returns to.","enum":["creator","org"],"type":"string","uniqueKey":"credential_policy.oneOf.0","typeLabel":"enum\u003cstring>"},{"description":"The project's own credential policy. Omitted or null: the plugin's default_credential_policy, which an enabled project returns to.","enum":["creator","org"],"type":"null","uniqueKey":"credential_policy.oneOf.1","typeLabel":"null"}],"uniqueKey":"credential_policy","typeLabel":"enum\u003cstring> | null"}},"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{}}},"exampleType":"generated"}},"required":true,"exampleType":"generated"},"responses":{"0b165a54-2122-47e3-b6ec-c3fa6bdf514e":{"content":{"application/json":{"schema":{"additionalProperties":false,"properties":{"project_plugin":{"additionalProperties":false,"properties":{"credential_policy":{"oneOf":[{"enum":["creator","org"],"type":"string","isRequired":true,"uniqueKey":"project_plugin.credential_policy.oneOf.0","typeLabel":"enum\u003cstring>"},{"enum":["creator","org"],"type":"null","isRequired":true,"uniqueKey":"project_plugin.credential_policy.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"project_plugin.credential_policy","typeLabel":"enum\u003cstring> | null"},"plugin_id":{"format":"uuid","type":"string","isRequired":true,"uniqueKey":"project_plugin.plugin_id","typeLabel":"string\u003cuuid>"}},"required":["plugin_id","credential_policy"],"type":"object","isRequired":true,"uniqueKey":"project_plugin","typeLabel":"object"}},"required":["project_plugin"],"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"project_plugin":{"credential_policy":"creator","plugin_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"}}}},"exampleType":"generated"}},"description":"OK","exampleType":"generated"},"4541e3d4-df30-4c8c-bde4-55b604d1e1ad":{"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"},"ea5df082-ed7f-4c02-8b28-eb92c51d6a17":{"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"},"7ef980f2-3ae8-4c40-9d0a-1e08959b650c":{"content":{"application/json":{"schema":{"oneOf":[{"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.0.code","typeLabel":"enum\u003cstring>"},"error":{"minLength":1,"type":"string","isRequired":true,"uniqueKey":"oneOf.0.error","typeLabel":"string"}},"additionalProperties":false,"uniqueKey":"oneOf.0","typeLabel":"object"},{"type":"object","required":["error","code"],"properties":{"code":{"enum":["control_forbidden"],"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"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"code":"org_membership_required","error":"\u003cstring>"}}},"exampleType":"generated"}},"description":"Forbidden","exampleType":"generated"},"5bd057d4-7823-4654-b9ef-05db03fdcef8":{"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"},"d5ef6d97-b426-48aa-a60f-2f36499e1408":{"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"},"66a8d9b1-9510-4524-ac57-2280974d82dd":{"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"},"25bfc5ed-7f83-4205-8a7f-007eb2f43a85":{"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"},"a211dcbc-443b-4f31-b285-d6e31277bd4d":{"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":{"39293ae3-d6e2-4dda-a889-3d56e4ae7c55":{"bearerAuth":{"bearerFormat":"JWT","scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"1e6fa16f-04c3-4c35-b660-15616e3446f5":{"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":"Enable a plugin on a project - Aether","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-25T11:38:47.727Z","originalFileLocation":"api-reference/endpoints/plugins/put-projects-by-projectid-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=\"Enables the plugin as one unit, or sets the project\u0026#x27;s own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin\u0026#x27;s default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.\">\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=\"Enable a plugin on a project - Aether\">\u003cmeta data-mint-head property=\"og:description\" content=\"Enables the plugin as one unit, or sets the project\u0026#x27;s own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin\u0026#x27;s default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.\">\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/put-projects-by-projectid-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=Enable+a+plugin+on+a+project\u0026amp;description=Enables+the+plugin+as+one+unit%2C+or+sets+the+project%27s+own+credential+policy%2C+which+applies+to+every+authenticated+MCP+server+of+the+plugin%3B+its+servers+are+neve\u0026amp;theme=45bbe8413141f5c0b81fcea8\u0026amp;signature=6ed49e71bebffd1e6c14335f2cba2e91cb9d60c5750929761b000646581dbd4a\">\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=\"Enable a plugin on a project - Aether\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Enables the plugin as one unit, or sets the project\u0026#x27;s own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin\u0026#x27;s default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://aether-c4587800.mintlify.app/_mintlify/api/og/v2?division=Plugins\u0026amp;title=Enable+a+plugin+on+a+project\u0026amp;description=Enables+the+plugin+as+one+unit%2C+or+sets+the+project%27s+own+credential+policy%2C+which+applies+to+every+authenticated+MCP+server+of+the+plugin%3B+its+servers+are+neve\u0026amp;theme=45bbe8413141f5c0b81fcea8\u0026amp;signature=6ed49e71bebffd1e6c14335f2cba2e91cb9d60c5750929761b000646581dbd4a\">\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/put-projects-by-projectid-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/put-projects-by-projectid-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/put-projects-by-projectid-plugins-by-pluginid#webpage\",\"url\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid\",\"name\":\"Enable a plugin on a project\",\"description\":\"Enables the plugin as one unit, or sets the project's own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin's default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.\",\"dateModified\":\"2026-10-25T11:38:47.727Z\",\"isPartOf\":{\"@id\":\"https://docs.runaether.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Plugins\",\"item\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/get-orgs-by-orgid-plugin-marketplaces\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Enable a plugin on a project\",\"item\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid#apireference\",\"headline\":\"Enable a plugin on a project\",\"name\":\"Enable a plugin on a project\",\"description\":\"Enables the plugin as one unit, or sets the project's own credential policy, which applies to every authenticated MCP server of the plugin; its servers are never enabled by themselves. Without one (omitted or null) the project takes the plugin's default_credential_policy. A policy for a plugin none of whose servers authenticates is refused with mcp_credential_policy_not_applicable; the org policy is refused unless the organization has its own connection to every authenticated server of the plugin. A plugin the organization switched off (enabled_by_default false) is refused with plugin_switched_off until it is switched on again.\",\"url\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid\",\"mainEntityOfPage\":{\"@id\":\"https://docs.runaether.dev/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid#webpage\"},\"dateModified\":\"2026-10-25T11:38:47.727Z\",\"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 /orgs/{orgID}/projects","href":"/api-reference/endpoints/projects/get-orgs-by-orgid-projects"},{"title":"Create project","openapi":"api-reference/openapi.json POST /orgs/{orgID}/projects","href":"/api-reference/endpoints/projects/post-orgs-by-orgid-projects"},{"title":"Get project","openapi":"api-reference/openapi.json GET /projects/{projectID}","href":"/api-reference/endpoints/projects/get-projects-by-projectid"},{"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/{projectID}","href":"/api-reference/endpoints/projects/patch-projects-by-projectid"}]},{"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 /orgs/{orgID}/workspaces","href":"/api-reference/endpoints/workspaces/get-orgs-by-orgid-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 /orgs/{orgID}/tasks","href":"/api-reference/endpoints/tasks/get-orgs-by-orgid-tasks"},{"title":"Search conversations","openapi":"api-reference/openapi.json GET /orgs/{orgID}/tasks/search","href":"/api-reference/endpoints/tasks/get-orgs-by-orgid-tasks-search"},{"title":"Create a task","openapi":"api-reference/openapi.json POST /orgs/{orgID}/tasks","href":"/api-reference/endpoints/tasks/post-orgs-by-orgid-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 /orgs/{orgID}/tasks/teleport","href":"/api-reference/endpoints/tasks/post-orgs-by-orgid-tasks-teleport"}]},{"group":"Environment Variables","pages":[{"title":"List project environment variables","openapi":"api-reference/openapi.json GET /projects/{projectID}/env-vars","href":"/api-reference/endpoints/env-vars/get-projects-by-projectid-env-vars"},{"title":"Import project environment variables","openapi":"api-reference/openapi.json POST /projects/{projectID}/env-vars/import","href":"/api-reference/endpoints/env-vars/post-projects-by-projectid-env-vars-import"},{"title":"Get project environment variable","openapi":"api-reference/openapi.json GET /projects/{projectID}/env-vars/{key}","href":"/api-reference/endpoints/env-vars/get-projects-by-projectid-env-vars-by-key"},{"title":"Set project environment variable","openapi":"api-reference/openapi.json PUT /projects/{projectID}/env-vars/{key}","href":"/api-reference/endpoints/env-vars/put-projects-by-projectid-env-vars-by-key"},{"title":"Delete project environment variable","openapi":"api-reference/openapi.json DELETE /projects/{projectID}/env-vars/{key}","href":"/api-reference/endpoints/env-vars/delete-projects-by-projectid-env-vars-by-key"}]},{"group":"Secret Files","pages":[{"title":"List project secret files","openapi":"api-reference/openapi.json GET /projects/{projectID}/secret-files","href":"/api-reference/endpoints/secret-files/get-projects-by-projectid-secret-files"},{"title":"Upload project secret file","openapi":"api-reference/openapi.json POST /projects/{projectID}/secret-files","href":"/api-reference/endpoints/secret-files/post-projects-by-projectid-secret-files"},{"title":"Bulk upload project secret files","openapi":"api-reference/openapi.json POST /projects/{projectID}/secret-files/bulk","href":"/api-reference/endpoints/secret-files/post-projects-by-projectid-secret-files-bulk"},{"title":"Get project secret file","openapi":"api-reference/openapi.json GET /projects/{projectID}/secret-files/{fileKey}","href":"/api-reference/endpoints/secret-files/get-projects-by-projectid-secret-files-by-filekey"},{"title":"Delete project secret file","openapi":"api-reference/openapi.json DELETE /projects/{projectID}/secret-files/{fileKey}","href":"/api-reference/endpoints/secret-files/delete-projects-by-projectid-secret-files-by-filekey"}]},{"group":"Skills","pages":[{"title":"List project skills","openapi":"api-reference/openapi.json GET /projects/{projectID}/skills","href":"/api-reference/endpoints/skills/get-projects-by-projectid-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 /orgs/{orgID}/automations","href":"/api-reference/endpoints/automations/get-orgs-by-orgid-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 /orgs/{orgID}/agent-profiles","href":"/api-reference/endpoints/agent-profiles/get-orgs-by-orgid-agent-profiles"},{"title":"Create agent profile","openapi":"api-reference/openapi.json POST /orgs/{orgID}/agent-profiles","href":"/api-reference/endpoints/agent-profiles/post-orgs-by-orgid-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 /orgs/{orgID}/mcp-servers","href":"/api-reference/endpoints/mcp-servers/get-orgs-by-orgid-mcp-servers"},{"title":"Probe how a remote MCP server authenticates","openapi":"api-reference/openapi.json POST /orgs/{orgID}/mcp-servers/probe","href":"/api-reference/endpoints/mcp-servers/post-orgs-by-orgid-mcp-servers-probe"},{"title":"Add an MCP server to the organization's catalog","openapi":"api-reference/openapi.json POST /orgs/{orgID}/mcp-servers","href":"/api-reference/endpoints/mcp-servers/post-orgs-by-orgid-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/{projectID}/mcp-servers","href":"/api-reference/endpoints/mcp-servers/get-projects-by-projectid-mcp-servers"},{"title":"Check whether your tasks in a project can start","openapi":"api-reference/openapi.json GET /projects/{projectID}/mcp-server-readiness","href":"/api-reference/endpoints/mcp-servers/get-projects-by-projectid-mcp-server-readiness"},{"title":"Enable an MCP server on a project","openapi":"api-reference/openapi.json PUT /projects/{projectID}/mcp-servers/{mcpServerID}","href":"/api-reference/endpoints/mcp-servers/put-projects-by-projectid-mcp-servers-by-mcpserverid"},{"title":"Disable an MCP server on a project","openapi":"api-reference/openapi.json DELETE /projects/{projectID}/mcp-servers/{mcpServerID}","href":"/api-reference/endpoints/mcp-servers/delete-projects-by-projectid-mcp-servers-by-mcpserverid"},{"title":"List your MCP server connections and the organization's","openapi":"api-reference/openapi.json GET /orgs/{orgID}/mcp-server-connections","href":"/api-reference/endpoints/mcp-servers/get-orgs-by-orgid-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 /orgs/{orgID}/mcp-oauth-apps","href":"/api-reference/endpoints/mcp-servers/get-orgs-by-orgid-mcp-oauth-apps"},{"title":"Save the organization's OAuth app for an issuer","openapi":"api-reference/openapi.json PUT /orgs/{orgID}/mcp-oauth-apps","href":"/api-reference/endpoints/mcp-servers/put-orgs-by-orgid-mcp-oauth-apps"},{"title":"Delete the organization's OAuth app for an issuer","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/mcp-oauth-apps","href":"/api-reference/endpoints/mcp-servers/delete-orgs-by-orgid-mcp-oauth-apps"}]},{"group":"Plugins","pages":[{"title":"List the official plugin marketplaces","openapi":"api-reference/openapi.json GET /orgs/{orgID}/plugin-marketplaces","href":"/api-reference/endpoints/plugins/get-orgs-by-orgid-plugin-marketplaces"},{"title":"List the plugins a marketplace offers","openapi":"api-reference/openapi.json POST /orgs/{orgID}/plugin-marketplaces/browse","href":"/api-reference/endpoints/plugins/post-orgs-by-orgid-plugin-marketplaces-browse"},{"title":"List the organization's plugins","openapi":"api-reference/openapi.json GET /orgs/{orgID}/plugins","href":"/api-reference/endpoints/plugins/get-orgs-by-orgid-plugins"},{"title":"Install a plugin in the organization","openapi":"api-reference/openapi.json POST /orgs/{orgID}/plugins","href":"/api-reference/endpoints/plugins/post-orgs-by-orgid-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","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}","href":"/api-reference/endpoints/plugins/delete-plugins-by-pluginid"},{"title":"List the plugins a project enables","openapi":"api-reference/openapi.json GET /projects/{projectID}/plugins","description":null,"href":"/api-reference/endpoints/plugins/get-projects-by-projectid-plugins"},{"title":"Enable a plugin on a project","openapi":"api-reference/openapi.json PUT /projects/{projectID}/plugins/{pluginID}","href":"/api-reference/endpoints/plugins/put-projects-by-projectid-plugins-by-pluginid"},{"title":"Disable a plugin on a project","openapi":"api-reference/openapi.json DELETE /projects/{projectID}/plugins/{pluginID}","description":"Excludes the plugin from the project: later installs, updates of the plugin and edits of the project leave it excluded until the project enables it again.","href":"/api-reference/endpoints/plugins/delete-projects-by-projectid-plugins-by-pluginid"},{"title":"List Aether's integration directory","openapi":"api-reference/openapi.json GET /orgs/{orgID}/integration-directory","href":"/api-reference/endpoints/plugins/get-orgs-by-orgid-integration-directory"},{"title":"Search integrations by name","openapi":"api-reference/openapi.json GET /orgs/{orgID}/integration-search","href":"/api-reference/endpoints/plugins/get-orgs-by-orgid-integration-search"},{"title":"Search the MCP registry","openapi":"api-reference/openapi.json GET /orgs/{orgID}/integration-search/registry","href":"/api-reference/endpoints/plugins/get-orgs-by-orgid-integration-search-registry"},{"title":"Install an integration of Aether's integration directory","openapi":"api-reference/openapi.json POST /orgs/{orgID}/integration-directory/{key}/install","href":"/api-reference/endpoints/plugins/post-orgs-by-orgid-integration-directory-by-key-install"}]},{"group":"Usage","pages":[{"title":"Get usage summary","openapi":"api-reference/openapi.json GET /orgs/{orgID}/usage/summary","href":"/api-reference/endpoints/usage/get-orgs-by-orgid-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 /orgs/{orgID}/pr-reviews","href":"/api-reference/endpoints/pr-reviews/get-orgs-by-orgid-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/{connectionID}/claude-plan","href":"/api-reference/endpoints/connections/put-connections-by-connectionid-claude-plan"},{"title":"Reconnect a connection: Anthropic API key","openapi":"api-reference/openapi.json PUT /connections/{connectionID}/anthropic-api-key","href":"/api-reference/endpoints/connections/put-connections-by-connectionid-anthropic-api-key"},{"title":"Reconnect a connection: OpenAI API key","openapi":"api-reference/openapi.json PUT /connections/{connectionID}/openai-api-key","href":"/api-reference/endpoints/connections/put-connections-by-connectionid-openai-api-key"},{"title":"Reconnect a connection: OpenRouter API key","openapi":"api-reference/openapi.json PUT /connections/{connectionID}/openrouter-api-key","href":"/api-reference/endpoints/connections/put-connections-by-connectionid-openrouter-api-key"},{"title":"Reconnect a connection: OpenCode auth file","openapi":"api-reference/openapi.json PUT /connections/{connectionID}/opencode-auth-file","href":"/api-reference/endpoints/connections/put-connections-by-connectionid-opencode-auth-file"},{"title":"Rename a connection","openapi":"api-reference/openapi.json PATCH /connections/{connectionID}","href":"/api-reference/endpoints/connections/patch-connections-by-connectionid"},{"title":"Disconnect a connection","openapi":"api-reference/openapi.json DELETE /connections/{connectionID}","href":"/api-reference/endpoints/connections/delete-connections-by-connectionid"},{"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 /orgs/{orgID}/auth/slack/url","href":"/api-reference/endpoints/slack/get-orgs-by-orgid-auth-slack-url"},{"title":"List Slack channels","openapi":"api-reference/openapi.json GET /orgs/{orgID}/slack/channels","href":"/api-reference/endpoints/slack/get-orgs-by-orgid-slack-channels"},{"title":"Disconnect Slack","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/slack/connection","href":"/api-reference/endpoints/slack/delete-orgs-by-orgid-slack-connection"},{"title":"Update Slack connection","openapi":"api-reference/openapi.json PATCH /orgs/{orgID}/slack/connection","href":"/api-reference/endpoints/slack/patch-orgs-by-orgid-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 /orgs/{orgID}/slack/identity/link","href":"/api-reference/endpoints/slack/delete-orgs-by-orgid-slack-identity-link"},{"title":"Get whether Slack must reconnect","openapi":"api-reference/openapi.json GET /orgs/{orgID}/slack/reconnect","href":"/api-reference/endpoints/slack/get-orgs-by-orgid-slack-reconnect"},{"title":"List Slack routes","openapi":"api-reference/openapi.json GET /orgs/{orgID}/slack/routes","href":"/api-reference/endpoints/slack/get-orgs-by-orgid-slack-routes"},{"title":"Create Slack route","openapi":"api-reference/openapi.json POST /orgs/{orgID}/slack/routes","href":"/api-reference/endpoints/slack/post-orgs-by-orgid-slack-routes"},{"title":"Update Slack route","openapi":"api-reference/openapi.json PATCH /orgs/{orgID}/slack/routes/{routeID}","href":"/api-reference/endpoints/slack/patch-orgs-by-orgid-slack-routes-by-routeid"},{"title":"Delete Slack route","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/slack/routes/{routeID}","href":"/api-reference/endpoints/slack/delete-orgs-by-orgid-slack-routes-by-routeid"},{"title":"Get Slack status","openapi":"api-reference/openapi.json GET /orgs/{orgID}/slack/status","href":"/api-reference/endpoints/slack/get-orgs-by-orgid-slack-status"}]},{"group":"Sentry","pages":[{"title":"Get Sentry install URL","openapi":"api-reference/openapi.json GET /orgs/{orgID}/auth/sentry/url","href":"/api-reference/endpoints/sentry/get-orgs-by-orgid-auth-sentry-url"},{"title":"Disconnect Sentry","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/sentry/connection","href":"/api-reference/endpoints/sentry/delete-orgs-by-orgid-sentry-connection"},{"title":"Update Sentry connection","openapi":"api-reference/openapi.json PATCH /orgs/{orgID}/sentry/connection","href":"/api-reference/endpoints/sentry/patch-orgs-by-orgid-sentry-connection"},{"title":"List Sentry project links","openapi":"api-reference/openapi.json GET /orgs/{orgID}/sentry/links","href":"/api-reference/endpoints/sentry/get-orgs-by-orgid-sentry-links"},{"title":"Create Sentry project link","openapi":"api-reference/openapi.json POST /orgs/{orgID}/sentry/links","href":"/api-reference/endpoints/sentry/post-orgs-by-orgid-sentry-links"},{"title":"Update Sentry project link","openapi":"api-reference/openapi.json PATCH /orgs/{orgID}/sentry/links/{linkID}","href":"/api-reference/endpoints/sentry/patch-orgs-by-orgid-sentry-links-by-linkid"},{"title":"Delete Sentry project link","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/sentry/links/{linkID}","href":"/api-reference/endpoints/sentry/delete-orgs-by-orgid-sentry-links-by-linkid"},{"title":"List Sentry projects","openapi":"api-reference/openapi.json GET /orgs/{orgID}/sentry/projects","href":"/api-reference/endpoints/sentry/get-orgs-by-orgid-sentry-projects"},{"title":"Get Sentry status","openapi":"api-reference/openapi.json GET /orgs/{orgID}/sentry/status","href":"/api-reference/endpoints/sentry/get-orgs-by-orgid-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/{notificationID}/dismiss","href":"/api-reference/endpoints/notifications/post-user-notifications-by-notificationid-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/{projectID}/github/branch-suggestions","href":"/api-reference/endpoints/github/get-projects-by-projectid-github-branch-suggestions"},{"title":"Export GitHub repo","openapi":"api-reference/openapi.json POST /projects/{projectID}/github/export","href":"/api-reference/endpoints/github/post-projects-by-projectid-github-export"},{"title":"Get GitHub git status","openapi":"api-reference/openapi.json GET /projects/{projectID}/github/git-status","href":"/api-reference/endpoints/github/get-projects-by-projectid-github-git-status"},{"title":"Import GitHub repo","openapi":"api-reference/openapi.json POST /projects/{projectID}/github/import","href":"/api-reference/endpoints/github/post-projects-by-projectid-github-import"},{"title":"Get GitHub project link","openapi":"api-reference/openapi.json GET /projects/{projectID}/github/link","href":"/api-reference/endpoints/github/get-projects-by-projectid-github-link"},{"title":"Fetch GitHub repo tree","openapi":"api-reference/openapi.json GET /projects/{projectID}/github/tree","href":"/api-reference/endpoints/github/get-projects-by-projectid-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/{platformKeyID}","href":"/api-reference/endpoints/platform-keys/delete-user-platform-keys-by-platformkeyid"}]},{"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 /orgs/{orgID}/billing/catalog","href":"/api-reference/endpoints/billing/get-orgs-by-orgid-billing-catalog"},{"title":"Get inference balance","openapi":"api-reference/openapi.json GET /orgs/{orgID}/billing/inference-balance","href":"/api-reference/endpoints/billing/get-orgs-by-orgid-billing-inference-balance"},{"title":"Create billing checkout session","openapi":"api-reference/openapi.json POST /orgs/{orgID}/billing/checkout-sessions","href":"/api-reference/endpoints/billing/post-orgs-by-orgid-billing-checkout-sessions"},{"title":"Bind a store transaction to a purchase intent","openapi":"api-reference/openapi.json POST /orgs/{orgID}/billing/checkout-sessions/{checkoutSessionID}/transaction","href":"/api-reference/endpoints/billing/post-orgs-by-orgid-billing-checkout-sessions-by-checkoutsessionid-transaction"},{"title":"Get billing checkout session","openapi":"api-reference/openapi.json GET /orgs/{orgID}/billing/checkout-sessions/{lookup}","href":"/api-reference/endpoints/billing/get-orgs-by-orgid-billing-checkout-sessions-by-lookup"},{"title":"List billing credit packs","openapi":"api-reference/openapi.json GET /orgs/{orgID}/billing/credit-packs","href":"/api-reference/endpoints/billing/get-orgs-by-orgid-billing-credit-packs"},{"title":"Create billing portal session","openapi":"api-reference/openapi.json POST /orgs/{orgID}/billing/portal-sessions","href":"/api-reference/endpoints/billing/post-orgs-by-orgid-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 /orgs/{orgID}/billing/slots","href":"/api-reference/endpoints/billing/get-orgs-by-orgid-billing-slots"},{"title":"Assign a project to a billing warm slot","openapi":"api-reference/openapi.json POST /orgs/{orgID}/billing/slots","href":"/api-reference/endpoints/billing/post-orgs-by-orgid-billing-slots"},{"title":"Release a billing warm slot","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/billing/slots/{slotID}","href":"/api-reference/endpoints/billing/delete-orgs-by-orgid-billing-slots-by-slotid"},{"title":"Get billing subscription","openapi":"api-reference/openapi.json GET /orgs/{orgID}/billing/subscription","href":"/api-reference/endpoints/billing/get-orgs-by-orgid-billing-subscription"}]},{"group":"Linear","pages":[{"title":"Get Linear install URL","openapi":"api-reference/openapi.json GET /orgs/{orgID}/auth/linear/url","href":"/api-reference/endpoints/linear/get-orgs-by-orgid-auth-linear-url"},{"title":"Disconnect Linear","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/linear/connection","href":"/api-reference/endpoints/linear/delete-orgs-by-orgid-linear-connection"},{"title":"Update Linear connection","openapi":"api-reference/openapi.json PATCH /orgs/{orgID}/linear/connection","href":"/api-reference/endpoints/linear/patch-orgs-by-orgid-linear-connection"},{"title":"List Linear projects","openapi":"api-reference/openapi.json GET /orgs/{orgID}/linear/projects","href":"/api-reference/endpoints/linear/get-orgs-by-orgid-linear-projects"},{"title":"List Linear routes","openapi":"api-reference/openapi.json GET /orgs/{orgID}/linear/routes","href":"/api-reference/endpoints/linear/get-orgs-by-orgid-linear-routes"},{"title":"Create Linear route","openapi":"api-reference/openapi.json POST /orgs/{orgID}/linear/routes","href":"/api-reference/endpoints/linear/post-orgs-by-orgid-linear-routes"},{"title":"Update Linear route","openapi":"api-reference/openapi.json PATCH /orgs/{orgID}/linear/routes/{routeID}","href":"/api-reference/endpoints/linear/patch-orgs-by-orgid-linear-routes-by-routeid"},{"title":"Delete Linear route","openapi":"api-reference/openapi.json DELETE /orgs/{orgID}/linear/routes/{routeID}","href":"/api-reference/endpoints/linear/delete-orgs-by-orgid-linear-routes-by-routeid"},{"title":"Get Linear status","openapi":"api-reference/openapi.json GET /orgs/{orgID}/linear/status","href":"/api-reference/endpoints/linear/get-orgs-by-orgid-linear-status"},{"title":"List Linear teams","openapi":"api-reference/openapi.json GET /orgs/{orgID}/linear/teams","href":"/api-reference/endpoints/linear/get-orgs-by-orgid-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":"Enable a plugin on a project - 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"]}