Call Analysis

JCWP Call Analysis API

Overview

The JCWP Call Analysis API provides machine-to-machine lookup of call analysis data (sentiment, tags, and status) from the JAS Connect Web Portal. Use it to retrieve analysis results for one or more calls by their CDR call ID.

Base URL

https://portal.jasconnect.com

Prerequisites

Before calling the API, confirm the following:

  • A registered client in JAS Connect (client ID and secret), issued by the JAS team
  • The CDR call ID(s) you want analysis for (the same UUID used in JAS Connect / 3CX)
  • Analysis must already exist in the portal for those calls (manual or automatic analysis)

Do not pass a relay or organization ID. Your registered-client token scopes the request to your organization.

Step 1: Obtain a Bearer Token

Use the same authentication flow as other JAS Connect APIs. Authenticate against the API gateway at api.jasconnect.com:

curl -sS -X POST "https://api.jasconnect.com/v2/auth/authenticate" \
  -u "<client-id>:<client-secret>"

Example response:

{
  "token": "<jwt>"
}

Use this value as Authorization: Bearer <jwt> on subsequent requests.

Tokens expire in about 1 hour. Call /auth/authenticate again to get a new one.

For full authentication details, see the Authentication guide.

Step 2: Request Call Analysis

Endpoint: GET /api/call-analysis

Single Call

curl -sS "https://portal.jasconnect.com/api/call-analysis?callId=00000000-01dd-5cd6-3999-d0f90003916d" \
  -H "Authorization: Bearer <token>"

Multiple Calls

Repeated query params:

curl -sS "https://portal.jasconnect.com/api/call-analysis?callIds=00000000-01dd-5cd6-3999-d0f90003916d&callIds=00000000-01dd-5cd6-754b-896300039176" \
  -H "Authorization: Bearer <token>"

Or comma-separated:

curl -sS "https://portal.jasconnect.com/api/call-analysis?callIds=00000000-01dd-5cd6-3999-d0f90003916d,00000000-01dd-5cd6-754b-896300039176" \
  -H "Authorization: Bearer <token>"

Query Parameters

ParameterDescription
callIdSingle CDR UUID
callIdsOne or more CDR UUIDs (repeat the param, or comma-separate)

Maximum batch size: 100 call IDs per request.

Response

Success (200)

{
  "data": [
    {
      "call_id": "00000000-01dd-5cd6-3999-d0f90003916d",
      "status": "Completed",
      "sentiment_score": 0.72,
      "sentiment_label": "Positive",
      "tags": ["follow-up", "renewal"]
    }
  ]
}

Response Fields

FieldDescription
call_idCDR UUID requested
statusAnalysis status (e.g. Completed, Processing)
sentiment_scoreNumeric sentiment score when available
sentiment_labelSentiment label when available
tagsTag names applied to the analysis

Error Handling

StatusMeaning
400Missing or invalid callId / callIds, or batch too large
401Missing or invalid Bearer token
404No analysis found for one or more requested call IDs (not analyzed yet, or not on your account)
500Unexpected server error

Notes

  • Only calls that already have portal analysis return data; otherwise the API responds with 404.
  • Call IDs must belong to the organization tied to your registered client.

Contact

For any questions or issues, please contact: