Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .claude/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
CLAUDE.local.md
settings.local.json
worktrees/
plans/
1 change: 1 addition & 0 deletions .claude/CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
@../AGENTS.md
33 changes: 33 additions & 0 deletions .claude/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
{
"permissions": {
"allow": [
"Bash(./mvnw:*)",
"Bash(./scripts/check_dependency_updates.sh:*)",
"Bash(./scripts/install_local.sh:*)",
"Bash(./scripts/run_all_bolt_tests.sh:*)",
"Bash(./scripts/run_all_client_tests.sh:*)",
"Bash(./scripts/run_no_prep_tests.sh:*)",
"Bash(./scripts/set_version.sh:*)",
"Bash(gh issue view:*)",
"Bash(gh label list:*)",
"Bash(gh pr checks:*)",
"Bash(gh pr diff:*)",
"Bash(gh pr list:*)",
"Bash(gh pr status:*)",
"Bash(gh pr update-branch:*)",
"Bash(gh pr view:*)",
"Bash(gh search code:*)",
"Bash(git diff:*)",
"Bash(git grep:*)",
"Bash(git log:*)",
"Bash(git show:*)",
"Bash(git status:*)",
"Bash(grep:*)",
"Bash(ls:*)",
"Bash(tree:*)",
"WebFetch(domain:central.sonatype.com)",
"WebFetch(domain:docs.slack.dev)",
"WebFetch(domain:github.com)"
]
}
}
660 changes: 660 additions & 0 deletions AGENTS.md
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

📚 quibble: Moving this toward another PR might make later diff easier but no blocker!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👾 edit: I now find #1559! Apologies!

Large diffs are not rendered by default.

7 changes: 7 additions & 0 deletions json-logs/samples/api/apps.user.connection.update.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"ok": false,
"error": "",
"needed": "",
"provided": "",
"warning": ""
}
1 change: 1 addition & 0 deletions metadata/web-api/rate_limit_tiers.json
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@
"apps.permissions.users.list": "Tier2",
"apps.permissions.users.request": "Tier2",
"apps.uninstall": "Tier1",
"apps.user.connection.update": "Tier2",
"assistant.threads.setStatus": "SpecialTier_assistant_threads_setStatus",
"assistant.threads.setSuggestedPrompts": "Tier3",
"assistant.threads.setTitle": "Tier3",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
import com.slack.api.methods.request.apps.AppsUninstallRequest;
import com.slack.api.methods.request.apps.connections.AppsConnectionsOpenRequest;
import com.slack.api.methods.request.apps.event.authorizations.AppsEventAuthorizationsListRequest;
import com.slack.api.methods.request.apps.user.connection.AppsUserConnectionUpdateRequest;
import com.slack.api.methods.request.apps.manifest.*;
import com.slack.api.methods.request.assistant.threads.AssistantThreadsSetStatusRequest;
import com.slack.api.methods.request.assistant.threads.AssistantThreadsSetSuggestedPromptsRequest;
Expand Down Expand Up @@ -180,6 +181,7 @@
import com.slack.api.methods.response.apps.AppsUninstallResponse;
import com.slack.api.methods.response.apps.connections.AppsConnectionsOpenResponse;
import com.slack.api.methods.response.apps.event.authorizations.AppsEventAuthorizationsListResponse;
import com.slack.api.methods.response.apps.user.connection.AppsUserConnectionUpdateResponse;
import com.slack.api.methods.response.apps.manifest.*;
import com.slack.api.methods.response.asssistant.threads.AssistantThreadsSetStatusResponse;
import com.slack.api.methods.response.asssistant.threads.AssistantThreadsSetSuggestedPromptsResponse;
Expand Down Expand Up @@ -816,6 +818,14 @@ CompletableFuture<AdminConversationsWhitelistListGroupsLinkedToChannelResponse>

CompletableFuture<AppsConnectionsOpenResponse> appsConnectionsOpen(RequestConfigurator<AppsConnectionsOpenRequest.AppsConnectionsOpenRequestBuilder> req);

// ------------------------------
// apps.user.connection
// ------------------------------

CompletableFuture<AppsUserConnectionUpdateResponse> appsUserConnectionUpdate(AppsUserConnectionUpdateRequest req);

CompletableFuture<AppsUserConnectionUpdateResponse> appsUserConnectionUpdate(RequestConfigurator<AppsUserConnectionUpdateRequest.AppsUserConnectionUpdateRequestBuilder> req);

// ------------------------------
// apps.event.authorizations
// ------------------------------
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -237,6 +237,12 @@ private Methods() {

public static final String APPS_CONNECTIONS_OPEN = "apps.connections.open";

// ------------------------------
// apps.user.connection
// ------------------------------

public static final String APPS_USER_CONNECTION_UPDATE = "apps.user.connection.update";

// ------------------------------
// apps.manifest
// ------------------------------
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
import com.slack.api.methods.request.apps.AppsUninstallRequest;
import com.slack.api.methods.request.apps.connections.AppsConnectionsOpenRequest;
import com.slack.api.methods.request.apps.event.authorizations.AppsEventAuthorizationsListRequest;
import com.slack.api.methods.request.apps.user.connection.AppsUserConnectionUpdateRequest;
import com.slack.api.methods.request.apps.manifest.*;
import com.slack.api.methods.request.apps.permissions.AppsPermissionsInfoRequest;
import com.slack.api.methods.request.apps.permissions.AppsPermissionsRequestRequest;
Expand Down Expand Up @@ -193,6 +194,7 @@
import com.slack.api.methods.response.apps.AppsUninstallResponse;
import com.slack.api.methods.response.apps.connections.AppsConnectionsOpenResponse;
import com.slack.api.methods.response.apps.event.authorizations.AppsEventAuthorizationsListResponse;
import com.slack.api.methods.response.apps.user.connection.AppsUserConnectionUpdateResponse;
import com.slack.api.methods.response.apps.manifest.*;
import com.slack.api.methods.response.apps.permissions.AppsPermissionsInfoResponse;
import com.slack.api.methods.response.apps.permissions.AppsPermissionsRequestResponse;
Expand Down Expand Up @@ -1158,6 +1160,17 @@ AppsConnectionsOpenResponse appsConnectionsOpen(
RequestConfigurator<AppsConnectionsOpenRequest.AppsConnectionsOpenRequestBuilder> req)
throws IOException, SlackApiException;

// ------------------------------
// apps.user.connection
// ------------------------------

AppsUserConnectionUpdateResponse appsUserConnectionUpdate(AppsUserConnectionUpdateRequest req)
throws IOException, SlackApiException;

AppsUserConnectionUpdateResponse appsUserConnectionUpdate(
RequestConfigurator<AppsUserConnectionUpdateRequest.AppsUserConnectionUpdateRequestBuilder> req)
throws IOException, SlackApiException;

// ------------------------------
// apps.event.authorizations
// ------------------------------
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -227,6 +227,7 @@ public static void setRateLimitTier(String methodName, MethodsRateLimitTier tier
setRateLimitTier(APPS_CONNECTIONS_OPEN, Tier1);
setRateLimitTier(APPS_UNINSTALL, Tier1);
setRateLimitTier(APPS_EVENT_AUTHORIZATIONS_LIST, Tier4);
setRateLimitTier(APPS_USER_CONNECTION_UPDATE, Tier2);

setRateLimitTier(ASSISTANT_THREADS_SET_STATUS, SpecialTier_assistant_threads_setStatus);
setRateLimitTier(ASSISTANT_THREADS_SET_SUGGESTED_PROMPTS, Tier3);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
import com.slack.api.methods.request.apps.AppsUninstallRequest;
import com.slack.api.methods.request.apps.connections.AppsConnectionsOpenRequest;
import com.slack.api.methods.request.apps.event.authorizations.AppsEventAuthorizationsListRequest;
import com.slack.api.methods.request.apps.user.connection.AppsUserConnectionUpdateRequest;
import com.slack.api.methods.request.apps.manifest.*;
import com.slack.api.methods.request.apps.permissions.AppsPermissionsInfoRequest;
import com.slack.api.methods.request.apps.permissions.AppsPermissionsRequestRequest;
Expand Down Expand Up @@ -1063,6 +1064,13 @@ public static FormBody.Builder toForm(AppsConnectionsOpenRequest req) {
return form;
}

public static FormBody.Builder toForm(AppsUserConnectionUpdateRequest req) {
FormBody.Builder form = new FormBody.Builder();
setIfNotNull("user_id", req.getUserId(), form);
setIfNotNull("status", req.getStatus(), form);
return form;
}

public static FormBody.Builder toForm(AppsEventAuthorizationsListRequest req) {
FormBody.Builder form = new FormBody.Builder();
setIfNotNull("event_context", req.getEventContext(), form);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@
import com.slack.api.methods.request.apps.connections.AppsConnectionsOpenRequest;
import com.slack.api.methods.request.apps.event.authorizations.AppsEventAuthorizationsListRequest;
import com.slack.api.methods.request.apps.manifest.*;
import com.slack.api.methods.request.apps.user.connection.AppsUserConnectionUpdateRequest;
import com.slack.api.methods.request.assistant.threads.AssistantThreadsSetStatusRequest;
import com.slack.api.methods.request.assistant.threads.AssistantThreadsSetSuggestedPromptsRequest;
import com.slack.api.methods.request.assistant.threads.AssistantThreadsSetTitleRequest;
Expand Down Expand Up @@ -186,6 +187,7 @@
import com.slack.api.methods.response.apps.connections.AppsConnectionsOpenResponse;
import com.slack.api.methods.response.apps.event.authorizations.AppsEventAuthorizationsListResponse;
import com.slack.api.methods.response.apps.manifest.*;
import com.slack.api.methods.response.apps.user.connection.AppsUserConnectionUpdateResponse;
import com.slack.api.methods.response.asssistant.threads.AssistantThreadsSetStatusResponse;
import com.slack.api.methods.response.asssistant.threads.AssistantThreadsSetSuggestedPromptsResponse;
import com.slack.api.methods.response.asssistant.threads.AssistantThreadsSetTitleResponse;
Expand Down Expand Up @@ -1345,6 +1347,16 @@ public CompletableFuture<AppsConnectionsOpenResponse> appsConnectionsOpen(Reques
return appsConnectionsOpen(req.configure(AppsConnectionsOpenRequest.builder()).build());
}

@Override
public CompletableFuture<AppsUserConnectionUpdateResponse> appsUserConnectionUpdate(AppsUserConnectionUpdateRequest req) {
return executor.execute(APPS_USER_CONNECTION_UPDATE, toMap(req), () -> methods.appsUserConnectionUpdate(req));
}

@Override
public CompletableFuture<AppsUserConnectionUpdateResponse> appsUserConnectionUpdate(RequestConfigurator<AppsUserConnectionUpdateRequest.AppsUserConnectionUpdateRequestBuilder> req) {
return appsUserConnectionUpdate(req.configure(AppsUserConnectionUpdateRequest.builder()).build());
}

@Override
public CompletableFuture<AppsEventAuthorizationsListResponse> appsEventAuthorizationsList(AppsEventAuthorizationsListRequest req) {
return executor.execute(APPS_EVENT_AUTHORIZATIONS_LIST, toMap(req), () -> methods.appsEventAuthorizationsList(req));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
import com.slack.api.methods.request.apps.AppsUninstallRequest;
import com.slack.api.methods.request.apps.connections.AppsConnectionsOpenRequest;
import com.slack.api.methods.request.apps.event.authorizations.AppsEventAuthorizationsListRequest;
import com.slack.api.methods.request.apps.user.connection.AppsUserConnectionUpdateRequest;
import com.slack.api.methods.request.apps.manifest.*;
import com.slack.api.methods.request.apps.permissions.AppsPermissionsInfoRequest;
import com.slack.api.methods.request.apps.permissions.AppsPermissionsRequestRequest;
Expand Down Expand Up @@ -195,6 +196,7 @@
import com.slack.api.methods.response.apps.AppsUninstallResponse;
import com.slack.api.methods.response.apps.connections.AppsConnectionsOpenResponse;
import com.slack.api.methods.response.apps.event.authorizations.AppsEventAuthorizationsListResponse;
import com.slack.api.methods.response.apps.user.connection.AppsUserConnectionUpdateResponse;
import com.slack.api.methods.response.apps.manifest.*;
import com.slack.api.methods.response.apps.permissions.AppsPermissionsInfoResponse;
import com.slack.api.methods.response.apps.permissions.AppsPermissionsRequestResponse;
Expand Down Expand Up @@ -1386,6 +1388,16 @@ public AppsConnectionsOpenResponse appsConnectionsOpen(RequestConfigurator<AppsC
return appsConnectionsOpen(req.configure(AppsConnectionsOpenRequest.builder()).build());
}

@Override
public AppsUserConnectionUpdateResponse appsUserConnectionUpdate(AppsUserConnectionUpdateRequest req) throws IOException, SlackApiException {
return postFormWithTokenAndParseResponse(toForm(req), Methods.APPS_USER_CONNECTION_UPDATE, getToken(req), AppsUserConnectionUpdateResponse.class);
}

@Override
public AppsUserConnectionUpdateResponse appsUserConnectionUpdate(RequestConfigurator<AppsUserConnectionUpdateRequest.AppsUserConnectionUpdateRequestBuilder> req) throws IOException, SlackApiException {
return appsUserConnectionUpdate(req.configure(AppsUserConnectionUpdateRequest.builder()).build());
}

@Override
public AppsEventAuthorizationsListResponse appsEventAuthorizationsList(AppsEventAuthorizationsListRequest req) throws IOException, SlackApiException {
return postFormWithTokenAndParseResponse(toForm(req), Methods.APPS_EVENT_AUTHORIZATIONS_LIST, getToken(req), AppsEventAuthorizationsListResponse.class);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.slack.api.methods.request.apps.user.connection;

import com.slack.api.methods.SlackApiRequest;
import lombok.Builder;
import lombok.Data;

/**
* https://docs.slack.dev/reference/methods/apps.user.connection.update
*/
@Data
@Builder
public class AppsUserConnectionUpdateRequest implements SlackApiRequest {

private String token;

/**
* The user ID to update the connection status for.
*/
private String userId;

/**
* The connection status to set.
*/
private String status;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package com.slack.api.methods.response.apps.user.connection;

import com.slack.api.methods.SlackApiTextResponse;
import lombok.Data;

import java.util.List;
import java.util.Map;

/**
* https://docs.slack.dev/reference/methods/apps.user.connection.update
*/
@Data
public class AppsUserConnectionUpdateResponse implements SlackApiTextResponse {

private boolean ok;
private String warning;
private String error;
private String needed;
private String provided;
private transient Map<String, List<String>> httpResponseHeaders;
}
Loading
Loading