List Co-Sell Leads
GET https://api.suger.cloud/org/{orgId}/cosell/lead
List AWS Partner Central co-sell leads for the organization. A lead is an early, inbound-only stage that precedes a co-sell opportunity (referral): AWS sends a lead as an engagement invitation that the partner accepts, qualifies, and can convert into an opportunity. Each lead carries the company name, invitation status, qualification status, the derived unified status, the expiration date, and the time it was received. invitationStatus=PENDING returns the invitations nobody has accepted yet. The two Console views (Lead Invitations vs Leads) are filters over this one list: filter by invitationStatus (PENDING / ACCEPTED / REJECTED / EXPIRED), by qualificationStatus (the free-text funnel value, e.g. Open / Research / Qualified / Disqualified), or by the derived unified status.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
orgId | path | string | yes | Organization ID |
invitationStatus | query | string | no | Filter by invitation status: PENDING, ACCEPTED, REJECTED, EXPIRED |
qualificationStatus | query | string | no | Filter by qualification status (free text, e.g. Open, Research, Qualified, Disqualified) |
status | query | string | no | Filter by derived unified status |
salesforceOpportunityId | query | string | no | Filter by the linked Salesforce Opportunity id (used by the Salesforce app's Opportunity-related lead panel) |
salesforceAccountId | query | string | no | Filter by Salesforce Account: matches either the Account a lead was enriched FROM or the Account it is linked TO through CRM linkage. Used by the widget's Leads section on an Account or an Opportunity. |
offset | query | integer | no | Pagination offset (default 0) |
limit | query | integer | no | Page size, 1-200 (default 50) |
Responses
200 — OK
Content-Type: application/json
CosellLead fields:
| Field | Type | Required | Description |
|---|---|---|---|
companyName | string | no | CompanyName holds the value of the "company_name" field. |
contextId | string | no | ContextID holds the value of the "context_id" field. |
convertedAt | string | no | ConvertedAt holds the value of the "converted_at" field. |
convertedOpportunityId | string | no | ConvertedOpportunityID holds the value of the "converted_opportunity_id" field. |
convertedReferralId | string | no | ConvertedReferralID holds the value of the "converted_referral_id" field. |
creationRetryCount | integer | no | CreationRetryCount holds the value of the "creation_retry_count" field. |
creationTime | string | no | CreationTime holds the value of the "creation_time" field. |
direction | Direction | no | |
enrichmentStatus | string | no | EnrichmentStatus holds the value of the "enrichment_status" field. |
enrichmentTaskId | string | no | EnrichmentTaskID holds the value of the "enrichment_task_id" field. |
errorMessages | array<string> | no | ErrorMessages holds the value of the "error_messages" field. |
expirationDate | string | no | ExpirationDate holds the value of the "expiration_date" field. |
externalCreationTime | string | no | ExternalCreationTime holds the value of the "external_creation_time" field. |
externalId | string | no | ExternalID holds the value of the "external_id" field. |
externalLastUpdateTime | string | no | ExternalLastUpdateTime holds the value of the "external_last_update_time" field. |
hubspotDealId | string | no | HubspotDealID holds the value of the "hubspot_deal_id" field. |
id | string | no | ID of the ent. |
info | LeadInfo | no | |
invitationId | string | no | InvitationID holds the value of the "invitation_id" field. |
invitationStatus | InvitationStatus | no | |
lastUpdateTime | string | no | LastUpdateTime holds the value of the "last_update_time" field. |
name | string | no | Name holds the value of the "name" field. |
organizationId | string | no | OrganizationID holds the value of the "organization_id" field. |
partner | CosellleadPartner | no | |
qualificationStatus | string | no | QualificationStatus holds the value of the "qualification_status" field. |
salesforceAccountId | string | no | SalesforceAccountID holds the value of the "salesforce_account_id" field. |
salesforceContactId | string | no | SalesforceContactID holds the value of the "salesforce_contact_id" field. |
salesforceLeadId | string | no | SalesforceLeadID holds the value of the "salesforce_lead_id" field. |
salesforceOpportunityId | string | no | SalesforceOpportunityID holds the value of the "salesforce_opportunity_id" field. |
salesforceSugerLeadId | string | no | SalesforceSugerLeadID holds the value of the "salesforce_suger_lead_id" field. |
status | string | no | Status holds the value of the "status" field. |
LeadInfo fields:
| Field | Type | Required | Description |
|---|---|---|---|
aceLeadContext | LeadContext | no | |
aceLeadInvitation | LeadInvitationPayload | no | |
aceProspectingResult | ProspectingResult | no | |
lastEnrichmentTime | string | no | LastEnrichmentTime is when enrichment last reached A TERMINAL outcome — ENRICHED, NO_DATA or FAILED. Written by UpdateCosellLeadEnrichmentState and read only by the 30-day re-enrichment gate on the manual Enrich endpoint. Nil means enrichment never finished for this lead, which is also what every row written before the field existed reads as. Here rather than in a column because it has one writer, one reader, and is never a query predicate — the same reasoning that put AceProspectingResult here. FAILED is included deliberately. If only the successful outcomes wrote it, a lead that keeps failing would never get a value, the gate could never engage, and every manual Enrich click would start another AWS prospecting task on an endpoint with no rate limit. |
LeadContext fields:
| Field | Type | Required | Description |
|---|---|---|---|
Customer | LeadCustomer | no | |
Insights | LeadInsights | no | |
Interactions | array<LeadInteraction> | no | |
QualificationStatus | string | no |
LeadInvitationPayload fields:
| Field | Type | Required | Description |
|---|---|---|---|
Customer | LeadInvitationCustomer | no | |
Interaction | LeadInvitationInteraction | no |
ProspectingResult fields:
| Field | Type | Required | Description |
|---|---|---|---|
Aws | ProspectingResultAws | no |
LeadCustomer fields:
| Field | Type | Required | Description |
|---|---|---|---|
Address | LeadAddress | no | |
AwsMaturity | string | no | |
CompanyName | string | no | |
Industry | string | no | |
MarketSegment | string | no | |
WebsiteUrl | string | no |
LeadInsights fields:
| Field | Type | Required | Description |
|---|---|---|---|
LeadReadinessScore | string | no |
LeadInteraction fields:
| Field | Type | Required | Description |
|---|---|---|---|
BusinessProblem | string | no | |
Contact | LeadContact | no | |
CustomerAction | string | no | |
InteractionDate | string | no | |
SourceId | string | no | |
SourceName | string | no | |
SourceType | string | no | |
Usecase | string | no |
LeadInvitationCustomer fields:
| Field | Type | Required | Description |
|---|---|---|---|
AwsMaturity | string | no | |
CompanyName | string | no | |
CountryCode | string | no | |
Industry | string | no | |
MarketSegment | string | no | |
WebsiteUrl | string | no |
LeadInvitationInteraction fields:
| Field | Type | Required | Description |
|---|---|---|---|
ContactBusinessTitle | string | no | |
SourceId | string | no | |
SourceName | string | no | |
SourceType | string | no | |
Usecase | string | no |
ProspectingResultAws fields:
| Field | Type | Required | Description |
|---|---|---|---|
Customer | ProspectingResultCustomer | no | |
EndTime | string | no | |
Insights | ProspectingInsights | no | |
StartTime | string | no | |
TaskArn | string | no | |
TaskId | string | no | |
TaskName | string | no |
LeadAddress fields:
| Field | Type | Required | Description |
|---|---|---|---|
City | string | no | |
CountryCode | string | no | |
PostalCode | string | no | |
StateOrRegion | string | 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/lead' \
-H "Authorization: Bearer $SUGER_TOKEN" Response — 200
[
{
"companyName": "Acme Corp",
"contextId": "01H0000000000000000000",
"convertedAt": "string",
"convertedOpportunityId": "01H0000000000000000000",
"convertedReferralId": "01H0000000000000000000",
"creationRetryCount": 1,
"creationTime": "2026-01-31T12:00:00Z",
"direction": "INBOUND",
"enrichmentStatus": "string",
"enrichmentTaskId": "01H0000000000000000000",
"errorMessages": [
"string"
],
"expirationDate": "2026-01-31T12:00:00Z"
}
] Error — 500
{
"code": "InternalServerError",
"message": "string"
} View as Markdown · API reference overview
Spotted something wrong or out of date on this page? Tell us and we'll correct it.