diff --git a/methods/README.md b/methods/README.md index 1bd5d8e..1f47e78 100644 --- a/methods/README.md +++ b/methods/README.md @@ -16,6 +16,10 @@ $ mvn compile exec:java -Dexec.mainClass=chat.ChatPostMessage # Make the reques ## What's on call +### blocks + +- **[blocks.validate](https://docs.slack.dev/reference/methods/blocks.validate)**: Validates blocks, messages, and views Block Kit JSON payloads. [Implementation](./src/main/java/blocks/BlocksValidate.java). + ### chat - **[chat.postMessage](https://docs.slack.dev/reference/methods/chat.postmessage)**: Sends a message to a channel. [Implementation](./src/main/java/chat/ChatPostMessage.java). diff --git a/methods/src/main/java/blocks/BlocksValidate.java b/methods/src/main/java/blocks/BlocksValidate.java new file mode 100644 index 0000000..b81c61a --- /dev/null +++ b/methods/src/main/java/blocks/BlocksValidate.java @@ -0,0 +1,29 @@ +package blocks; + +import static com.slack.api.model.block.Blocks.section; +import static com.slack.api.model.block.composition.BlockCompositions.plainText; + +import com.slack.api.Slack; +import com.slack.api.methods.MethodsClient; +import com.slack.api.methods.SlackApiException; +import com.slack.api.methods.request.blocks.BlocksValidateRequest; +import com.slack.api.methods.response.blocks.BlocksValidateResponse; +import java.io.IOException; +import java.util.Arrays; + +public class BlocksValidate { + + public static void main(String[] args) throws IOException, SlackApiException { + // Initialize + MethodsClient methods = Slack.getInstance().methods(); + + // Call the blocks.validate method + BlocksValidateRequest request = BlocksValidateRequest.builder() + .blocks(Arrays.asList(section(s -> s.text(plainText("Hello world"))))) + .build(); + BlocksValidateResponse response = methods.blocksValidate(request); + + // Inspect the response + System.out.println(response); + } +} diff --git a/methods/src/main/java/blocks/manifest.json b/methods/src/main/java/blocks/manifest.json new file mode 100644 index 0000000..1f9aa3c --- /dev/null +++ b/methods/src/main/java/blocks/manifest.json @@ -0,0 +1,22 @@ +{ + "display_information": { + "name": "Slack API Methods", + "description": "Example implementations to call \"blocks\" methods" + }, + "features": { + "bot_user": { + "display_name": "Slack API Methods", + "always_online": true + } + }, + "oauth_config": { + "scopes": { + "bot": ["chat:write"] + } + }, + "settings": { + "org_deploy_enabled": true, + "socket_mode_enabled": false, + "token_rotation_enabled": false + } +}