# Invite a partner to collaborate on an Azure referral (Azure only)

`POST https://api.suger.cloud/org/{orgId}/cosell/partner/AZURE/referral/{referralId}/invitePartner`

Send a collaboration invitation to another Microsoft partner on an existing Azure co-sell referral. This is part of Azure Partner Center's multi-partner co-sell flow and has no AWS / GCP equivalent.

Preconditions (handler will reject otherwise): the referral must already exist in Partner Center (has a non-empty `engagementId`), must be Outgoing (originated by your org), must not be Closed, and the invited partner must not be the owner or already invited.

Side effect: calls Microsoft Partner Center API. The invited partner will see the referral on their side and can accept / decline.

Use this when: user explicitly wants to invite another partner onto an Azure referral. Do NOT use for AWS or GCP referrals — those use different mechanisms.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `orgId` | path | string | yes | Organization ID |
| `referralId` | path | string | yes | Cosell Referral ID |

## Request Body

Required.

Content-Type: `application/json` · Schema: `InvitePartnerCollaborationRequest`

**`InvitePartnerCollaborationRequest`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `assistanceRequestCode` | string | yes | Help type |
| `currency` | string | yes |  |
| `dealValue` | number | yes |  |
| `estimatedCloseDate` | string | yes | Deal details for partner |
| `notes` | string | yes |  |
| `partnerOrganizationId` | string | yes | Partner info |
| `partnerOrganizationName` | string | yes |  |
| `solutions` | array<MicrosoftPartnerReferralSolution> | yes |  |
| `team` | array<MicrosoftPartnerReferralPerson> | yes | Team and Solutions |

**`MicrosoftPartnerReferralSolution`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `closingDateTime` | object | no |  |
| `currency` | object | no |  |
| `id` | string | no |  |
| `name` | string | no |  |
| `price` | object | no |  |
| `publisherName` | string | no |  |
| `quantity` | object | no |  |
| `solutionType` | string | no |  |
| `type` | string | no |  |

**`MicrosoftPartnerReferralPerson`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `contactPreference` | MicrosoftPartnerReferralContactPreference | no |  |
| `email` | string | no |  |
| `emailValidationStatus` | string | no |  |
| `firstName` | string | no |  |
| `lastName` | string | no |  |
| `linkedInProfileUrl` | string | no |  |
| `phoneNumber` | string | no |  |
| `phoneValidationStatus` | string | no |  |
| `title` | string | no |  |

**`MicrosoftPartnerReferralContactPreference`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `disableNotifications` | object | no |  |
| `locale` | object | no |  |

## Responses

### 201 — Collaboration invitation result

Content-Type: `application/json`

### 400 — Bad request error

Content-Type: `application/json` · Schema: `ErrorResponse`

**`ErrorResponse`** fields:

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `code` | ErrorCode | no |  |
| `info` | object | no |  |
| `message` | 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](https://doc.fours.com/settings/oauth-app/)._

### Request

```bash
curl -X POST 'https://api.suger.cloud/org/{orgId}/cosell/partner/AZURE/referral/{referralId}/invitePartner' \
  -H "Authorization: Bearer $SUGER_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{
  "assistanceRequestCode": "string",
  "currency": "USD",
  "dealValue": 100,
  "estimatedCloseDate": "2026-01-31T12:00:00Z",
  "notes": "string",
  "partnerOrganizationId": "01H0000000000000000000",
  "partnerOrganizationName": "Acme Corp",
  "solutions": [
    {
      "id": "01H0000000000000000000",
      "name": "Acme Corp",
      "publisherName": "Acme Corp",
      "solutionType": "string",
      "type": "string"
    }
  ],
  "team": [
    {
      "contactPreference": {},
      "email": "buyer@example.com",
      "emailValidationStatus": "buyer@example.com",
      "firstName": "Acme Corp",
      "lastName": "Acme Corp",
      "linkedInProfileUrl": "https://example.com",
      "phoneNumber": "string",
      "phoneValidationStatus": "string",
      "title": "string"
    }
  ]
}'
```

### Response — 201

```json
{}
```

### Error — 400

```json
{
  "code": "InternalServerError",
  "message": "string"
}
```

---

API reference: https://doc.fours.com/api/
