1. Community API Keys
Returning.AI
  • Getting Started
  • Authentication
    • Register user with password
      POST
    • Verify user email
      POST
    • Log in user with password
      POST
    • Secure Auth
      GET
  • Users
    • Get user
      GET
    • Get Users with Filters
      POST
    • Create New User
      POST
    • Get User Data
      POST
    • Manage User Account
      POST
    • List mini-game logs by user email
      POST
    • Get user's current Mini Games and Streak stats
      POST
  • Messaging
    • Message Actions
      • Direct Channel
        • private DM channel
          • Reply Message
          • Send Message
          • React Message
        • public channel
          • Reply Message
          • Send Message
          • React Message
      • Forum Channel
        • Send Message
        • Reply Message
        • React Message
      • Text Channel
        • Reply Message
        • Send Message
        • React Message
      • Iframe Channel
        • Reply Message
        • Send Message
        • React Message
    • Get Messages
      GET
    • Send Message
      POST
    • Reply Message
      POST
    • React Message
      POST
    • Upload message images
      POST
  • Gamification
    • Leaderboards
      • List leaderboards with pagination
      • Create a new leaderboard
      • Get a single leaderboard by ID
      • Update an existing leaderboard
      • Delete a leaderboard
    • Streaks & Mini Games
      • List user streak logs
      • Update user spin-wheel information
    • Get tiers and XP settings
      GET
    • Get daily user gamification history
      POST
    • List user gamification logs
      POST
    • Get user activity stats
      POST
  • Rewards & Redemptions
    • Update redemption order status
    • List redemption orders by user email
    • List redemption statuses
    • Get redemption status by ID
    • List redemption orders by community
    • Create redemption order status
    • Get redemption order status history
  • Chart Analysis
    • Create Analysis
    • Get Analysis
    • Update Analysis
    • Delete Analysis
    • List Analyses
    • Append Drawings
  • Bulk Operations
    • List bulk update jobs
    • Get bulk update job status
    • Get bulk update job details
    • Bulk update users from CSV
    • Bulk update premium currency from CSV
  • Channels
    • Iframe
    • List integration channels
  • Events
    • Outgoing webhooks
      • Encryption
      • User Joins Server
      • User Visits server
      • New Message Posted Anywhere
      • New Message Posted To channel
      • Purchased Store Item
    • Incoming webhooks
      • API Keys & Encryption
      • Send message into channels
      • Update Custom User Fields
      • Update In-game currency
  • Widgets
    • Authenticated Widgets
    • Public widgets
  • Community Analytics
    • Get Loyalty Overview
  • Store
    • Purchase History
      • Update purchase history redemption instructions or voucher details
    • Categories
      • List store categories
      • Create store category
      • Update store category
      • Delete store category
      • Get store category by ID
    • Products
      • List store products
      • Create store product
      • Update store product
      • Delete store product
      • Get store product by ID
    • Get store configuration
    • Update store configuration
  • Community
    • Appearance
      • Update community theme colors
      • Update community bot profile
      • Update community URL metadata
      • Update community name and URL
    • Community Users
      • Get community users
      • Get user
    • Create community
  • API Keys
    • Community API Keys
      • Create API key
        POST
      • Read API keys
        GET
      • Delete API key
        DELETE
      • Update API key
        PUT
    • User API Keys
      • List user API keys
      • Create user API key
      • Update user API key
      • Delete user API key
      • Get current API key information
  • User Fields
    • User Field History
      • Get all user field histories in a community
      • Get user field histories for a specific field
      • Get user field histories for a specific user
      • Get user field histories of specific user field and user
      • Create user field history for specific user
      • Create user field history
      • Get user field histories
    • Get Specific User Field
    • Update Custom User Field
    • Create user field
    • Delete Custom User Field
    • Get all user fields for a community
    • Delete user field
    • Update user field
    • Get specific user field
  • Legacy
    • Servers
      • Create server
      • List servers
      • Update server metadata
    • Bulk Operations
      • Bulk import users from CSV
    • Badges
      • List badges
      • Create badge
      • Update badge
      • Delete badge
      • Remove badge from user
      • Award badge to user
    • Messaging
      • Reply to message
      • Send message
      • React to message
    • Roles & Permissions
      • List server roles
      • Create role
      • Update role
      • Delete role
      • List user roles
      • Add role to user
      • Remove role from user
    • Users
      • Upload user avatar
    • Channels
      • Create channel
      • Update channel
      • Delete channel
    • API Keys
      • List integration API keys
      • Create integration API key
      • Delete integration API key
      • Update integration API key
  • Schemas
    • Sample Schemas
    • Schemas
    • Outgoing webhooks
    • Analysis
    • Pet
    • Category
    • Tag
    • ValidationError
    • NotFoundError
    • InternalServerError
    • NotImplementedError
    • CreateUserFieldHistoryResponse
    • CreateUserFieldHistorySuccessResponse
    • UserFieldHistoryItem
    • GetUserFieldHistoriesResponse
    • UserFieldHistoriesValidationError
    • UserFieldHistoriesMetaWithValidation
    • UserFieldHistoriesMetaWithPagination
    • GetUserFieldHistoriesSuccessResponse
    • CreateUserFieldResponse
    • CreateUserFieldSuccessResponse
    • DeleteUserFieldResponse
    • DeleteUserFieldSuccessResponse
    • UserFieldCreator
    • GetUserFieldResponse
    • GetUserFieldSuccessResponse
    • ValidationErrorItem
    • GetUserFieldsMetaResponse
    • CreatorInfo
    • UserFieldResponse
    • GetUserFieldsSuccessResponse
    • UpdateUserFieldResponse
    • UpdateUserFieldPayload
    • UpdateUserFieldSuccessResponse
    • MetaResponse
    • GetUserResponse
    • GetUserSuccessResponse
    • Purchased store item
    • ErrorResponse
    • New message posted to channel
    • UpdateAnalysisRequest
    • User visits server
    • AppendDrawingsRequest
    • User join server
    • CreateAnalysisResponse
    • GetAnalysisResponse
    • UpdateAnalysisResponse
    • AppendDrawingsResponse
    • AnalysisMetadata
    • Expiry
    • Levels
    • LevelEntry
    • Drawing
    • HorizontalLineDrawing
    • LineDrawing
    • RectangleDrawing
    • ParallelDrawing
    • FibonacciRetracementDrawing
    • Coordinate
    • DrawingStyle
    • AnalysisDetail
    • AnalysisSummary
    • CreateAnalysisRequest
    • ListAnalysesResponse
    • StandardApiError
    • StandardSuccessEnvelope
    • PurchasedStoreItemEvent
    • ChannelMessagePostedEvent
    • UserVisitedCommunityEvent
    • UserJoinedCommunityEvent
  1. Community API Keys

Create API key

POST
/v1/communities/{communityId}/api-keys
Creates a new API key for a community. API keys can be used for authentication
and access control to community resources.
Security Requirements:
Bearer token authentication required
Only community owners and administrators can access this endpoint
User must have either COMMUNITY_OWNER or COMMUNITY_ADMIN permissions for the specified community
Key Features:
Generates secure 64-character API key with SHA-256 hash
Supports optional expiration period or specific expiration date
Allows custom permissions assignment for fine-grained access control
Emits real-time event to community members
Validates all input parameters for security

What it is for: Creates a community API key with a controlled permission set.
How to use it: Send a POST request to /v1/communities/{communityId}/api-keys with the request body, query parameters, or multipart fields shown below. Authorization: Bearer <apiKey>. The key must be active, unexpired, scoped to the correct community, and include the permission required by this endpoint.
Successful response: HTTP 201. The body follows the endpoint schema; many integration endpoints wrap the useful payload under data with status and message.
Common error states:
400 invalid request body, query, ObjectId, pagination, file format, or missing required field.
401 missing, invalid, expired, or insufficient API key/token.
403 key is valid but cannot access this community/channel/user/resource, where supported by the service.
404 target resource, route, or community-scoped record was not found.
409 duplicate or conflicting state for create/update operations, where applicable.
500 unexpected Returning.AI service error.

Request

Path Params

Body Params application/json

Examples

Responses

🟢201Created
application/json
Create API key successful
Bodyapplication/json

🟠400Bad Request
🟠401Unauthorized
🟠403Forbidden
🟠404Record Not Found
🟠409Server Error
🔴500Server Error
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location 'https://api.returning.ai/v1/communities//api-keys' \
--header 'Content-Type: application/json' \
--data '{
    "name": "Slack Integration API Key",
    "permissions": [
        "sendMessage",
        "replyMessage",
        "createUser",
        "manageUser",
        "getUserData",
        "getUserStats",
        "bulkUpdateUser",
        "userFields"
    ],
    "expirePeriod": 0
}'
Response Response Example
201 - Success
{
    "meta": {
        "status": "success",
        "statusCode": 201
    },
    "message": "Create API key success.",
    "data": {
        "_id": "675b9876fedc432109876543",
        "name": "Slack Integration API Key",
        "key": "<apiKey>",
        "permissions": [
            "sendMessage",
            "replyMessage",
            "createUser",
            "manageUser",
            "getUserData",
            "getUserStats",
            "bulkUpdateUser",
            "userFields"
        ],
        "expirePeriod": 0,
        "expireDate": "",
        "updatedAt": "2024-12-15T10:30:45.123Z",
        "createdAt": "2024-12-15T10:30:45.123Z"
    }
}
Modified at 2026-05-18 17:03:37
Previous
Create community
Next
Read API keys
Built with