파트너 센터 API를 사용하여 Microsoft 고객 계약에 대한 고객 동의 확인
적용 대상: 파트너 센터
적용 안 됨: 21Vianet에서 운영하는 파트너 센터 | 미국 정부용 Microsoft 클라우드 파트너 센터
파트너 센터는 현재 Microsoft 퍼블릭 클라우드에서만 Microsoft 고객 계약에 대한 고객 동의 확인을 지원합니다.
이 문서에서는 Microsoft 고객 계약에 대한 고객의 동의를 확인하거나 다시 확인하는 방법을 설명합니다.
필수 구성 요소
- 파트너 센터 .NET SDK를 사용하는 경우 버전 1.14 이상이 필요합니다.
중요하다
2023년 6월 현재 최신 파트너 센터 .NET SDK 릴리스 3.4.0이 보관됩니다. GitHub 에서 SDK 릴리스를다운로드할 수 있으며, 유용한 정보가 포함된 리드미 파일도 함께 제공합니다.
파트너는 파트너 센터 REST API계속 사용하는 것이 좋습니다.
파트너 센터 인증 에 설명된 대로자격 증명. 이 시나리오는 App+사용자 인증만 지원합니다.
고객 ID(
customer-tenant-id
)입니다. 고객의 ID를 모르는 경우, 파트너 센터에서 고객 작업 영역을 선택하고, 고객 목록에서 해당 고객을 선택한 다음, 계정을(를) 조회할 수 있습니다. 고객의 계정 페이지에서 고객 계정 정보 섹션에 있는 Microsoft ID를 찾습니다. Microsoft ID는 고객 ID(customer-tenant-id
)와 동일합니다.고객이 Microsoft 고객 계약을 수락한 날짜(날짜)입니다.
Microsoft 고객 계약을 수락한 고객 조직의 사용자에 대한 정보입니다. 여기에는 다음이 포함됩니다.
- 이름
- 성(姓)
- 전자 메일 주소
- 전화 번호(선택 사항)
고객에 대해 다음 값이 변경되면 파트너 센터에서 해당 고객에 대해 다른 규약을 만들 수 있습니다. 성 성 전자 메일 주소 전화 번호이외 파트너는 중복된 고객이 생성되어 다음과 같은 오류 코드를 받게 됩니다.
{
"code": 600061,
"message": "A partner confirmed agreement already exists for the customer.",
"description": "A partner confirmed agreement already exists for the customer.",
"errorName": "PartnerConfirmedAgreementAlreadyExists",
"isRetryable": false,
"parameters": {},
"errorMessageExtended": "InternalErrorCode=600061"
}
.NET
Microsoft 고객 계약에 대한 고객의 동의를 확인하거나 다시 확인하려면 다음을 수행합니다.
Microsoft 고객 계약에 대한 계약 메타데이터를 검색합니다. Microsoft 고객 계약의 templateId 가져와야 합니다. 자세한 내용은 Microsoft 고객 계약대한 계약 메타데이터 가져오기를 참조하세요.
// IAggregatePartner partnerOperations; string agreementType = "MicrosoftCustomerAgreement"; var microsoftCustomerAgreementDetails = partnerOperations.AgreementDetails.ByAgreementType(agreementType).Get().Items.Single();
확인 세부 정보가 포함된 새 Agreement 개체를 만듭니다.
IAgreggatePartner.Customers 컬렉션을 사용하고, 지정된 customer-tenant-id를 사용하여 ById 메서드를 호출합니다.
Agreements 속성을 사용한 다음 만들기 또는 CreateAsync를 호출하십시오.
// string selectedCustomerId; var agreementToCreate = new Agreement { DateAgreed = DateTime.UtcNow, TemplateId = microsoftCustomerAgreementDetails.TemplateId, PrimaryContact = new Contact { FirstName = "Tania", LastName = "Carr", Email = "someone@example.com", PhoneNumber = "1234567890" } }; Agreement agreement = partnerOperations.Customers.ById(selectedCustomerId).Agreements.Create(agreementToCreate);
전체 샘플은 콘솔 테스트 앱 프로젝트의 CreateCustomerAgreement 클래스에서 찾을 수 있습니다.
REST 요청
Microsoft 고객 계약에 대한 고객의 동의를 확인하거나 다시 확인하려면 다음을 수행합니다.
- Microsoft 고객 계약에 대한 계약 메타데이터를 검색합니다. Microsoft 고객 계약의 templateId 가져와야 합니다. 자세한 내용은 Microsoft 고객 계약대한 계약 메타데이터 가져오기를 참조하세요.
- 새 계약 리소스 만들어 고객이 Microsoft 고객 계약에 동의했는지 확인합니다. 다음 REST 요청 구문사용합니다.
요청 구문
메서드 | 요청 URI |
---|---|
게시하기 | {baseURL}/v1/customers/{customer-tenant-id}/agreements HTTP/1.1 |
URI 매개 변수
다음 쿼리 매개 변수를 사용하여 확인 중인 고객을 지정합니다.
이름 | 유형 | 필수 | 설명 |
---|---|---|---|
고객-테넌트-식별자 | GUID | 예 | 이 값은 고객을 지정할 수 있는 식별자인 GUID 형식의 customer-tenant-id. |
요청 헤더
요청 본문
이 표에서는 REST 요청 본문의 필수 속성에 대해 설명합니다.
이름 | 유형 | 묘사 |
---|---|---|
협정 | 객체 | Microsoft 고객 계약에 대한 고객의 동의를 확인하기 위해 파트너가 제공한 세부 정보입니다. |
협정
이 표에서는 Agreement 리소스만드는 데 필요한 최소 필드에 대해 설명합니다.
재산 | 유형 | 묘사 |
---|---|---|
주요 연락처 | 연락처 | firstName, lastName, 전자 메일및 phoneNumber 등 Microsoft 고객 계약을 수락한 고객 조직의 사용자에 대한 정보(선택 사항) |
합의된 날짜 | UTC 날짜 시간 형식의 문자열 | 고객이 계약을 수락한 날짜입니다. |
템플릿ID | 문자열 | 고객이 수락한 계약 유형의 고유 식별자입니다. Microsoft 고객 계약의 계약 메타데이터를 검색하여 templateId를 가져올 수 있습니다. 자세한 내용은 Microsoft 고객 계약 대한 계약 메타데이터 가져오기를 참조하세요. |
유형 | 문자열 | 고객이 수락한 계약 유형입니다. 고객이 Microsoft 고객 계약에 동의한 경우 "MicrosoftCustomerAgreement"를 사용합니다. |
요청 예제
POST https://api.partnercenter.microsoft.com/v1/customers/14876998-c0dc-46e6-9d0c-65a57a6c32ec/agreements HTTP/1.1
Authorization: Bearer <token>
Content-Type: application/json
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
{
"primaryContact": {
"firstName": "Tania",
"lastName": "Carr",
"email": "someone@example.com",
"phoneNumber": "1234567890"
},
"templateId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"dateAgreed": "2018-06-14T00:00:00.000Z",
"type": "MicrosoftCustomerAgreement"
}
REST 응답
성공하면 이 메서드는 합의서 리소스를 반환합니다.
응답 성공 및 오류 코드
각 응답에는 성공 또는 실패 및 추가 디버깅 정보를 나타내는 HTTP 상태 코드가 함께 제공됩니다.
네트워크 추적 도구를 사용하여 이 코드, 오류 유형 및 추가 매개 변수를 읽습니다. 전체 목록은 파트너 센터 REST 오류 코드를 참조하세요.
응답 예제
HTTP/1.1 201 Created
Content-Length: 261
Content-Type: application/json
MS-RequestId: 94e4e214-6b06-4fb7-96d1-94d559f9b47f
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
{
"userId": "00aa00aa-bb11-cc22-dd33-44ee44ee44ee",
"primaryContact": {
"firstName": "Tania",
"lastName": "Carr",
"email": "someone@example.com",
"phoneNumber": "1234567890"
},
"templateId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"dateAgreed": "2018-06-14T00:00:00.000Z",
"type": "MicrosoftCustomerAgreement"
}