AWS.RePostSpace reference
BatchAddChannelRoleToAccessors
Section titled “BatchAddChannelRoleToAccessors”Source:
src/AWS/RePostSpace/BatchAddChannelRoleToAccessors.ts
Runtime binding for the BatchAddChannelRoleToAccessors operation (IAM
action repostspace:BatchAddChannelRoleToAccessors on the space ARN).
Grants a channel-level role (ASKER, EXPERT, MODERATOR, or
SUPPORTREQUESTOR) to up to 100 users or groups in a channel of the
bound Space. Per-accessor failures are reported in the output’s
errors list rather than failing the whole call.
Provide the implementation with
Effect.provide(AWS.RePostSpace.BatchAddChannelRoleToAccessorsHttp).
BatchAddChannelRoleToAccessors: Managing Roles
Section titled “BatchAddChannelRoleToAccessors: Managing Roles”const addChannelRole = yield* AWS.RePostSpace.BatchAddChannelRoleToAccessors(space);
const result = yield* addChannelRole({ channelId, accessorIds: ["94682c8d-1234-5678-9abc-e001c76e2c44"], channelRole: "EXPERT",});BatchAddRole
Section titled “BatchAddRole”Source:
src/AWS/RePostSpace/BatchAddRole.ts
Runtime binding for the BatchAddRole operation (IAM action
repostspace:BatchAddRole on the space ARN).
Grants a space-level role (EXPERT, MODERATOR, ADMINISTRATOR, or
SUPPORTREQUESTOR) to up to 100 users or groups of the bound
Space in one call. Per-accessor failures are reported in the
output’s errors list rather than failing the whole call.
Provide the implementation with
Effect.provide(AWS.RePostSpace.BatchAddRoleHttp).
BatchAddRole: Managing Roles
Section titled “BatchAddRole: Managing Roles”const batchAddRole = yield* AWS.RePostSpace.BatchAddRole(space);
const result = yield* batchAddRole({ accessorIds: ["94682c8d-1234-5678-9abc-e001c76e2c44"], role: "EXPERT",});console.log(result.addedAccessorIds, result.errors);BatchRemoveChannelRoleFromAccessors
Section titled “BatchRemoveChannelRoleFromAccessors”Source:
src/AWS/RePostSpace/BatchRemoveChannelRoleFromAccessors.ts
Runtime binding for the BatchRemoveChannelRoleFromAccessors operation
(IAM action repostspace:BatchRemoveChannelRoleFromAccessors on the
space ARN).
Removes a channel-level role from up to 100 users or groups in a channel
of the bound Space. Per-accessor failures are reported in the
output’s errors list rather than failing the whole call.
Provide the implementation with
Effect.provide(AWS.RePostSpace.BatchRemoveChannelRoleFromAccessorsHttp).
BatchRemoveChannelRoleFromAccessors: Managing Roles
Section titled “BatchRemoveChannelRoleFromAccessors: Managing Roles”const removeChannelRole = yield* AWS.RePostSpace.BatchRemoveChannelRoleFromAccessors(space);
const result = yield* removeChannelRole({ channelId, accessorIds: ["94682c8d-1234-5678-9abc-e001c76e2c44"], channelRole: "EXPERT",});BatchRemoveRole
Section titled “BatchRemoveRole”Source:
src/AWS/RePostSpace/BatchRemoveRole.ts
Runtime binding for the BatchRemoveRole operation (IAM action
repostspace:BatchRemoveRole on the space ARN).
Removes a space-level role from up to 100 users or groups of the bound
Space in one call. Per-accessor failures are reported in the
output’s errors list rather than failing the whole call.
Provide the implementation with
Effect.provide(AWS.RePostSpace.BatchRemoveRoleHttp).
BatchRemoveRole: Managing Roles
Section titled “BatchRemoveRole: Managing Roles”const batchRemoveRole = yield* AWS.RePostSpace.BatchRemoveRole(space);
const result = yield* batchRemoveRole({ accessorIds: ["94682c8d-1234-5678-9abc-e001c76e2c44"], role: "EXPERT",});console.log(result.removedAccessorIds, result.errors);CreateChannel
Section titled “CreateChannel”Source:
src/AWS/RePostSpace/CreateChannel.ts
Runtime binding for the CreateChannel operation (IAM action
repostspace:CreateChannel on the space ARN).
Creates a channel — a topic-scoped area for questions and articles —
inside the bound Space. Channels are content organization and
cannot be deleted (the re:Post Private API has no DeleteChannel), so
they are modeled as a runtime capability rather than a Resource.
Provide the implementation with
Effect.provide(AWS.RePostSpace.CreateChannelHttp).
CreateChannel: Managing Channels
Section titled “CreateChannel: Managing Channels”const createChannel = yield* AWS.RePostSpace.CreateChannel(space);
const { channelId } = yield* createChannel({ channelName: "Networking", channelDescription: "VPC, DNS, and connectivity questions",});DeregisterAdmin
Section titled “DeregisterAdmin”Source:
src/AWS/RePostSpace/DeregisterAdmin.ts
Runtime binding for the DeregisterAdmin operation (IAM action
repostspace:DeregisterAdmin on the space ARN).
Removes administrator privileges from an IAM Identity Center user or
group (by accessor id) of the bound Space.
Provide the implementation with
Effect.provide(AWS.RePostSpace.DeregisterAdminHttp).
DeregisterAdmin: Managing Admins
Section titled “DeregisterAdmin: Managing Admins”const deregisterAdmin = yield* AWS.RePostSpace.DeregisterAdmin(space);
yield* deregisterAdmin({ adminId: "94682c8d-1234-5678-9abc-e001c76e2c44" });GetChannel
Section titled “GetChannel”Source:
src/AWS/RePostSpace/GetChannel.ts
Runtime binding for the GetChannel operation (IAM action
repostspace:GetChannel on the space ARN).
Reads a channel of the bound Space — its name, description,
status, and per-accessor channel roles.
Provide the implementation with
Effect.provide(AWS.RePostSpace.GetChannelHttp).
GetChannel: Managing Channels
Section titled “GetChannel: Managing Channels”const getChannel = yield* AWS.RePostSpace.GetChannel(space);
const channel = yield* getChannel({ channelId });console.log(channel.channelName, channel.channelStatus);ListChannels
Section titled “ListChannels”Source:
src/AWS/RePostSpace/ListChannels.ts
Runtime binding for the ListChannels operation (IAM action
repostspace:ListChannels on the space ARN).
Lists the channels of the bound Space, one page per call
(nextToken/maxResults).
Provide the implementation with
Effect.provide(AWS.RePostSpace.ListChannelsHttp).
ListChannels: Managing Channels
Section titled “ListChannels: Managing Channels”const listChannels = yield* AWS.RePostSpace.ListChannels(space);
const { channels } = yield* listChannels();RegisterAdmin
Section titled “RegisterAdmin”Source:
src/AWS/RePostSpace/RegisterAdmin.ts
Runtime binding for the RegisterAdmin operation (IAM action
repostspace:RegisterAdmin on the space ARN).
Promotes an IAM Identity Center user or group (by accessor id) to
administrator of the bound Space.
Provide the implementation with
Effect.provide(AWS.RePostSpace.RegisterAdminHttp).
RegisterAdmin: Managing Admins
Section titled “RegisterAdmin: Managing Admins”const registerAdmin = yield* AWS.RePostSpace.RegisterAdmin(space);
yield* registerAdmin({ adminId: "94682c8d-1234-5678-9abc-e001c76e2c44" });SendInvites
Section titled “SendInvites”Source:
src/AWS/RePostSpace/SendInvites.ts
Runtime binding for the SendInvites operation (IAM action
repostspace:SendInvites on the space ARN).
Sends invitation emails (with a custom title and body) to users or
groups of the bound Space, identified by their IAM Identity
Center accessor ids.
Provide the implementation with
Effect.provide(AWS.RePostSpace.SendInvitesHttp).
SendInvites: Inviting Users
Section titled “SendInvites: Inviting Users”const sendInvites = yield* AWS.RePostSpace.SendInvites(space);
yield* sendInvites({ accessorIds: ["94682c8d-1234-5678-9abc-e001c76e2c44"], title: "Join our internal re:Post", body: "Ask and answer questions about our AWS workloads.",});Source:
src/AWS/RePostSpace/Space.ts
An AWS re:Post Private space — a private, organization-scoped version of AWS re:Post with curated Q&A, articles, and selected public content.
re:Post Private is a paid feature (Basic or Standard tier) that requires
AWS IAM Identity Center to be enabled in the account. Space provisioning
is asynchronous and can take tens of minutes; the provider waits for the
space to reach CREATE_COMPLETED before returning.
Space: Creating a Space
Section titled “Space: Creating a Space”Basic Space
import * as RePostSpace from "alchemy/AWS/RePostSpace";
const space = yield* RePostSpace.Space("Support", { subdomain: "my-org-support", tier: "BASIC",});Space with Description and Tags
const space = yield* RePostSpace.Space("Engineering", { name: "Engineering Knowledge Base", subdomain: "my-org-engineering", tier: "STANDARD", description: "Internal Q&A for the engineering org", tags: { team: "platform" },});Space: Encryption
Section titled “Space: Encryption”const space = yield* RePostSpace.Space("Secure", { subdomain: "my-org-secure", userKMSKey: key.keyArn,});UpdateChannel
Section titled “UpdateChannel”Source:
src/AWS/RePostSpace/UpdateChannel.ts
Runtime binding for the UpdateChannel operation (IAM action
repostspace:UpdateChannel on the space ARN).
Renames a channel of the bound Space and/or updates its
description.
Provide the implementation with
Effect.provide(AWS.RePostSpace.UpdateChannelHttp).
UpdateChannel: Managing Channels
Section titled “UpdateChannel: Managing Channels”const updateChannel = yield* AWS.RePostSpace.UpdateChannel(space);
yield* updateChannel({ channelId, channelName: "Networking & DNS",});