Documentation Index
Fetch the complete documentation index at: https://learn.social.plus/llms.txt
Use this file to discover all available pages before exploring further.
Quick Navigation
API
Social & Chat
UIKits & SDKs
Poll
Console
Portal
Alt Solutions
Beta Features
Errors
General
Dashboard
Using This FAQ
Validate Versions
Escalate Gaps
API
Create users in bulk
Create users in bulk
Admin Authorization token
Admin Authorization token
Pagination (next page token)
Pagination (next page token)
paging.next token. Pass it back as the options[token] (or documented query param) to fetch the next slice.Example response:
curl —location —globoff ‘https://api.sg.amity.co/api/v3/communities?filter=all&sortBy=lastCreated&options[token]=eyJza2lwIjoxMCwibGltaXQiOjEwfQ%3D%3D’ \
—header ‘accept: application/json’ \
—header ‘Authorization: Bearer xxx’Bulk upload blocklisted words
Bulk upload blocklisted words
isMatchExactWord to true for exact term blocking or false for substring / regex style matches. API Ref: Moderation » Blocklists.Configure follow / unfollow mode
Configure follow / unfollow mode
Request higher-quality images
Request higher-quality images
?size=full to the file download URL. Sizes: small | medium | large | full.
Example:
…/files//download?size=fullrefreshToken vs accessToken
refreshToken vs accessToken
Authentication token lifetime
Authentication token lifetime
List communities I've joined (API)
List communities I've joined (API)
filter=member on communities endpoint:Renew expired authentication token
Renew expired authentication token
- Get new auth token:
- Exchange via Session API:
Obtain an authentication token (secure mode)
Obtain an authentication token (secure mode)
Find posts I reacted to
Find posts I reacted to
userId per target post.Update only user metadata
Update only user metadata
metadata field in a user update body; unspecified fields remain unchanged.Delete ALL posts (bulk)
Delete ALL posts (bulk)
Upload audio files
Upload audio files
List users by role in a community
List users by role in a community
Upload from URL?
Upload from URL?
Access token invalidated early
Access token invalidated early
deviceId invalidates the old access token. Use stable per-device identifiers; avoid reusing one id across multiple concurrent logins.How do we configure webhook events correctly for our backend integration?
How do we configure webhook events correctly for our backend integration?
“event”: “channel.didAddUsers”For the full list of supported webhook events and payload details, refer to the documentation.How do we configure rate limits or handle high-volume API requests?
How do we configure rate limits or handle high-volume API requests?
userId).
This means the limit is shared across all devices for the same user. For example, if one user is logged in on multiple devices, all requests from those devices are counted together under the same limit.If the limit is exceeded, the API will return a rate limit error (e.g., HTTP 429).To handle high-volume traffic, we recommend implementing throttling, retry with backoff, batching, and caching to ensure smooth and reliable performance.How do we configure AI Moderation confidence levels?
How do we configure AI Moderation confidence levels?
What is the recommended approach for autojoining users: using the v4/communities/{communityId}/join endpoint or the Invitation API section?
What is the recommended approach for autojoining users: using the v4/communities/{communityId}/join endpoint or the Invitation API section?
Social and Chat
targetType & targetId purpose
targetType & targetId purpose
targetType identifies feed scope (user | community); targetId is the userId or communityId. Together they scope post queries. See SDK docs: https://docs.amity.co/amity-sdk/social/posts/query-post
Sort community posts by engagement?
Sort community posts by engagement?
lastCreated and firstCreated ordering. Docs: https://docs.amity.co/amity-sdk/social/posts/query-postExclude deleted communities
Exclude deleted communities
isDeleted=false param.includeDeleted (or includeDelete) flag false. Docs: https://docs.amity.co/amity-sdk/social/communities/query-communitiesCheck which communities a user joined
Check which communities a user joined
filter=member). Privacy prevents enumerating others’ memberships.Why only 20 items returned?
Why only 20 items returned?
paging.next (API) or nextPage() (SDK live collections) to iterate. See Live Objects & Collections docs.Update community user role
Update community user role

Remove community members
Remove community members
Delete / close a community
Delete / close a community

Pre-populate global feed for new users
Pre-populate global feed for new users
Metadata purpose
Metadata purpose
Empty global feed explanation
Empty global feed explanation
Image upload requirements
Image upload requirements
Video upload requirements
Video upload requirements
Do I need access token when using SDK secure mode?
Do I need access token when using SDK secure mode?
Global feed not sorted by newest
Global feed not sorted by newest
List joined communities via SDK
List joined communities via SDK
queryCommunities({ filter: ‘membership’ }). Docs: /social/communities/query-communities.Implement file download feature
Implement file download feature
https://api.{region}.amity.co/api/v3/files/{fileId}. Retrieve fileId from message/post objects via SDK.Auto-open first chat channel in Web UIKit
Auto-open first chat channel in Web UIKit
Check if conversation channel exists between users
Check if conversation channel exists between users
Query posts by tags[]
Query posts by tags[]
Query comments by user ID?
Query comments by user ID?
How do we properly configure community membership or user access roles?
How do we properly configure community membership or user access roles?
First, set your community or network membership mode (open, request/approval, or invite‑only) so users either join freely or require approval/invites.
Then, define role types (e.g. admin, moderator, member, guest) and assign them to users to control permissions like posting, moderating, and managing settings.
Review these settings regularly to match your business rules and compliance needs.
How does Livestream AI moderation works?
How does Livestream AI moderation works?
Can we search messages within a specific chat/channel?
Can we search messages within a specific chat/channel?
UIKits and SDKs
iOS push not working (checklist)
iOS push not working (checklist)
- Production APNs cert or key uploaded (Sandbox & Production) and not expired
- App capability: Push Notifications enabled
- Correct
app_idmatches certificate - Running on real device (not simulator) and production/TestFlight build when testing prod cert
- User granted notification permission & device not in Do Not Disturb / Focus
- APNs key also uploaded to Firebase if using FCM bridge (docs)
Use my own Realm (iOS)?
Use my own Realm (iOS)?
Which iOS certificate type for push?
Which iOS certificate type for push?
TypeScript via CDN only?
TypeScript via CDN only?
Check if I blocked a user
Check if I blocked a user
Mark message as read
Mark message as read
Flutter: retrieve poll posts
Flutter: retrieve poll posts
How do we query users correctly using the SDK?
How do we query users correctly using the SDK?
• Search Users — Find users by displayName (min 3 characters), ranked by relevance
• Query Users — Retrieve users with sorting (displayName, firstCreated, lastCreated)
Full documentation
How should we properly set up push notifications in iOS?
How should we properly set up push notifications in iOS?
- Create keys/certs in Apple Developer
- In Apple Developer account, create an APNs Auth Key (.p8) with Push Notifications enabled.
- Note the Key ID, Team ID, and download the .p8 file.
- Configure your backend / Social+ console
- Go to your project’s Notifications → Apple (iOS) page.
- Upload the .p8 file, fill in Key ID, Team ID, and Bundle ID, then click Activate.
- Enable push in Xcode
- Open your app target → Signing & Capabilities.
- Add Push Notifications and (if needed) Background Modes → Remote notifications.
- Make sure you use a provisioning profile that includes push.
- Request permission and get APNs token
- In your app, ask for notification permission on first launch (UNUserNotificationCenter).
- Implement application(_:didRegisterForRemoteNotificationsWithDeviceToken:) to get the APNs device token.
- Register token with your SDK
- Pass the APNs token to your SDK (e.g. Client.registerPushNotification(apnToken) or fcmToken= in AmityUiKitProvider (React Native))
- Test real production push notifications.
- Install a TestFlight (release) build on a physical iPhone (push notifications are not supported on simulators).
- Trigger a real notification from your production backend or console, and verify that it is successfully delivered and displayed on the device.
How do we correctly configure metadata structure in posts or comments?
How do we correctly configure metadata structure in posts or comments?
How do we access or initialize Social+ correctly in our environment?
How do we access or initialize Social+ correctly in our environment?
How do we properly install and configure UIKit dependencies for iOS/Android?
How do we properly install and configure UIKit dependencies for iOS/Android?
- Add AmitySDK and AmityUIKit4 via Swift Package Manager in Xcode.
- Link to your app target and initialize in AppDelegate.
- Add Amity SDK and UIKit dependencies in your Gradle files.
- Initialize SDK in your Application class.
Does UIKit allow visitors to use Secure Mode?
Does UIKit allow visitors to use Secure Mode?
The SDK and UIKit support stories associated directly with individual users (user-specific stories)?
The SDK and UIKit support stories associated directly with individual users (user-specific stories)?
More details about our story features can be found here.
Does the SDK require persistent connections or WebSocket infrastructure?
Does the SDK require persistent connections or WebSocket infrastructure?
More details about the real-time event model can be found here.
How customizable is your open source UIKit?
How customizable is your open source UIKit?
Poll
List voters for a poll answer
List voters for a poll answer
Poll plus other attachment?
Poll plus other attachment?
View my polls in console?
View my polls in console?

Console
Find admin token
Find admin token

Grant console access
Grant console access

Upload first PNS certificate
Upload first PNS certificate

Can't retrieve community posts via User option
Can't retrieve community posts via User option
Locate API key & region
Locate API key & region

Change console password
Change console password

Why no conversation channels in console?
Why no conversation channels in console?
Multiple push certs per platform?
Multiple push certs per platform?
Portal
Create separate environments (test/prod)
Create separate environments (test/prod)

Upgrade pricing plan
Upgrade pricing plan
Change organization name for invoices
Change organization name for invoices

How do we manage or delete stuck/inactive applications via Portal?
How do we manage or delete stuck/inactive applications via Portal?
Alternative solutions for unsupported features
Save favourite posts
Save favourite posts
favorites). On profile render, fetch posts by those IDs.Verified badge implementation
Verified badge implementation
metadata.verified=true (or role) on user; frontend displays badge based on flag.Post sharing pattern
Post sharing pattern
Email notification on flagged post
Email notification on flagged post
Pin a post workaround (pre UIKit support)
Pin a post workaround (pre UIKit support)
pinPostID) and prepend when rendering feed if present.Restrict channel creation to admins
Restrict channel creation to admins
Filter only video posts in global feed
Filter only video posts in global feed
Audio message duration shows 00:00
Audio message duration shows 00:00
Retrieve community posts by userId
Retrieve community posts by userId
postedUserId param (beta feature) to filter.To update GIF implementation guidelines
To update GIF implementation guidelines
Beta features
Web React push notifications
Web React push notifications
Content search returns fewer posts
Content search returns fewer posts
Search posts by hashtags
Search posts by hashtags
Notify user on new follower
Notify user on new follower
Frequent error types: Definition
Error: Connect client first
Error: Connect client first
established (listen to session state changes) before repository operations.Query Token is invalid
Query Token is invalid
paging.next (or previous) token from prior response. Do not reuse stale/modified tokens.Unable to use SDK while logging in
Unable to use SDK while logging in
RateLimit Exceed / 400311
RateLimit Exceed / 400311
Image post error 400314
Image post error 400314
Link post blocked 400309
Link post blocked 400309
General
Restore deleted user?
Restore deleted user?
Delete inactive users
Delete inactive users
Global ban effects
Global ban effects
Counting concurrent connections (CCU)
Counting concurrent connections (CCU)
Dark theme availability
Dark theme availability
Delete unused application
Delete unused application
Definition: inactive user
Definition: inactive user
Download Figma files
Download Figma files
Multi-tenant architecture
Multi-tenant architecture
External backend for file uploads?
External backend for file uploads?
Account-wide metrics across apps
Account-wide metrics across apps
Include HTML formatting tags in posts/messages
Include HTML formatting tags in posts/messages
GIF support
GIF support
How can I get reports of the data in my SocialPlus environment?
How can I get reports of the data in my SocialPlus environment?
How often do we need to update the UIKit/SDK?
How often do we need to update the UIKit/SDK?
Dashboard
Lurking users definition
Lurking users definition
Conversation metrics location
Conversation metrics location
