Overview
The Integration API powers your user-facing applications, providing secure access to challenges, rewards, achievements, and community features. Built for mobile apps, web frontends, and third-party integrations, it enables users to engage with your gamified community while maintaining data security and user privacy.Base URL
Replace
{subdomain}
with your organization’s subdomain (e.g., acme-corp.nudj.cx
).Authentication
Integration tokens are scoped to specific organizations and provide user-level access. Each request operates within the context of the authenticated user. See the Authentication guide for token management.
Core Capabilities
Challenge Participation
Join challenges, complete actions, track progress
Reward System
Browse catalog, purchase with points, redeem prizes
Social Features
Create posts, comment, like, follow community activity
Achievement Tracking
Unlock achievements, claim badges, view progress
Leaderboard Competition
View rankings, track position, compete with others
Profile Management
Update profile, view stats, manage preferences
User Experience Areas
🎮 Challenge & Action System
Complete actions within challenges to earn points, XP, and rewards.Challenges
Challenges
User challenge lifecycle
- Browse available challenges
- View challenge details and requirements
- Start/unlock challenges
- Track progress through actions
- Complete challenges for rewards
GET /challenges
- List available challengesGET /challenges/{id}
- Challenge detailsPOST /challenges/{id}/start
- Begin challengePOST /challenges/{id}/complete
- Submit completionPOST /challenges/{id}/unlock
- Unlock restricted challenges
Actions
Actions
Action participation system
- View action requirements
- Submit action responses
- Track completion status
- Earn immediate rewards
- Social media actions (follow, share, post)
- Content engagement (read, watch, interact)
- Community participation (post, comment, like)
- External activities (surveys, links)
- Custom actions
GET /actions
- List all actionsGET /actions/{id}
- Action detailsPOST /action-participations
- Submit action completionGET /action-participations
- View your participations
Challenge Groups
Challenge Groups
Organized challenge collections
- Browse challenge categories
- View group progress
- Access themed challenges
- Track group achievements
GET /challenge-groups
- List groupsGET /challenge-groups/{id}
- Group details with challenges
🏆 Rewards & Incentives
Earn and redeem rewards through participation and achievements.Reward Catalog
Reward Catalog
Browse and acquire rewards
- View available rewards
- Check point requirements
- Purchase with points
- View reward details
GET /rewards
- Browse catalogGET /rewards/{id}
- Reward detailsPOST /rewards/{id}/purchase
- Buy with points
My Rewards
My Rewards
Personal reward management
- View owned rewards (assets)
- Check giveaway entries
- Redeem reward codes
- Track reward history
GET /me/rewards
- Your reward assetsGET /me/rewards/{assetId}
- Asset detailsPOST /me/rewards/{assetId}/redeem
- Redeem rewardGET /me/reward-entries
- Giveaway entriesPOST /me/reward-entries/{id}/check
- Check entry status
🎖️ Achievements & Progress
Track milestones and unlock achievements through engagement.Achievements
Achievements
Milestone tracking system
- View all achievements
- Track progress toward unlocking
- Claim unlocked achievements
- Earn badges and rewards
GET /achievements
- List all achievementsGET /achievements/{id}
- Achievement detailsPOST /achievements/{id}/claim
- Claim unlocked achievement
Badges & Streaks
Badges & Streaks
Recognition systems
- View earned badges
- Track active streaks
- Monitor consistency bonuses
GET /me/badges
- Your badgesGET /me/streaks
- Active streaks
📊 Leaderboards & Competition
Compete with other community members for top positions.Leaderboard Rankings
Leaderboard Rankings
Competitive standings
- View multiple leaderboard types
- Check current rankings
- Track your position
- See nearby competitors
GET /leaderboards/configs
- Available leaderboardsGET /leaderboards/{id}/data
- Full rankingsGET /leaderboards/{id}/position
- Your position
💬 Social & Community
Engage with the community through posts, comments, and interactions.Posts & Content
Posts & Content
Community content interaction
- View community posts
- Like and react to content
- Create comments
- Share thoughts
GET /posts
- List postsGET /posts/{id}
- Post detailsPOST /posts/{id}/like
- Like a postDELETE /posts/{id}/like
- UnlikeGET /posts/{id}/comments
- View commentsPOST /posts/{id}/comments
- Add comment
Comments
Comments
Community Info
Community Info
Community details and settings
- View community information
- Check active campaigns
- See community themes
- Access community links
GET /communities
- List communitiesGET /communities/{identifier}
- Community detailsGET /campaigns
- Active campaigns
👤 User Profile
Manage your profile and track personal progress.Profile Management
Profile Management
Personal information and settings
- View profile details
- Update information
- Manage preferences
- Track statistics
GET /me
- Your profilePATCH /me
- Update profile
Events & Bonuses
Events & Bonuses
Special events and bonuses
- View available events
- Claim event rewards
- Track special bonuses
GET /events
- Available eventsPOST /events/claim
- Claim event rewards
API Resource Groups
- Engagement
- Rewards
- User
- Configuration
Resource | Operations | Purpose |
---|---|---|
Challenges | GET, POST (start/complete/unlock) | Challenge participation |
Actions | GET | View available actions |
Action Participations | GET, POST | Submit and track action completions |
Challenge Groups | GET | Browse challenge categories |
Achievements | GET, POST (claim) | Milestone tracking |
Events | GET, POST (claim) | Special events and bonuses |
Quick Start Examples
Common User Flows
New User Onboarding
New User Onboarding
- Get user profile (
GET /me
) - View available challenges (
GET /challenges
) - Start onboarding challenge (
POST /challenges/{id}/start
) - Complete profile action (
POST /action-participations
) - Claim welcome achievement (
POST /achievements/{id}/claim
) - Check initial rewards (
GET /me/rewards
)
Daily Engagement
Daily Engagement
- Check active events (
GET /events
) - View daily challenges (
GET /challenges?type=daily
) - Complete daily actions (
POST /action-participations
) - Check streak status (
GET /me/streaks
) - View leaderboard position (
GET /leaderboards/{id}/position
) - Browse and interact with posts (
GET /posts
,POST /posts/{id}/like
)
Reward Redemption
Reward Redemption
- Browse reward catalog (
GET /rewards
) - Check point balance (
GET /me
) - Purchase reward (
POST /rewards/{id}/purchase
) - View owned rewards (
GET /me/rewards
) - Redeem reward code (
POST /me/rewards/{assetId}/redeem
)
Social Participation
Social Participation
Response Format
All Integration API responses follow a consistent structure:Error Handling
- Error Codes
- Error Response
Code | Description | Resolution |
---|---|---|
UNAUTHORIZED | Invalid or missing token | Check authentication |
FORBIDDEN | Insufficient permissions | Verify user access |
NOT_FOUND | Resource not found | Check resource ID |
VALIDATION_ERROR | Invalid input | Review request data |
ALREADY_COMPLETED | Action/challenge completed | No action needed |
INSUFFICIENT_POINTS | Not enough points | User needs more points |
Best Practices
- Performance
- User Experience
- Security
- Cache responses appropriately (challenges, rewards catalog)
- Paginate requests for large datasets
- Batch where possible to reduce API calls
- Use conditional requests with ETags when available
Pagination
Most list endpoints support pagination:Localization
The API supports multiple languages via headers:Rate Limiting
The Integration API enforces rate limits to ensure fair usage:- Check response headers for current limits
X-RateLimit-Remaining
: Requests remainingX-RateLimit-Reset
: When limit resets- Implement exponential backoff on 429 responses
Webhooks
Configure webhooks to receive real-time updates:- Challenge completed
- Achievement unlocked
- Reward redeemed
- Leaderboard position changed
POST /comments
- Create commentPUT /comments/{id}
- Edit commentPUT /posts/{postId}/comments/{commentId}
- Update post comment