Udostępnij za pośrednictwem


Utworzenie polecenia

W tym artykule wyjaśniono, jak utworzyć odwołanie.

Wymagania wstępne

  • Poświadczenia zgodnie z opisem w temacie Uwierzytelnianie interfejsu API poleceń. Ten scenariusz obsługuje uwierzytelnianie przy użyciu poświadczeń aplikacji i użytkownika.

Żądanie REST

Składnia żądania

Method Identyfikator URI żądania
POST https://api.partner.microsoft.com/v1.0/engagements/referrals

Nagłówki żądań

Treść żądania

W tej tabeli opisano właściwości polecenia w treści żądania dla zupełnie nowego odwołania.

Właściwość Type opis
Nazwa/nazwisko string Nazwa polecenia.
ExternalReferenceID string Identyfikator zewnętrzny polecenia. Na przykład własne Dynamics 365 potencjalnego klienta lub identyfikatora szansy sprzedaży.
Stan ReferralStatus Wyliczenie z wartościami wskazującymi stan odwołania.
Stan podrzędny PoleceniaPodsubstatus Wyliczenie z wartościami wskazującymi podstatu odwołania.
StatusReason string Opisowy komunikat o stanie. Na przykład wyjaśnij, dlaczego odwołanie zostało utracone.
Typ polecenia Typ polecenia Reprezentuje typ odwołania. Wymagany.
kwalifikacje OdwołanieQualification Reprezentuje jakość polecenia.
CustomerProfile CustomerProfile Informacje kontaktowe klienta. Wymagany.
Zgoda Zgoda Flagi zgody dotyczące udostępniania informacji innym organizacjom i umożliwiają im kontaktowanie się z użytkownikami.Wymagane.
Szczegóły PoleceniaSzczegóły Szczegóły klienta, uwagi, wartość transakcji, data zamknięcia waluty. Wymagany.
Zespół Członek Reprezentuje użytkowników w organizacjach zaangażowanych w zaangażowanie partnera.
Zaproścontext Zaproścontext Przedstawia więcej informacji, które użytkownik może podać podczas zapraszania innej organizacji do zaangażowania partnera.
Obiekt docelowy ReferralTarget Przedstawia więcej informacji, które użytkownik może podać podczas zapraszania innej organizacji do zaangażowania partnera.
Rola partnera PartnerRole Wymagane tylko w przypadku poleceń wspólnej sprzedaży usług
Obszar rozwiązania Obszar rozwiązania Obszar Rozwiązanie klienta musi mieć szansę sprzedaży. Wymagane tylko w przypadku poleceń wspólnej sprzedaży usług
Odtwórz rozwiązanie SolutionPlay Gra w rozwiązanie potrzebne klientowi w szansie sprzedaży. Wymagane tylko w przypadku poleceń wspólnej sprzedaży usług

Przykład żądania

Ważne

W tym przykładowym żądaniu opisano sposób tworzenia odwołania prywatnego z minimalnymi wymaganymi informacjami. Zwróć uwagę, że kluczowym parametrem umożliwiającym wykonanie tego odwołania jest zgodaToShareReferralWithMicrosoftSellers.

POST https://api.partner.microsoft.com/v1.0/engagements/referrals HTTP/1.1
Authorization: Bearer <token>
Host: api.partner.microsoft.com
Content-Type: application/json

 {
	"name": "Contoso Test Deal - [Private]",
	"qualification": "SalesQualified",
	"type": "Independent",
	"customerProfile": {
		"name": "Contoso Customer Inc",
		"address": {
			"addressLine1": "One Microsoft Way",
			"addressLine2": "34",
			"city": "Redmond",
			"state": "WA",
			"postalCode": "98052",
			"country": "US"
		},
		"size": "10to50employees",
		"team": [
			{
				"firstName": "Sue",
				"lastName": "Smith",
				"phoneNumber": "1234567890",
				"email": "sue.smith@contosocustomer.com"
			}
		]
	},
	"consent": {
		"ConsentToToShareInfoWithOthers": true,
		"ConsentToContact": true,
		"ConsentToMicrosoftToContactSpecificPartners": true,
		"consentToShareReferralWithMicrosoftSellers": false
	},
	"details": {
		"notes": "Customer is looking to leverage Dynamics 365 to manage their supply chain. There's also a need to leverage a set of custom apps to enable their business processes.",
		"dealValue": 50000,
		"currency": "USD",
		"closingDateTime": "2024-11-14T00:00:00Z",
		"requirements": {
			"solutions": [
				{
					"type": "Name",
					"id": "SOL-15974-MQF",
					"name": "Contoso-Ale_Test",
					"publisherName": "Contoso_Test",
					"solutionType": "3P"
				}
			],
			"additionalRequirements": {
				"iot": {},
				"attributes": [
					{
						"id": "HaveNotDecided",
						"type": "CustomerMarketplaceIntent"
					}
				]
			}
		}
	},
	"team": [
		{
			"firstName": "John",
			"lastName": "Doe",
			"phoneNumber": "1231231234",
			"email": "john.doe@contoso.com"
		}
	],
	"target": [],
	"mpnId": "<ENTER PARTNER_ID>"
}

Odpowiedź REST

Jeśli ta metoda powiedzie się, ta metoda zwraca wypełniony zasób polecenia w treści odpowiedzi.

Kody powodzenia i błędów odpowiedzi

Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i więcej informacji o debugowaniu. Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i inne parametry. Aby uzyskać pełną listę, zobacz Kody błędów.

Przykład odpowiedzi

{
	"id": "4eb82669-ccf8-4856-86fc-b9ffe116376b",
	"engagementId": "6d72b13d-8584-4bba-a642-6800b8e32330",
	"name": "Contoso Test Deal - [Private]",
	"organizationId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
	"organizationName": "Contoso Pvt Ltd",
	"lastModifiedVia": "4990cffe-04e8-4e8b-808a-1175604b879f",
	"target": [],
	"createdDateTime": "2024-07-27T14:57:00.0952954Z",
	"updatedDateTime": "2024-07-27T14:57:00.0952954Z",
	"status": "Active",
	"substatus": "Accepted",
	"qualification": "SalesQualified",
	"type": "Independent",
	"customerProfile": {
		"name": "Contoso Customer Inc",
		"address": {
			"addressLine1": "One Microsoft Way",
			"addressLine2": "34",
			"city": "Redmond",
			"state": "WA",
			"postalCode": "98052",
			"country": "US"
		},
		"size": "10to50employees",
		"team": [
			{
				"contactPreference": {
					"locale": "en-us",
					"disableNotifications": false
				},
				"firstName": "Sue",
				"lastName": "Smith",
				"phoneNumber": "1234567890",
				"email": "sue.smith@contosocustomer.com",
				"emailValidationStatus": "None",
				"phoneValidationStatus": "None"
			}
		],
		"ids": [],
		"isMatchingComplete": false
	},
	"consent": {
		"consentToToShareInfoWithOthers": true,
		"consentToContact": true,
		"ConsentToMicrosoftToContactSpecificPartners": true,
		"consentToShareReferralWithMicrosoftSellers": false
	},
	"details": {
		"notes": "Customer is looking to leverage Dynamics 365 to manage their supply chain. There's also a need to leverage a set of custom apps to enable their business processes.",
		"dealValue": 50000.0,
		"currency": "USD",
		"closingDateTime": "2024-11-14T00:00:00Z",
		"requirements": {
			"industries": [],
			"products": [],
			"services": [],
			"solutions": [
				{
					"name": "Contoso-Ale_Test",
					"type": "Name",
					"publisherName": "Contoso_Test",
					"solutionType": "3P",
					"id": "SOL-15974-MQF"
				}
			],
			"additionalRequirements": {
				"iot": {
					"azureCertifiedDevice": false,
					"attachServices": false
				},
				"attributes": [
					{
						"type": "CustomerMarketplaceIntent",
						"id": "HaveNotDecided"
					}
				]
			}
		}
	},
	"team": [
		{
			"contactPreference": {
				"locale": "en-us",
				"disableNotifications": false
			},
			"firstName": "John",
			"lastName": "Doe",
			"phoneNumber": "1231231234",
			"email": "john.doe@contoso.com",
			"emailValidationStatus": "None",
			"phoneValidationStatus": "None"
		}
	],
	"inviteContext": {
		"invitedBy": {
			"organizationId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
			"organizationName": "Contoso Pvt Ltd"
		},
		"assistanceRequestCode": "Unknown",
		"invitedMpnId": "<PARTNER_ID>"
	},
	"favorite": false,
	"trackingInfo": {},
	"direction": "Outgoing",
	"mpnId": "<PARTNER_ID>",
	"dealSensitivity": "None",
	"createdVia": "4990cffe-04e8-4e8b-808a-1175604b879f",
	"acceptedDateTime": "2024-07-27T14:56:59.2938209Z",
	"registrationStatus": "None",
	"links": {
		"relatedReferrals": {
			"uri": "https://api.partner.microsoft.com/v1.0/engagments/referrals?$filter=engagementId eq '6d72b13d-8584-4bba-a642-6800b8e32330'",
			"method": "GET"
		},
		"self": {
			"uri": "https://api.partner.microsoft.com/v1.0/engagments/referrals/4eb82669-ccf8-4856-86fc-b9ffe116376b",
			"method": "GET"
		}
	}
}

Tworzenie transakcji wspólnej sprzedaży lub udostępnionego polecenia

Istnieją dwa kroki tworzenia transakcji wspólnej sprzedaży lub odwołania typu udostępnionego polecenia:

  1. Tworzenie transakcji prowadzonej przez partnera widocznej dla sprzedawców firmy Microsoft
  2. Tworzenie polecenia firmy Microsoft przy użyciu szczegółów poleceń partnera

Poniższy schemat blokowy ilustruje te dwa kroki tworzenia współużytkowanego odwołania.

Wykres blokowy przedstawiający udostępnione odwołanie z dwoma odwołaniami połączonymi za pośrednictwem interfejsu API.

Krok 1. Tworzenie transakcji prowadzonej przez partnera widocznej dla sprzedawców firmy Microsoft

Najpierw utwórz transakcję prowadzoną przez partnera widoczną dla sprzedawców firmy Microsoft przy użyciu następującego ładunku żądania.

Ważne

Należy pamiętać, że w celu utworzenia polecenia prowadzonego przez partnera wyrażenie zgodyToShareReferralWithMicrosoftSellers jest podane jako true. Aktywne polecenie prywatne można przekonwertować tylko na prowadzone przez partnera , aktualizując odwołanie dla tego pola.

POST https://api.partner.microsoft.com/v1.0/engagements/referrals HTTP/1.1
Authorization: Bearer <token>
Host: api.partner.microsoft.com
Content-Type: application/json

 {
	"name": "Contoso Test Deal - [PartnerLed]",
	"qualification": "SalesQualified",
	"type": "Shared",
	"customerProfile": {
		"name": "Contoso Customer Inc",
		"address": {
			"addressLine1": "One Microsoft Way",
			"addressLine2": "34",
			"city": "Redmond",
			"state": "WA",
			"postalCode": "98052",
			"country": "US"
		},
		"size": "10to50employees",
		"team": [
			{
				"firstName": "Sue",
				"lastName": "Smith",
				"phoneNumber": "1234567890",
				"email": "sue.smith@contosocustomer.com"
			}
		]
	},
	"consent": {
		"ConsentToToShareInfoWithOthers": true,
		"ConsentToContact": true,
		"ConsentToMicrosoftToContactSpecificPartners": true,
		"consentToShareReferralWithMicrosoftSellers": true
	},
	"details": {
		"notes": "Customer is looking to leverage Dynamics 365 to manage their supply chain. There's also a need to leverage a set of custom apps to enable their business processes.",
		"dealValue": 50000,
		"currency": "USD",
		"closingDateTime": "2024-11-14T00:00:00Z",
		"requirements": {
			"solutions": [
				{
					"type": "Name",
					"id": "SOL-15974-MQF",
					"name": "Contoso-Ale_Test",
					"publisherName": "Contoso_Test",
					"solutionType": "3P"
				}
			],
			"additionalRequirements": {
				"iot": {},
				"attributes": [
					{
						"id": "HaveNotDecided",
						"type": "CustomerMarketplaceIntent"
					}
				]
			}
		}
	},
	"team": [
		{
			"firstName": "John",
			"lastName": "Doe",
			"phoneNumber": "1231231234",
			"email": "john.doe@contoso.com"
		}
	],
	"target": [],
	"mpnId": "<ENTER PARTNER_ID>"
}

ReferralTarget reprezentuje dodatkowe informacje, które partner może dostarczyć podczas zapraszania innych organizacji do zaangażowania. Aby określić element docelowy w odwołaniu dla typu SolutionProfile, oto przykładowa wartość odwołania:

"target": [
        {
            "type": "SolutionProfile",
            "id": "SOL-ABC-DEF"
        }
    ]

Uwaga

Typ pola podany jako Niezależny lub Udostępniony w danych wejściowych żądania jest tylko wartością wskazującą i nie ma wpływu na typ transakcji. Rzeczywista wartość przypisana w interfejsie API na podstawie innych parametrów, takich jak zgoda i inviteContext.

Krok 2. Tworzenie polecenia firmy Microsoft przy użyciu szczegółów poleceń partnera

Następnie utwórz odwołanie firmy Microsoft za pośrednictwem innego wywołania interfejsu API i połącz je z poleceniem Partner przy użyciu pola Identyfikator zakontraktowania zwróconego z kroku 1.

POST https://api.partner.microsoft.com/v1.0/engagements/referrals HTTP/1.1
Authorization: Bearer <token>
Host: api.partner.microsoft.com
Content-Type: application/json

{
    "engagementId": "<ENGAGEMENT_ID (FROM PARTNER REFERRAL)>",
    "organizationId": "msft",
    "organizationName": "Microsoft",
    "name": "Contoso Test Deal",
    "type": "Shared",
    "qualification": "SalesQualified",
    "customerProfile": {
		"name": "Contoso Customer Inc",
		"address": {
			"addressLine1": "One Microsoft Way",
			"addressLine2": "34",
			"city": "Redmond",
			"state": "WA",
			"postalCode": "98052",
			"country": "US"
		},
		"size": "10to50employees",
		"team": [
			{
				"firstName": "Sue",
				"lastName": "Smith",
				"phoneNumber": "1234567890",
				"email": "sue.smith@contosocustomer.com",
				"emailValidationStatus": "None",
				"phoneValidationStatus": "None"
			}
		],
		"isMatchingComplete": false
	},
    "consent": {
        "consentToToShareInfoWithOthers": true,
        "consentToContact": true,
        "ConsentToMicrosoftToContactSpecificPartners": true,
        "consentToShareReferralWithMicrosoftSellers": true
    },
    "details": {
        "notes": "Test notes to Microsoft.",
        "dealValue": 50000.0,
	"currency": "USD",
        "closingDateTime": "2024-11-14T00:00:00Z"
    },
    "team": [],
    "inviteContext": {
        "notes": "Proof of concept / Demo , Test notes to Microsoft.",
        "invitedBy": {
            "organizationId": "<ORGANIZATION_ID (FROM PARTNER REFERRAL)>",
            "organizationName": "<ORGANIZATION_NAME (FROM PARTNER REFERRAL)>"
        },
        "assistanceRequestCode": "ProofOfConceptOrDemo"
    },
    "target": []
}

Aby określić polecenie ReferralTarget dla polecenia firmy Microsoft, poniżej przedstawiono przykładową wartość do celów referencyjnych:

"target": [
        {
            "type": "BusinessProfileLocation",
            "id": "msft"
        }
    ]

Tworzenie szans wspólnej sprzedaży usług

  1. Aby utworzyć szansę wspólnej sprzedaży usług, PartnerRole, SolutionArea i SolutionPlay muszą być podane w dodatkowych wymaganiach dotyczących szczegółowych > wymagań>.
  2. Szczegóły rozwiązania są opcjonalne w obszarze Możliwości wspólnej sprzedaży usług.
"details": {
		"dealValue": 123456,
		"currency": "USD",
		"closingDateTime": "2025-01-21T18:30:00.000Z",
		"notes": "Test Notes",
		"requirements": {
			"solutions": [],
			"additionalRequirements": {
				"attributes": [
					{
						"id": "Adoption and change management",
						"type": "PartnerRole"
					},
					{
						"id": "Data and AI",
						"type": "SolutionArea"
					},
					{
						"id": "Enable Unified Data Governance",
						"type": "SolutionPlay"
					}
				]
			}
		}
	}