1. Chart Analysis
Returning.AI
  • Getting Started
  • Authentication
    • Secure Auth
      GET
    • register
      POST
    • verify email
      POST
    • login
      POST
  • Users
    • Get user
      GET
    • Get Users with Filters
      POST
    • Create New User
      POST
    • Get User Data
      POST
    • Manage User Account
      POST
    • Get User Gamification Stats
      POST
    • Get all mini game logs by user email
      POST
    • Get user's current Mini Games and Streak stats
      POST
  • Roles & Permissions
    • role list of server
      GET
    • create new role
      POST
    • update role
      PUT
    • delete role
      DELETE
    • get role list of user on a server
      GET
    • add role to a user on a server
      POST
    • remove role from a user on a server
      POST
  • Servers
    • create new server
    • get my servers
    • update server
  • Channels
    • channel list of server
    • get channels list
    • create new channel
    • update channel
    • delete channel
    • Get Channels List
  • Messaging
    • Get Messages
    • Send Message
    • Reply Message
    • React Message
    • Upload Image
  • User Data
    • Get All User Fields
    • Get Specific User Field
    • Create Custom User Field
    • Update Custom User Field
    • Delete Custom User Field
    • 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
  • Gamification
    • get badges list
    • create new badge
    • update badge
    • delete badge
    • remove badge from user
    • award badge to user
    • Get Tier Info
    • Get User Gamification History
    • Get User Gamification Logs
  • Streaks & Mini Games
    • Streak Logs
      • Get Streak Logs
  • Rewards & Redemptions
    • Update redemption transaction status
    • Get all redemption transactions by user email
    • Get All Redemption Statuses
    • Get Redemption Status by ID
    • Get all redemption transactions by Community
    • Create Redemption Status
  • Chart Analysis
    • Create Analysis
      POST
    • Get Analysis
      GET
    • Update Analysis
      PATCH
    • Delete Analysis
      DELETE
    • List Analyses
      GET
    • Append Drawings
      POST
  • Bulk Operations
    • Bulk Import
    • Get All Bulk Update
    • Check Bulk Update Status
    • Check Bulk Update Details
    • Bulk Update
    • Premium Currency Bulk Update
  • Application API
    • Community Users
      • Get community users
      • Get user
  • Integration API
  • Channels
    • Iframe
  • 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
  • Features
  • Schemas
    • Sample Schemas
      • Pet
      • Category
      • Tag
    • Schemas
      • 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
    • Outgoing webhooks
      • Purchased store item
      • New message posted to channel
      • User visits server
      • User join server
      • ErrorResponse
    • Analysis
      • UpdateAnalysisRequest
      • AppendDrawingsRequest
      • CreateAnalysisResponse
      • GetAnalysisResponse
      • UpdateAnalysisResponse
      • AppendDrawingsResponse
      • AnalysisMetadata
      • Expiry
      • Levels
      • LevelEntry
      • Drawing
      • HorizontalLineDrawing
      • LineDrawing
      • RectangleDrawing
      • ParallelDrawing
      • FibonacciRetracementDrawing
      • Coordinate
      • DrawingStyle
      • AnalysisDetail
      • AnalysisSummary
      • CreateAnalysisRequest
      • ListAnalysesResponse
  1. Chart Analysis

Create Analysis

POST
/v1/analysis/{communityId}/channels/{channelId}
Creates a new technical chart analysis with:
Multi-level support/resistance system
Chart drawings (HORIZONTAL_LINE, LINE, RECTANGLE, PARALLEL, FIB_RETRACEMENT)
Text-to-object linking with [[objectId:text]] syntax
Client→Persisted ID mapping

Analysis Types#

Analysis type is auto-determined by direction + entryPlacement:
bullish_breakout: BULLISH + ABOVE_CURRENT
bullish_bounce: BULLISH + BELOW_CURRENT
bearish_bounce: BEARISH + ABOVE_CURRENT
bearish_breakout: BEARISH + BELOW_CURRENT

Webhook Events#

Triggers create_analysis webhook event with full analysis payload.

Bot Notifications#

Publishes to Redis channel bot:notification with otpId, serverId, userId, channelId.

Request

Authorization
JWT Bearer
Add the parameter
Authorization
to Headers
Example:
Authorization: ********************
or
Path Params

Body Params application/jsonRequired

Examples

Responses

🟢200
application/json
Analysis created successfully
Body

🟠400BadRequest
🟠401Unauthorized
🔴500InternalServerError
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://api.returning.ai/v1/analysis/6502c9e514a3e564c5c09c0a/channels/656966caae59563fb291b324' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "sender": "pangray2025+t5@gmail.com",
    "metadata": {
        "direction": "BULLISH",
        "entryPlacement": "BELOW_CURRENT",
        "expiry": {
            "type": "HOURS",
            "hours": 24
        },
        "title": "GBPUSD Bullish Bounce from Support",
        "preferenceText": "Price bounced from [[support_zone:demand zone]]. Entry above [[entry_line:breakout level]] with target at [[target:resistance]].",
        "alternativeText": "If price breaks below support, analysis invalidated",
        "comments": "Watch for volume confirmation",
        "timeframe": "H1",
        "symbol": "GBP/USD"
    },
    "levels": {
        "pivot": {
            "price": 1.345,
            "clientObjectId": "pivot_main",
            "time": "2026-01-08T12:00:00Z"
        },
        "resistance": {
            "price": 1.35,
            "clientObjectId": "res_1",
            "time": "2026-01-08T14:00:00Z"
        },
        "support": {
            "price": 1.341,
            "clientObjectId": "sup_1",
            "time": "2026-01-08T10:00:00Z"
        }
    },
    "drawings": [
        {
            "type": "RECTANGLE",
            "clientObjectId": "support_zone",
            "points": [
                {
                    "time": "2026-01-08T00:00:00Z",
                    "price": 1.338
                },
                {
                    "time": "2026-01-09T00:00:00Z",
                    "price": 1.347
                }
            ],
            "style": {
                "fillColor": "#00FF33",
                "borderColor": "#00FF00",
                "lineWidth": 2
            }
        },
        {
            "type": "LINE",
            "clientObjectId": "entry_line",
            "points": [
                {
                    "time": "2026-01-08T00:00:00Z",
                    "price": 1.3485
                },
                {
                    "time": "2026-01-09T00:00:00Z",
                    "price": 1.3505
                }
            ],
            "startHead": "NONE",
            "endHead": "ARROW",
            "style": {
                "color": "#0000FF",
                "lineWidth": 2,
                "lineStyle": "DASHED"
            }
        },
        {
            "type": "HORIZONTAL_LINE",
            "clientObjectId": "target",
            "points": [
                {
                    "time": "2026-01-08T10:00:00Z",
                    "price": 1.355
                }
            ],
            "style": {
                "color": "#FF0000",
                "lineWidth": 2,
                "lineStyle": "SOLID"
            }
        }
    ],
    "idempotencyKey": "analysis_20250109_001"
}'
Response Response Example
200 - Success
{
    "status": "success",
    "message": "Analysis created successfully",
    "data": {
        "analysisId": "507f1f77bcf86cd799439022",
        "objectIdMap": {
            "pivot_main": "60d5ec49f1b2c8b1f8e4c8a1:8",
            "res_1": "60d5ec49f1b2c8b1f8e4c8a1:7",
            "sup_1": "60d5ec49f1b2c8b1f8e4c8a1:0",
            "res_int": "60d5ec49f1b2c8b1f8e4c8a1:5",
            "sup_int": "60d5ec49f1b2c8b1f8e4c8a1:2",
            "support_zone": "60d5ec49f1b2c8b1f8e4c8a2",
            "entry_line": "60d5ec49f1b2c8b1f8e4c8a3",
            "target": "60d5ec49f1b2c8b1f8e4c8a4"
        }
    }
}
Modified at 2026-04-07 08:47:50
Previous
Create Redemption Status
Next
Get Analysis
Built with