Slack. Web. Apps. Manifest
(SlackKit v0.25.0-alpha.0)
View Source
Summary
Functions
Create an app from an app manifest.
Permanently deletes an app created through app manifests
Export an app manifest from an existing app
Update an app from an app manifest
Validate an app manifest
Functions
Create an app from an app manifest.
Required Params
manifest- A JSON app manifest encoded as a string. This manifest must use a valid app manifest schema - read our guide to creating one.
Optional Params
team_id- When called with an org token, which specific team to create app on
Errors the API can return:
unknown_method- Unknown methodtoken_revoked- Authentication token is for a deleted user or workspace or the app has been removed when using ausertoken.failed_datastore_operation- Failed while managing datastore infrastructureinvalid_manifest- The provided manifest file does not validate against schema. Consult the additional errors field to locate specific issues.invalid_arg_name- The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than_. If you get this error, it is typically an indication that you have made a very malformed API call.two_factor_setup_required- Two factor setup is required.invalid_team_id- The provided team ID is not validmanaged_app_limit_reached- The manager app has reached the maximum number of managed apps it can create.invalid_form_data- The method was called via aPOSTrequest withContent-Typeapplication/x-www-form-urlencodedormultipart/form-data, but the form data was either missing or syntactically invalid.invalid_post_type- The method was called via aPOSTrequest, but the specifiedContent-Typewas invalid. Valid types are:application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.dynamic_client_registration_invalid_redirect_uri- The remote server rejected Slack's redirect URI during Dynamic Client Registration. The server must allowlist https://oauth2.slack.com/external/auth/callback as a valid redirect URI.fatal_error- The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.deprecated_endpoint- The endpoint has been deprecated.failed_creating_app- Failed to create the app modelsocket_mode_not_enabled- Socket mode is not enabled in manifest.ratelimited- Too many calls in succession to create endpoint during a short period of time.ekm_access_denied- Administrators have suspended the ability to post a message.service_unavailable- The service is temporarily unavailableinvalid_app- An app created from the provided manifest would not be valid.team_access_not_granted- The token used is not granted the specific workspace access required to complete this request.dynamic_client_registration_invalid_response- The MCP server returned an invalid response during Dynamic Client Registration.invalid_arguments- Invalid API arguments provided.dynamic_client_registration_rejected- The MCP server rejected the Dynamic Client Registration request.invalid_array_arg- The method was passed an array as an argument. Please only input valid strings.request_timeout- The method was called via aPOSTrequest, but thePOSTdata was either missing or truncated.account_inactive- Authentication token is for a deleted user or workspace when using abottoken.not_authed- No authentication token provided.internal_error- The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.enterprise_is_restricted- Org-level tokens are not allowed.no_permission- The workspace token used in this request does not have the permissions necessary to complete the request. Make sure your app is a member of the conversation it's attempting to post a message to.access_denied- Access to a resource specified in the request is denied.dynamic_client_registration_failed- Dynamic client registration failed for an MCP server that requires OAuth authentication.team_added_to_org- The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.failed_generating_app_token- App level token failed to generate.missing_scope- The token used is not granted the specific scope permissions required to complete this request.missing_post_type- The method was called via aPOSTrequest and included a data payload, but the request did not include aContent-Typeheader.accesslimited- Access to this method is limited on the current networkfailed_adding_collaborator- Failed writing a collaborator record for this new appoauth_metadata_not_found- Could not discover OAuth metadata for the MCP server. Ensure the server exposes a .well-known/oauth-authorization-server or .well-known/openid-configuration endpoint.dynamic_client_registration_not_supported- The MCP server's OAuth metadata does not include a registration endpoint. The server may not support Dynamic Client Registration.token_expired- Authentication token has expiredinvalid_charset- The method was called via aPOSTrequest, but thecharsetspecified in theContent-Typeheader was invalid. Valid charset names are:utf-8iso-8859-1.method_deprecated- The method has been deprecated.dynamic_client_registration_missing_oauth_endpoints- The MCP server's OAuth metadata is missing a required authorization or token endpoint.not_allowed_token_type- The token type used in this request is not allowed.not_in_team- Cannot create an app in a team that user is not a member oforg_login_required- The workspace is undergoing an enterprise migration and will not be available until migration is complete.invalid_auth- Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
Permanently deletes an app created through app manifests
Required Params
app_id- The ID of the app you want to delete.
Errors the API can return:
app_not_eligible- The specified app is not elgible for this API.token_revoked- Authentication token is for a deleted user or workspace or the app has been removed when using ausertoken.invalid_arg_name- The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than_. If you get this error, it is typically an indication that you have made a very malformed API call.two_factor_setup_required- Two factor setup is required.invalid_form_data- The method was called via aPOSTrequest withContent-Typeapplication/x-www-form-urlencodedormultipart/form-data, but the form data was either missing or syntactically invalid.invalid_post_type- The method was called via aPOSTrequest, but the specifiedContent-Typewas invalid. Valid types are:application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.fatal_error- The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.deprecated_endpoint- The endpoint has been deprecated.ratelimited- The request has been ratelimited. Refer to theRetry-Afterheader for when to retry the request.ekm_access_denied- Administrators have suspended the ability to post a message.service_unavailable- The service is temporarily unavailableteam_access_not_granted- The token used is not granted the specific workspace access required to complete this request.invalid_arguments- The method was called with invalid arguments.invalid_array_arg- The method was passed an array as an argument. Please only input valid strings.request_timeout- The method was called via aPOSTrequest, but thePOSTdata was either missing or truncated.account_inactive- Authentication token is for a deleted user or workspace when using abottoken.published_app_only- This action is only permitted for published app IDs.not_authed- No authentication token provided.internal_error- Internal error.enterprise_is_restricted- The method cannot be called from an Enterprise.no_permission- User described by the used token does not have proper permissions to take this action.app_not_found- The specified app was not found.access_denied- Access to a resource specified in the request is denied.team_added_to_org- The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.missing_scope- The token used is not granted the specific scope permissions required to complete this request.missing_post_type- The method was called via aPOSTrequest and included a data payload, but the request did not include aContent-Typeheader.accesslimited- Access to this method is limited on the current networktoken_expired- Authentication token has expiredapp_not_owned_by_manager_app- The app is not owned by the manager app.invalid_charset- The method was called via aPOSTrequest, but thecharsetspecified in theContent-Typeheader was invalid. Valid charset names are:utf-8iso-8859-1.method_deprecated- The method has been deprecated.invalid_app_id- The app ID passed in was invalid.not_allowed_token_type- The token type used in this request is not allowed.org_login_required- The workspace is undergoing an enterprise migration and will not be available until migration is complete.invalid_auth- Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
Export an app manifest from an existing app
Required Params
app_id- The ID of the app whose configuration you want to export as a manifest.
Errors the API can return:
unknown_method- This method does not exist.app_not_eligible- The specified app is not elgible for this API.token_revoked- Authentication token is for a deleted user or workspace or the app has been removed when using ausertoken.failed_export- Failed to export manifest for given app IDinvalid_arg_name- The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than_. If you get this error, it is typically an indication that you have made a very malformed API call.two_factor_setup_required- Two factor setup is required.invalid_form_data- The method was called via aPOSTrequest withContent-Typeapplication/x-www-form-urlencodedormultipart/form-data, but the form data was either missing or syntactically invalid.invalid_post_type- The method was called via aPOSTrequest, but the specifiedContent-Typewas invalid. Valid types are:application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.fatal_error- The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.deprecated_endpoint- The endpoint has been deprecated.ratelimited- The request has been ratelimited. Refer to theRetry-Afterheader for when to retry the request.ekm_access_denied- Administrators have suspended the ability to post a message.service_unavailable- The service is temporarily unavailableteam_access_not_granted- The token used is not granted the specific workspace access required to complete this request.invalid_arguments- The method was called with invalid arguments.invalid_array_arg- The method was passed an array as an argument. Please only input valid strings.request_timeout- The method was called via aPOSTrequest, but thePOSTdata was either missing or truncated.account_inactive- Authentication token is for a deleted user or workspace when using abottoken.not_authed- No authentication token provided.internal_error- Internal error.enterprise_is_restricted- The method cannot be called from an Enterprise.no_permission- User does not have proper permissions.app_not_found- The specified app was not found.access_denied- Access to a resource specified in the request is denied.team_added_to_org- The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.missing_scope- The token used is not granted the specific scope permissions required to complete this request.missing_post_type- The method was called via aPOSTrequest and included a data payload, but the request did not include aContent-Typeheader.accesslimited- Access to this method is limited on the current networktoken_expired- Authentication token has expiredapp_not_owned_by_manager_app- The app is not owned by the manager app.invalid_charset- The method was called via aPOSTrequest, but thecharsetspecified in theContent-Typeheader was invalid. Valid charset names are:utf-8iso-8859-1.method_deprecated- The method has been deprecated.invalid_app_id- The app ID passed is invalid.not_allowed_token_type- The token type used in this request is not allowed.org_login_required- The workspace is undergoing an enterprise migration and will not be available until migration is complete.invalid_auth- Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
Update an app from an app manifest
Required Params
app_id- The ID of the app whose configuration you want to update.manifest- A JSON app manifest encoded as a string. This manifest must use a valid app manifest schema - read our guide to creating one. As this method entirely replaces any previous configuration, manifest must contain both unmodified and modified fields.
Errors the API can return:
unknown_method- Unknown methodapp_not_eligible- The specified app is not eligible for this API.token_revoked- Authentication token is for a deleted user or workspace or the app has been removed when using ausertoken.failed_datastore_operation- Failed while managing datastore infrastructureinvalid_manifest- The provided manifest file does not validate against schema.invalid_arg_name- The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than_. If you get this error, it is typically an indication that you have made a very malformed API call.two_factor_setup_required- Two factor setup is required.invalid_form_data- The method was called via aPOSTrequest withContent-Typeapplication/x-www-form-urlencodedormultipart/form-data, but the form data was either missing or syntactically invalid.invalid_post_type- The method was called via aPOSTrequest, but the specifiedContent-Typewas invalid. Valid types are:application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.dynamic_client_registration_invalid_redirect_uri- The remote server rejected Slack's redirect URI during Dynamic Client Registration. The server must allowlist https://oauth2.slack.com/external/auth/callback as a valid redirect URI.fatal_error- The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.deprecated_endpoint- The endpoint has been deprecated.failed_creating_app- Failed to create the app modelratelimited- Too many calls in succession to update endpoint during a short period of time.ekm_access_denied- Administrators have suspended the ability to post a message.service_unavailable- The service is temporarily unavailableinvalid_app- An app created from the provided manifest would not be valid.team_access_not_granted- The token used is not granted the specific workspace access required to complete this request.dynamic_client_registration_invalid_response- The MCP server returned an invalid response during Dynamic Client Registration.invalid_arguments- The method was called with invalid arguments.dynamic_client_registration_rejected- The MCP server rejected the Dynamic Client Registration request.invalid_array_arg- The method was passed an array as an argument. Please only input valid strings.request_timeout- The method was called via aPOSTrequest, but thePOSTdata was either missing or truncated.account_inactive- Authentication token is for a deleted user or workspace when using abottoken.not_authed- No authentication token provided.internal_error- Internal error.enterprise_is_restricted- The method cannot be called from an Enterprise.no_permission- User does not have permission to update appaccess_denied- Access to a resource specified in the request is denied.dynamic_client_registration_failed- Dynamic client registration failed for an MCP server that requires OAuth authentication.team_added_to_org- The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.missing_scope- The token used is not granted the specific scope permissions required to complete this request.missing_post_type- The method was called via aPOSTrequest and included a data payload, but the request did not include aContent-Typeheader.accesslimited- Access to this method is limited on the current networkfailed_adding_collaborator- Failed writing a collaborator record for this new appoauth_metadata_not_found- Could not discover OAuth metadata for the MCP server. Ensure the server exposes a .well-known/oauth-authorization-server or .well-known/openid-configuration endpoint.dynamic_client_registration_not_supported- The MCP server's OAuth metadata does not include a registration endpoint. The server may not support Dynamic Client Registration.token_expired- Authentication token has expiredapp_not_owned_by_manager_app- The specified app is not managed by the calling manager app.invalid_charset- The method was called via aPOSTrequest, but thecharsetspecified in theContent-Typeheader was invalid. Valid charset names are:utf-8iso-8859-1.method_deprecated- The method has been deprecated.invalid_app_id- The app id passed is invalid.dynamic_client_registration_missing_oauth_endpoints- The MCP server's OAuth metadata is missing a required authorization or token endpoint.not_allowed_token_type- The token type used in this request is not allowed.org_login_required- The workspace is undergoing an enterprise migration and will not be available until migration is complete.invalid_auth- Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.
Validate an app manifest
Required Params
manifest- The manifest to be validated. Will be validated against the app manifest schema - read our guide.
Optional Params
app_id- The ID of the app whose configuration you want to validate.
Errors the API can return:
unknown_method- Unknown methodapp_not_eligible- The specified app is not eligible for this API.token_revoked- Authentication token is for a deleted user or workspace or the app has been removed when using ausertoken.invalid_manifest- The provided manifest file does not validate against schema.invalid_arg_name- The method was passed an argument whose name falls outside the bounds of accepted or expected values. This includes very long names and names with non-alphanumeric characters other than_. If you get this error, it is typically an indication that you have made a very malformed API call.two_factor_setup_required- Two factor setup is required.invalid_form_data- The method was called via aPOSTrequest withContent-Typeapplication/x-www-form-urlencodedormultipart/form-data, but the form data was either missing or syntactically invalid.invalid_post_type- The method was called via aPOSTrequest, but the specifiedContent-Typewas invalid. Valid types are:application/jsonapplication/x-www-form-urlencodedmultipart/form-datatext/plain.fatal_error- The server could not complete your operation(s) without encountering a catastrophic error. It's possible some aspect of the operation succeeded before the error was raised.deprecated_endpoint- The endpoint has been deprecated.failed_creating_app- Failed to create the app modelratelimited- The request has been ratelimited. Refer to theRetry-Afterheader for when to retry the request.ekm_access_denied- Administrators have suspended the ability to post a message.service_unavailable- The service is temporarily unavailableinvalid_app- An app created from the provided manifest would not be valid.team_access_not_granted- The token used is not granted the specific workspace access required to complete this request.invalid_arguments- The method was called with invalid arguments.invalid_array_arg- The method was passed an array as an argument. Please only input valid strings.request_timeout- The method was called via aPOSTrequest, but thePOSTdata was either missing or truncated.account_inactive- Authentication token is for a deleted user or workspace when using abottoken.not_authed- No authentication token provided.internal_error- The server could not complete your operation(s) without encountering an error, likely due to a transient issue on our end. It's possible some aspect of the operation succeeded before the error was raised.enterprise_is_restricted- The method cannot be called from an Enterprise.no_permission- User described by the used token does not have proper permissions to take this action.access_denied- Access to a resource specified in the request is denied.team_added_to_org- The workspace associated with your request is currently undergoing migration to an Enterprise Organization. Web API and other platform operations will be intermittently unavailable until the transition is complete.missing_scope- The token used is not granted the specific scope permissions required to complete this request.missing_post_type- The method was called via aPOSTrequest and included a data payload, but the request did not include aContent-Typeheader.accesslimited- Access to this method is limited on the current networkfailed_adding_collaborator- Failed writing a collaborator record for this new apptoken_expired- Authentication token has expiredapp_not_owned_by_manager_app- The app is not owned by the manager app.invalid_charset- The method was called via aPOSTrequest, but thecharsetspecified in theContent-Typeheader was invalid. Valid charset names are:utf-8iso-8859-1.method_deprecated- The method has been deprecated.invalid_app_id- The app id passed is invalid.not_allowed_token_type- The token type used in this request is not allowed.org_login_required- The workspace is undergoing an enterprise migration and will not be available until migration is complete.invalid_auth- Some aspect of authentication cannot be validated. Either the provided token is invalid or the request originates from an IP address disallowed from making the request.