Get a referral's AWS funding recommendation

GET https://api.suger.cloud/org/{orgId}/cosell/referral/{referralId}/fundingRecommendation

Ask AWS Partner Central which funding programs this co-sell referral qualifies for. Returns the funding overview — the agent's own assessment, which states plainly when no funding matches and what to do next — together with the other funding cards this deal qualifies for, each with the triggerId to request it. Those are listed, not run: every card is a separate call to the AWS agent, so ask for one by passing triggerId. Amounts in the text are estimates and eligibility assessments, not approvals; requesting the money is a separate funding application. A triggerId must be the funding overview or one of availableCards. When AWS has not answered within about 25 seconds the result has pending true and no content: the answer is still being generated, so call again in about a minute — that call returns the answer, or the error if AWS failed. Requires the organization to have connected the AWS Partner Central agent integration, and the referral to be an AWS referral already synced to ACE.

Parameters

NameInTypeRequiredDescription
orgId path string yes Organization ID
referralId path string yes Co-sell Referral ID
triggerId query string no Funding card to run, from availableCards; defaults to the funding overview

Responses

200 — OK

Content-Type: application/json · Schema: ReferralFundingRecommendation

ReferralFundingRecommendation fields:

FieldTypeRequiredDescription
availableCards array<FundingCardOption> no AvailableCards lists the other funding cards this deal qualifies for, with the trigger id to request each. NOT executed: every card is its own call to the AWS agent, so they are offered rather than spent, exactly as the Console offers them for a click.
awsOpportunityId string no AWSOpportunityID is the ACE opportunity the recommendation was requested against.
content array<string> no Content is the AWS agent's answer, one entry per block of prose.
ctas array<AwsMcpRecommendationAction> no CTAs are the actions the card offers, e.g. starting a POC funding request.
fromCache boolean no FromCache reports whether AWS was asked again or the stored answer was reused. Answers are kept per organization, opportunity and USER for 48 hours, so another caller — a person in the Console, say — does not warm this for an agent.
pending boolean no Pending is true when AWS had not answered within the wait: the answer is still being generated, so call again in about a minute with the same triggerId — that call returns it, or the error if AWS failed. Content is empty.
referralId string no ReferralID is the Fours referral this was computed for.
title string no Title is the card's own heading, as the Console shows it.
triggerId string no TriggerID is the card that produced Content — the funding overview unless one was asked for.

FundingCardOption fields:

FieldTypeRequiredDescription
hasCachedResponse boolean no HasCachedResponse reports that this card has already been answered for this caller, so asking for it will not cost another AWS round trip.
label string no
triggerId string no

AwsMcpRecommendationAction fields:

FieldTypeRequiredDescription
actionId string no
actionType AwsMcpActionType no
label string no
payload object no Payload carries action-specific parameters interpreted by client/backend action handlers.
permissionKey string no PermissionKey is an optional gate key checked by client before enabling this action.

400 — Not an AWS referral, never synced to ACE, or a triggerId this deal is not offered

Content-Type: application/json · Schema: ErrorResponse

ErrorResponse fields:

FieldTypeRequiredDescription
code ErrorCode no
info object no
message string no

404 — Referral not found

Content-Type: application/json · Schema: ErrorResponse

ErrorResponse fields:

FieldTypeRequiredDescription
code ErrorCode no
info object no
message string no

409 — AWS Partner Central not connected for this organization

Content-Type: application/json · Schema: ErrorResponse

ErrorResponse fields:

FieldTypeRequiredDescription
code ErrorCode no
info object no
message string no

500 — Internal server error

Content-Type: application/json · Schema: ErrorResponse

ErrorResponse fields:

FieldTypeRequiredDescription
code ErrorCode no
info object no
message string no

502 — AWS Partner Central could not answer

Content-Type: application/json · Schema: ErrorResponse

ErrorResponse fields:

FieldTypeRequiredDescription
code ErrorCode no
info object no
message string no

504 — AWS Partner Central did not answer in time

Content-Type: application/json · Schema: ErrorResponse

ErrorResponse fields:

FieldTypeRequiredDescription
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/referral/{referralId}/fundingRecommendation' \
  -H "Authorization: Bearer $SUGER_TOKEN"

Response — 200

{
  "availableCards": [
    {
      "hasCachedResponse": true,
      "label": "string",
      "triggerId": "01H0000000000000000000"
    }
  ],
  "awsOpportunityId": "01H0000000000000000000",
  "content": [
    "string"
  ],
  "ctas": [
    {
      "actionId": "01H0000000000000000000",
      "actionType": "OPEN_EXISTING_FLOW",
      "label": "string",
      "payload": {},
      "permissionKey": "string"
    }
  ],
  "fromCache": true,
  "pending": true,
  "referralId": "01H0000000000000000000",
  "title": "string",
  "triggerId": "01H0000000000000000000"
}

Error — 400

{
  "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.