diff --git a/methods/README.md b/methods/README.md index 4ccdaba..e7dfab6 100644 --- a/methods/README.md +++ b/methods/README.md @@ -47,6 +47,7 @@ $ mvn compile exec:java -Dexec.mainClass=chat.ChatPostMessage # Make the reques - **[slackbot.skills.create](https://docs.slack.dev/reference/methods/slackbot.skills.create)**: Creates a skill from markdown instructions, or turns an existing canvas the caller owns into a skill. [Implementation](./src/main/java/slackbot/skills/SlackbotSkillsCreate.java). - **[slackbot.skills.info](https://docs.slack.dev/reference/methods/slackbot.skills.info)**: Returns one Slackbot skill, including its instructions. [Implementation](./src/main/java/slackbot/skills/SlackbotSkillsInfo.java). +- **[slackbot.skills.library.add](https://docs.slack.dev/reference/methods/slackbot.skills.library.add)**: Turns a skill on in the caller's personal library. [Implementation](./src/main/java/slackbot/skills/library/SlackbotSkillsLibraryAdd.java). - **[slackbot.skills.list](https://docs.slack.dev/reference/methods/slackbot.skills.list)**: Lists Slackbot skills from the caller's point of view. Instructions are not included. [Implementation](./src/main/java/slackbot/skills/SlackbotSkillsList.java). - **[slackbot.skills.update](https://docs.slack.dev/reference/methods/slackbot.skills.update)**: Changes a Slackbot skill's instructions or metadata. Only the inputs you send are changed; a call that changes nothing succeeds without writing. [Implementation](./src/main/java/slackbot/skills/SlackbotSkillsUpdate.java). diff --git a/methods/src/main/java/slackbot/skills/library/SlackbotSkillsLibraryAdd.java b/methods/src/main/java/slackbot/skills/library/SlackbotSkillsLibraryAdd.java new file mode 100644 index 0000000..5d5aa93 --- /dev/null +++ b/methods/src/main/java/slackbot/skills/library/SlackbotSkillsLibraryAdd.java @@ -0,0 +1,27 @@ +package slackbot.skills.library; + +import com.slack.api.Slack; +import com.slack.api.methods.MethodsClient; +import com.slack.api.methods.SlackApiException; +import com.slack.api.methods.request.slackbot.skills.library.SlackbotSkillsLibraryAddRequest; +import com.slack.api.methods.response.slackbot.skills.library.SlackbotSkillsLibraryAddResponse; +import java.io.IOException; + +public class SlackbotSkillsLibraryAdd { + + public static void main(String[] args) throws IOException, SlackApiException { + // Read a token from an environment variable + String token = System.getenv("SLACK_TOKEN"); + + // Initialize + MethodsClient methods = Slack.getInstance().methods(token); + + // Call the slackbot.skills.library.add method + SlackbotSkillsLibraryAddRequest request = + SlackbotSkillsLibraryAddRequest.builder().skillId("F0123ABCD").build(); + SlackbotSkillsLibraryAddResponse response = methods.slackbotSkillsLibraryAdd(request); + + // Inspect the response + System.out.println(response); + } +} diff --git a/methods/src/main/java/slackbot/skills/library/manifest.json b/methods/src/main/java/slackbot/skills/library/manifest.json new file mode 100644 index 0000000..f22a91c --- /dev/null +++ b/methods/src/main/java/slackbot/skills/library/manifest.json @@ -0,0 +1,23 @@ +{ + "display_information": { + "name": "Slack API Methods", + "description": "Example implementations to call \"slackbot.skills.library\" methods" + }, + "features": { + "bot_user": { + "display_name": "Slack API Methods", + "always_online": true + } + }, + "oauth_config": { + "scopes": { + "bot": ["skills:write"], + "user": ["skills:write"] + } + }, + "settings": { + "org_deploy_enabled": true, + "socket_mode_enabled": true, + "token_rotation_enabled": false + } +}