Get Co-Sell Dashboard / Insights
GET https://api.suger.cloud/org/{orgId}/cosell/metric
Retrieve co-sell analytics for the organization. The response shape depends on the `page` query param: - (page omitted): legacy 12-month overview (Overview + CntMonthly only; a different schema from the page-specific responses below) - performance: aggregate KPIs over the period (pipeline, win rate, etc.) — pass `page=performance` explicitly - actions: outstanding referrals needing user action - logs: time-ordered execution log (returns ListOperationsResponse, not CosellDashboardData) Time window controlled by `period` (7d, 30d default, quarter, year, or `custom_<YYYY-MM-DD>_<YYYY-MM-DD>` for an explicit range). On the logs page, further narrow with `partner` (AWS / AZURE / GCP), `action`, `status` (Temporal workflow status: Running/Completed/Failed/Canceled/Terminated/ContinuedAsNew/TimedOut — NOT the Suger referral status enum), and `search` (free text or UUID). Use this when: user asks for co-sell KPIs, pipeline summary, or recent activity.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
orgId | path | string | yes | Organization ID |
contactId | query | string | no | Optional contact ID to filter referrals (legacy mode) |
page | query | string | no | Dashboard page: performance (default), actions, logs |
period | query | string | no | Time period: 7d, 30d (default), quarter, year |
nocache | query | boolean | no | Bypass cache and force fresh data |
action | query | string | no | Filter by cosell action type (logs page only, e.g. AutoCreate) |
partner | query | string | no | Filter by cloud partner (logs page only, e.g. AWS) |
status | query | string | no | Filter by Temporal execution status (logs page only). One of: Running, Completed, Failed, Canceled, Terminated, ContinuedAsNew, TimedOut. |
search | query | string | no | Search referrals by name, external ID, or UUID (logs page only) |
offsetToken | query | string | no | Pagination cursor for the logs page; echo the token from the previous response to fetch the next page |
pageSize | query | integer | no | Page size (logs page only). 1–100, default 50. |
Responses
200 — OK
Content-Type: application/json · Schema: CosellDashboardData
CosellDashboardData fields:
| Field | Type | Required | Description |
|---|---|---|---|
actions | CosellActionsData | no | |
closedWon | CosellClosedWonSummary | no | |
cntMonthly | array<CosellMonthlyTrend> | no | |
overview | CosellOverview | no | |
providerMetrics | array<CosellProviderMetric> | no | |
tcvMonthly | array<CosellMonthlyTCV> | no | |
topContacts | array<CosellTopContact> | no | |
trends | array<CosellTrendBucket> | no |
CosellActionsData fields:
| Field | Type | Required | Description |
|---|---|---|---|
actionRequired | array<CosellActionReferral> | no | |
duplicates | CosellDuplicateSummary | no | |
failureReasons | array<CosellFailureReason> | no | |
pendingAcceptance | array<CosellActionReferral> | no |
CosellClosedWonSummary fields:
| Field | Type | Required | Description |
|---|---|---|---|
mainCurrencyRevenue | CosellRevenueMetric | no | |
otherCurrencyRevenue | array<CosellRevenueMetric> | no | |
providerCounts | array<CosellProviderCount> | no | |
totalCount | integer | no | |
trendDelta | integer | no |
CosellMonthlyTrend fields:
| Field | Type | Required | Description |
|---|---|---|---|
inboundCount | integer | no | |
month | string | no | |
outboundCount | integer | no | |
total | integer | no |
CosellOverview fields:
| Field | Type | Required | Description |
|---|---|---|---|
activeCount | integer | no | |
avgPerDay | string | no | |
closedLostCount | integer | no | |
closedWonCount | integer | no | |
inboundWinRate | string | no | |
outboundWinRate | string | no | |
tcv | array<CosellTCVByCurrency> | no | |
totalCount | integer | no | |
winRate | string | no | |
winRateTrend | string | no | |
yoyGrowthRate | string | no |
CosellProviderMetric fields:
| Field | Type | Required | Description |
|---|---|---|---|
lostCount | integer | no | |
partner | string | no | |
totalCount | integer | no | |
winRate | string | no | |
winRateTrend | string | no | |
wonCount | integer | no |
CosellMonthlyTCV fields:
| Field | Type | Required | Description |
|---|---|---|---|
month | string | no | |
tcv | array<CosellTCVByMonth> | no |
CosellTopContact fields:
| Field | Type | Required | Description |
|---|---|---|---|
contactId | string | no | |
name | string | no | |
partner | string | no | |
referrals | integer | no | |
winRate | string | no | |
wonCount | integer | no |
CosellTrendBucket fields:
| Field | Type | Required | Description |
|---|---|---|---|
date | string | no | |
lostCount | integer | no | |
referralCount | integer | no | |
wonCount | integer | no |
CosellActionReferral fields:
| Field | Type | Required | Description |
|---|---|---|---|
account | string | no | |
direction | string | no | |
externalId | string | no | |
id | string | no | |
name | string | no | |
partner | string | no | |
stage | string | no | |
status | string | no |
CosellDuplicateSummary fields:
| Field | Type | Required | Description |
|---|---|---|---|
groups | array<CosellDuplicateGroup> | no | |
totalDuplicates | integer | no |
CosellFailureReason fields:
| Field | Type | Required | Description |
|---|---|---|---|
agentId | string | no | AgentID is unused and always empty. It referenced the legacy AI agent registry, which was deleted in PR 7849; nothing writes or reads this field. Retained only to avoid a breaking shape change to the published SDK. |
count | integer | no | |
errorMessage | string | no | |
referrals | array<CosellFailureRef> | no |
500 — Internal server error
Content-Type: application/json · Schema: ErrorResponse
ErrorResponse fields:
| Field | Type | Required | Description |
|---|---|---|---|
code | ErrorCode | no | |
info | object | no | |
message | string | no |
Example
Generated from this operation's schema. Values are placeholders —
substitute your own ids, and set SUGER_TOKEN to a bearer token
from the OAuth client-credentials exchange.
Request
curl -X GET 'https://api.suger.cloud/org/{orgId}/cosell/metric' \
-H "Authorization: Bearer $SUGER_TOKEN" Response — 200
{
"actions": {
"actionRequired": [
{
"account": "string",
"direction": "string",
"externalId": "01H0000000000000000000",
"id": "01H0000000000000000000",
"name": "Acme Corp",
"partner": "string",
"stage": "string",
"status": "string"
}
],
"duplicates": {
"groups": [
{
"crmId": "01H0000000000000000000",
"crmType": "string",
"duplicates": [],
"primary": {},
"reason": "string"
}
],
"totalDuplicates": 1
},
"failureReasons": [
{
"agentId": "01H0000000000000000000",
"count": 1,
"errorMessage": "string",
"referrals": [
{}
]
}
],
"pendingAcceptance": [
{
"account": "string",
"direction": "string",
"externalId": "01H0000000000000000000",
"id": "01H0000000000000000000",
"name": "Acme Corp",
"partner": "string",
"stage": "string",
"status": "string"
}
]
},
"closedWon": {
"mainCurrencyRevenue": {
"avgDealSize": 100,
"currency": "USD",
"totalAmount": 100
},
"otherCurrencyRevenue": [
{
"avgDealSize": 100,
"currency": "USD",
"totalAmount": 100
}
],
"providerCounts": [
{
"count": 1,
"partner": "string"
}
],
"totalCount": 1,
"trendDelta": 1
},
"cntMonthly": [
{
"inboundCount": 1,
"month": "string",
"outboundCount": 1,
"total": 1
}
],
"overview": {
"activeCount": 1,
"avgPerDay": "string",
"closedLostCount": 1,
"closedWonCount": 1,
"inboundWinRate": "string",
"outboundWinRate": "string",
"tcv": [
{
"activeAmount": 100,
"currency": "USD",
"totalAmount": 100
}
],
"totalCount": 1,
"winRate": "string",
"winRateTrend": "string",
"yoyGrowthRate": "string"
},
"providerMetrics": [
{
"lostCount": 1,
"partner": "string",
"totalCount": 1,
"winRate": "string",
"winRateTrend": "string",
"wonCount": 1
}
],
"tcvMonthly": [
{
"month": "string",
"tcv": [
{
"currency": "USD",
"totalAmount": 100
}
]
}
],
"topContacts": [
{
"contactId": "01H0000000000000000000",
"name": "Acme Corp",
"partner": "string",
"referrals": 1,
"winRate": "string",
"wonCount": 1
}
],
"trends": [
{
"date": "2026-01-31T12:00:00Z",
"lostCount": 1,
"referralCount": 1,
"wonCount": 1
}
]
} Error — 500
{
"code": "InternalServerError",
"message": "string"
} View as Markdown · Interactive API reference
Spotted something wrong or out of date on this page? Tell us and we'll correct it.