1. User Fields
Returning.AI
  • Getting Started
  • 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
    • Get User Milestones
      POST
    • Update User Data, Identifier, And Roles
      POST
    • Update User XP and Currency
      POST
  • Messaging
    • Agent messaging workflow
    • 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
      • Update an existing leaderboard
      • Get a single leaderboard by ID
      • Delete a leaderboard
    • Streaks & Mini Games
      • List user streak logs
      • Update user spin-wheel information
    • Referral
      • Get referral programs
      • Get user's referral summary
    • Rolling Data
      • Get Daily Calculation Data
      • Get Rolling Calculation Data
    • Match Predictions
    • Get tiers and XP settings
      GET
    • Get daily user XP and coin changes
      POST
    • Search user gamification logs
      POST
    • Get user activity stats
      POST
  • Rewards & Redemptions
    • Update redemption order status or refund
    • 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
    • Get Phone Verification Contacts
  • Store
    • Purchase History
      • Update redemption instructions or voucher details
    • Categories
      • List Store categories
      • Create Store category
      • Get Store category by ID
      • Update Store category
      • Delete Store category
    • Products
      • List products
      • Update products in bulk
      • Create products in bulk
      • Create product with vouchers
      • Read product
      • Update product and append vouchers
      • Delete product
    • Redemption-transaction
      • Get redemption transaction detail
    • 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
      • Read API keys
      • Delete API key
      • Update API key
    • 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
      • Update A User Field Value
      • Deprecated Field-First History Write
      • Deprecated Field-First History Read
    • Get A User Field Definition
      GET
    • Update A User Field Definition
      PUT
    • Create A User Field Definition
      POST
    • Delete A User Field Definition
      DELETE
    • List User Field Definitions
      GET
    • Delete user field
      DELETE
    • Update user field
      PUT
    • Get specific user field
      GET
  • Legacy
    • Servers
      • Create server
      • List servers
      • Update server metadata
    • Bulk Operations
      • Bulk import users from CSV
    • Authentication
      • Secure Auth
      • Register user with password
      • Verify user email
      • Log in user with password
    • Badges
      • List badges
      • Create badge
      • Update badge
      • Delete badge
      • Remove badge from user
      • Award badge to user
    • Messaging
    • 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. User Fields

Update A User Field Definition

PUT
/v1/communities/{communityId}/user-fields/{fieldIdOrName}

What this endpoint does#

Updates an existing custom user-field definition. It never creates a missing field and never replaces the complete definition map. Use it to rename display text, change to a compatible supported type, or set/clear a typed default. The stable field key cannot be changed.
INFO
Workflow
Current field -> update -> read field

Quick start#

{ "name": "Lifetime Trading Volume", "type": "numerical", "defaultValue": 0 }

Authentication and permission#

Use a community API key with userFields. The caller must be an owner or administrator. The path accepts stable key or ObjectId. The body must contain at least one supported change.

Complete examples#

Rename only:
{ "name": "Lifetime Trading Volume" }
Clear the default:
{ "defaultValue": null }
Change type and provide a compatible default in the same request:
{ "type": "boolean", "defaultValue": false }
Do not send field; it is immutable. If a type change would make an existing/default value invalid, choose a compatible value or clear the default deliberately.

Success and readback#

{
  "meta": { "status": "success", "statusCode": 200, "code": "USER_FIELD_UPDATED" },
  "message": "Update user field api success.",
  "data": {
    "_id": "<fieldObjectId>",
    "name": "Lifetime Trading Volume",
    "field": "trading_volume",
    "type": "numerical",
    "defaultValue": 0,
    "isCustom": true
  }
}
Read back with GET by the unchanged stable key. Confirm type/default before sending subsequent values.
CHECK
Readback
Run the follow-up read named above. Compare the returned identifiers and final stored values.

Errors and recovery#

400 INVALID_FIELD_DEFINITION: body, type, or default is invalid.
400 INVALID_FIELD_DEFINITION: also returned when the body attempts to change the immutable field key; remove that property.
401 AUTHENTICATION_REQUIRED / 403 API_KEY_PERMISSION_DENIED: fix key or owner/admin access.
404 USER_FIELD_NOT_FOUND: PUT does not upsert; create separately if appropriate.
409 USER_FIELD_UPDATE_FORBIDDEN: built-in or otherwise protected field.
409 USER_FIELD_NAME_CONFLICT: choose a unique display name.
500 USER_FIELD_OPERATION_FAILED: state may be unclear; read before retrying.

Retry safety#

WARNING
Retry rule
This PUT endpoint does not currently accept an Idempotency-Key. After a timeout or 5xx, GET the definition by stable key and compare every requested property before deciding whether to repeat the update.

Gotchas#

Avoid this mistake

Next steps#

Read the updated field
GET the definition for readback. Review consumers before a type change. Use the canonical value-write endpoint for new values and the history reads for audit evidence.

Request

Path Params

Header Params

Body Params application/jsonRequired

Examples

Responses

🟢200OK
application/json
Update user field api success. Branch on the HTTP status and meta.code; do not branch on the human-readable message.
Bodyapplication/json

🟠400Bad Request
🟠401Unauthorized
🟠403Forbidden
🟠404Record Not Found
🟠409
🔴500Server Error
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request PUT 'https://api.returning.ai/v1/communities/6502c9e514a3e564c5c09c0a/user-fields/trading_volume' \
--header 'Authorization: Bearer <apiKey>' \
--header 'Content-Type: application/json' \
--data '{
  "name": "Lifetime Trading Volume"
}'
Response Response Example
200 - Success Example
{
  "meta": {
    "status": "success",
    "statusCode": 200,
    "code": "USER_FIELD_UPDATED"
  },
  "message": "Update user field api success.",
  "data": {
    "_id": "66f000000000000000000010",
    "name": "Lifetime Trading Volume",
    "field": "trading_volume",
    "type": "numerical",
    "defaultValue": 0,
    "isCustom": true
  }
}
Modified at 2026-07-27 16:00:54
Previous
Get A User Field Definition
Next
Create A User Field Definition
Built with