Communities

List communities

get
/v1/communities

Lists all communities. This endpoint has optional Signed Fetch authentication. When signed, it includes properties related to the authenticated user in its response. This endpoint excludes unlisted communities from results. Use direct community access (GET /v1/communities/{id}) to retrieve unlisted communities.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Query parameters
limitintegerOptional

Number of communities per page.

offsetintegerOptional

Number of communities to skip.

searchstringOptional

Search term to filter communities by name or description.

onlyMemberOfbooleanOptional

Filter communities where the authenticated user is a member.

onlyWithActiveVoiceChatbooleanOptional

Filter to show only communities with active voice chats.

Responses
chevron-right
200

Communities found

application/json
get
/v1/communities

Create a new community

post
/v1/communities

Creates a new community with the provided details. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Body
namestringRequired
descriptionstringRequired
placeIdsstringOptional

JSON array of place IDs to add to the community

privacystring · enumOptional

Community privacy setting

Possible values:
visibilitystring · enumOptional

Community visibility setting

Possible values:
thumbnailstring · binaryOptional

Community thumbnail image

Responses
post
/v1/communities

Get a community by ID

get
/v1/communities/{id}

Retrieves detailed information about a specific community by its unique ID. This endpoint requires Signed Fetch authentication and returns the authenticated user's role in the community. Returns both public and private communities if the user has access. Includes voice chat status, member count, and community metadata.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Responses
chevron-right
200

Community found

application/json
get
/v1/communities/{id}

Update a community

put
/v1/communities/{id}

Updates a community's details including name, description, privacy settings, unlisted status, and thumbnail. This endpoint requires Signed Fetch authentication and only community owners can update.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Body
namestringOptional

Community name

descriptionstringOptional

Community description

placeIdsstringOptional

JSON array of place IDs to replace all current community places

privacystring · enumOptional

Community privacy setting

Possible values:
visibilitystring · enumOptional

Community visibility setting

Possible values:
thumbnailstring · binaryOptional

Community thumbnail image

Responses
chevron-right
200

Community updated successfully

application/json
put
/v1/communities/{id}

Delete a community

delete
/v1/communities/{id}

Deletes a community. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Responses
delete
/v1/communities/{id}

No content

Update a community partially

patch
/v1/communities/{id}

Partially updates a community's properties. Currently supports updating the Editor's Choice flag. This endpoint requires Signed Fetch authentication and only global moderators can update Editor's Choice.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Body
editorsChoicebooleanRequired

Whether the community should be marked as Editor's Choice. Only global moderators can update this field.

Responses
patch
/v1/communities/{id}

No content

List community members

get
/v1/communities/{id}/members

Lists all members of a specific community with their profiles and roles. This endpoint has optional Signed Fetch authentication. When not signed, it only returns members of public communities. When signed, it returns all members if the user has access to the community, including friendship status with each member. Can be filtered to show only online members.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Query parameters
limitintegerOptional

Number of members per page.

offsetintegerOptional

Number of members to skip.

onlyOnlinebooleanOptional

Filter to show only online members.

Responses
chevron-right
200

Members found

application/json
get
/v1/communities/{id}/members

Add a member to a community

post
/v1/communities/{id}/members

Adds a member to a community. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Responses
post
/v1/communities/{id}/members

No content

Remove a member from a community

delete
/v1/communities/{id}/members/{memberAddress}

Removes a member from a community. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

memberAddressstringRequired

ETH address of the member to remove.

Responses
delete
/v1/communities/{id}/members/{memberAddress}

No content

Update member role

patch
/v1/communities/{id}/members/{memberAddress}

Updates the role of a member in a community. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

memberAddressstringRequired

ETH address of the member to update.

Body
rolestring · enumRequired

New role for the member

Possible values:
Responses
patch
/v1/communities/{id}/members/{memberAddress}

No content

List communities for a member

get
/v1/members/{address}/communities

Lists all communities a member belongs to. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
addressstringRequired

ETH address of the member.

Query parameters
limitintegerOptional

Number of communities per page.

offsetintegerOptional

Number of communities to skip.

Responses
chevron-right
200

Communities found

application/json
get
/v1/members/{address}/communities

List banned members of a community

get
/v1/communities/{id}/bans

Lists all banned members of a specific community. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Query parameters
limitintegerOptional

Number of banned members per page.

offsetintegerOptional

Number of banned members to skip.

Responses
chevron-right
200

Banned members found

application/json
get
/v1/communities/{id}/bans

Ban a member from a community

post
/v1/communities/{id}/members/{memberAddress}/bans

Bans a member from a community. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

memberAddressstringRequired

ETH address of the member to ban.

Responses
post
/v1/communities/{id}/members/{memberAddress}/bans

No content

Unban a member from a community

delete
/v1/communities/{id}/members/{memberAddress}/bans

Unbans a member from a community. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

memberAddressstringRequired

ETH address of the member to unban.

Responses
delete
/v1/communities/{id}/members/{memberAddress}/bans

No content

Get community places

get
/v1/communities/{id}/places

Lists all places (Decentraland world locations) associated with a specific community. This endpoint has optional Signed Fetch authentication. When not signed, it only returns places of public communities. When signed, it returns all places if the user has access to the community or the community is public. Places are identified by their unique place IDs (UUIDs).

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Query parameters
limitintegerOptional

Number of places per page.

offsetintegerOptional

Number of places to skip.

Responses
chevron-right
200

Places found

application/json
get
/v1/communities/{id}/places

Add places to community

post
/v1/communities/{id}/places

Adds one or more places to a community. This endpoint requires Signed Fetch authentication. Duplicate places are ignored.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Body
placeIdsstring · uuid[]Required

Array of place IDs to add to the community

Responses
post
/v1/communities/{id}/places

No content

Remove place from community

delete
/v1/communities/{id}/places/{placeId}

Removes a place from a community. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

placeIdstring · uuidRequired

The unique identifier of the place to remove.

Responses
delete
/v1/communities/{id}/places/{placeId}

No content

Get managed communities for an address

get
/v1/communities/{address}/managed

Lists all communities where the specified address is an owner or moderator. This endpoint requires admin authentication.

Authorizations
AuthorizationstringRequired

Bearer token authentication for admin endpoints. Requires API_ADMIN_TOKEN.

Path parameters
addressstringRequired

ETH address of the user to get managed communities for.

Query parameters
limitintegerOptional

Number of communities per page.

offsetintegerOptional

Number of communities to skip.

Responses
chevron-right
200

Managed communities found

application/json
get
/v1/communities/{address}/managed

Get community requests

get
/v1/communities/{id}/requests

Lists all pending requests (invites and join requests) for a specific community. This endpoint requires Signed Fetch authentication and only community owners or moderators can access it. Returns detailed information about each request including the member's profile, friendship status with the authenticated user. Can be filtered by request type (invite or request_to_join).

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Query parameters
limitintegerOptional

Number of requests per page.

offsetintegerOptional

Number of requests to skip.

typestring · enumOptional

Filter requests by type (invite or request_to_join).

Possible values:
Responses
chevron-right
200

Community requests found

application/json
get
/v1/communities/{id}/requests

Create community request

post
/v1/communities/{id}/requests

Creates a community request (invite or join request) for a specific member. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Body
targetedAddressstringRequired

ETH address of the member to create the request for

typestring · enumRequired

Type of request to create

Possible values:
Responses
chevron-right
200

Community request created successfully

application/json
post
/v1/communities/{id}/requests

Update community request status

patch
/v1/communities/{id}/requests/{requestId}

Updates the status of a community request (accept, reject, or cancel). This endpoint requires Signed Fetch authentication with proper permissions:

  • For invites: Only the invited user can accept/reject, community owners/moderators can cancel

  • For join requests: Only community owners/moderators can accept/reject, the requesting user can cancel

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

requestIdstringRequired

The unique identifier of the community request.

Body
intentionstring · enumRequired

Action to perform on the community request

Possible values:
Responses
patch
/v1/communities/{id}/requests/{requestId}

No content

Get member requests

get
/v1/members/{address}/requests

Lists all pending requests (invites received and join requests sent) for a specific member. This endpoint requires Signed Fetch authentication and users can only access their own requests. Returns detailed community information for each request including voice chat status, member count, and friends in the community. Can be filtered by request type (invite or request_to_join).

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
addressstringRequired

ETH address of the member.

Query parameters
limitintegerOptional

Number of requests per page.

offsetintegerOptional

Number of requests to skip.

typestring · enumOptional

Filter requests by type (invite or request_to_join).

Possible values:
Responses
chevron-right
200

Member requests found

application/json
get
/v1/members/{address}/requests

Get community invites for a user

get
/v1/members/{address}/invites

Lists all communities where the authenticated user (inviter) is a member but the specified address (invitee) is not a member. This is used to render a list of potential communities to invite the user to. This endpoint requires Signed Fetch authentication.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
addressstringRequired

ETH address of the user to check invite possibilities for (invitee).

Responses
chevron-right
200

Community invites found

application/json
get
/v1/members/{address}/invites

Like a community post

post
/v1/communities/{id}/posts/{postId}/like

Likes a post in a community. This endpoint requires Signed Fetch authentication. Users can only like posts from communities they are members of.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

postIdstringRequired

The unique identifier of the post.

Responses
post
/v1/communities/{id}/posts/{postId}/like

No content

Unlike a community post

delete
/v1/communities/{id}/posts/{postId}/like

Unlikes a post in a community. This endpoint requires Signed Fetch authentication. Users can only unlike posts they have previously liked.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

postIdstringRequired

The unique identifier of the post.

Responses
delete
/v1/communities/{id}/posts/{postId}/like

No content

Get all communities for moderation

get
/v1/moderation/communities

Lists all communities for moderation purposes with detailed information. This endpoint requires Signed Fetch authentication and the user must be a global moderator. Global moderators are configured via feature flags.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Query parameters
limitintegerOptional

Number of communities per page.

offsetintegerOptional

Number of communities to skip.

searchstringOptional

Search term to filter communities by name or description.

Responses
chevron-right
200

Communities found

application/json
get
/v1/moderation/communities

List community posts

get
/v1/communities/{id}/posts

Lists all posts from a specific community with pagination support. This endpoint has optional Signed Fetch authentication. When not signed, it only returns posts from public communities. When signed, it returns all posts if the user has access to the community, including the user's like status for each post. Posts are returned in reverse chronological order (newest first).

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Query parameters
limitintegerOptional

Number of posts per page (max 100).

offsetintegerOptional

Number of posts to skip.

Responses
chevron-right
200

Posts found

application/json
get
/v1/communities/{id}/posts

Create a community post

post
/v1/communities/{id}/posts

Creates a new post in a community. This endpoint requires Signed Fetch authentication and only community owners or moderators can create posts. Post content must be between 1 and 1000 characters. Returns the created post with author profile information.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

Body
contentstring · min: 1 · max: 1000Required

Post content (1-1000 characters)

Responses
post
/v1/communities/{id}/posts

Delete a community post

delete
/v1/communities/{id}/posts/{postId}

Deletes a post from a community. This endpoint requires Signed Fetch authentication and only community owners or moderators can delete posts.

Authorizations
AuthorizationstringRequired

Signed Fetch authentication. See ADR-44 for more details about the authentication mechanism.

Path parameters
idstringRequired

The unique identifier of the community.

postIdstringRequired

The unique identifier of the post.

Responses
delete
/v1/communities/{id}/posts/{postId}

No content

Last updated