Získání zákazníků nepřímého prodejce

Platí pro: Partnerské centrum

Jak získat seznam zákazníků nepřímého prodejce.

Požadavky

  • Přihlašovací údaje popsané v ověřování v Partnerském centru Tento scénář podporuje ověřování pouze s přihlašovacími údaji aplikace a uživatele.

  • Identifikátor tenanta nepřímého prodejce.

C#

Pokud chcete získat kolekci zákazníků, kteří mají relaci se zadaným nepřímým prodejcem, vytvořte nejprve instanci objektu SimpleFieldFilter a vytvořte filtr. Budete muset předat CustomerSearchField.IndirectReseller členu výčtu převedený na řetězec a označit FieldFilterOperation.StartsWith jako typ operace filtru. Budete také muset zadat identifikátor tenanta nepřímého prodejce, podle který chcete filtrovat.

Dále vytvořte instanci objektu iQuery, který se má předat dotazu voláním BuildSimpleQuery metody a předáním filtru. BuildSimplyQuery je pouze jedním z typů dotazů podporovaných třídou QueryFactory .

Pokud chcete spustit filtr a získat výsledek, použijte nejprve IAggregatePartner.Customers k získání rozhraní pro operace zákazníka partnera. Potom volejte metodu Query nebo QueryAsync.

Pokud chcete vytvořit enumerátor pro procházení stránkovaných výsledků, získejte rozhraní objektu pro vytváření výčtu kolekce zákazníků z vlastnosti IAggregatePartner.Enumerators.Customers a potom volejte Create, jak je znázorněno v kódu níže, a předejte proměnnou, která obsahuje kolekci zákazníků.

IAggregatePartner partnerOperations;
string indirectResellerId;

// Create a filter.
var filter = new SimpleFieldFilter(
    CustomerSearchField.IndirectReseller.ToString(),
    FieldFilterOperation.StartsWith,
    indirectResellerId);

// Create an iQuery object to pass to the Query method.
var myQuery = QueryFactory.Instance.BuildSimpleQuery(filter);

// Get the collection of matching customers.
var customersPage = partnerOperations.Customers.Query(myQuery);

// Create a customer enumerator for traversing the customer pages.
var customersEnumerator = partnerOperations.Enumerators.Customers.Create(customersPage);
int pageNumber = 1;

while (customersEnumerator.HasValue)
{
    // Work with the current page.
     foreach (var c in customersEnumerator.Current.Items)
    {
        // Display customer tenant identifier and company name.
        Console.WriteLine(string.Format("{0} - {1}.",c.Id,c.CompanyProfile.CompanyName));
    }
    // Get the next page of customers.
    customersEnumerator.Next();
}

Ukázka: Projekt testovací aplikacekonzoly: Třída ukázek sady SDK v Partnerském centru: GetCustomersOfIndirectReseller.cs

Požadavek REST

Syntaxe požadavku

metoda Identifikátor URI žádosti
GET {baseURL}/v1/customers?size={size}?filter={filter} HTTP/1.1

Parametr identifikátoru URI

K vytvoření požadavku použijte následující parametry dotazu.

Name Type Požadováno Popis
size int No Počet výsledků, které se mají zobrazit najednou. Tento parametr je volitelný.
filter filter Ano Dotaz, který filtruje hledání. Pokud chcete načíst zákazníky pro zadaného nepřímého prodejce, musíte vložit identifikátor nepřímého prodejce a zahrnout a zakódovat následující řetězec: {"Field":"IndirectReseller","Value":"{indirect reseller identifier}","Operator":"starts_with"}.

Záhlaví žádosti

Další informace najdete v tématu Hlavičky REST Partnerského centra.

Text požadavku

Nezaokrouhlovat.

Příklad požadavku (kódovaný)

GET https://api.partnercenter.microsoft.com/v1/customers?size=0&filter=%7B%22Field%22%3A%22IndirectReseller%22%2C%22Value%22%3A%22484e548c-f5f3-4528-93a9-c16c6373cb59%22%2C%22Operator%22%3A%22starts_with%22%7D HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: aa04fb9d-c6b6-4754-8a6a-86e00cdd5ccb
MS-CorrelationId: b4e67a78-0692-45d1-b408-04b9178a8ac6
X-Locale: en-US
Host: api.partnercenter.microsoft.com

Příklad požadavku (dekódovaný)

GET https://api.partnercenter.microsoft.com/v1/customers?size=0&filter={"Field":"IndirectReseller","Value":"484e548c-f5f3-4528-93a9-c16c6373cb59","Operator":"starts_with"} HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: aa04fb9d-c6b6-4754-8a6a-86e00cdd5ccb
MS-CorrelationId: b4e67a78-0692-45d1-b408-04b9178a8ac6
X-Locale: en-US
Host: api.partnercenter.microsoft.com

Odpověď REST

V případě úspěchu obsahuje text odpovědi informace o zákaznících prodejce.

Kódy úspěšnosti a chyb odpovědi

Každá odpověď obsahuje stavový kód HTTP, který označuje úspěch nebo selhání a další informace o ladění. Ke čtení tohoto kódu, typu chyby a dalších parametrů použijte nástroj pro trasování sítě. Úplný seznam najdete v tématu Kódy chyb v Partnerském centru.

Příklad odpovědi

HTTP/1.1 200 OK
Content-Length: 2273
Content-Type: application/json; charset=utf-8
MS-CorrelationId: b4e67a78-0692-45d1-b408-04b9178a8ac6
MS-RequestId: aa04fb9d-c6b6-4754-8a6a-86e00cdd5ccb
MS-CV: XI2/vIHmIEGVlGL9.0
MS-ServerId: 101112012
Date: Tue, 11 Apr 2017 23:31:28 GMT

{
    "totalCount": 2,
    "items": [{
            "id": "53eb21cb-6b2d-4ee5-9e92-27dfc927e93c",
            "companyProfile": {
                "tenantId": "53eb21cb-6b2d-4ee5-9e92-27dfc927e93c",
                "domain": "FourthCoffee137.onmicrosoft.com",
                "companyName": "FourthCoffee137",
                "links": {
                    "self": {
                        "uri": "/customers/53eb21cb-6b2d-4ee5-9e92-27dfc927e93c/profiles/company",
                        "method": "GET",
                        "headers": []
                    }
                },
                "attributes": {
                    "objectType": "CustomerCompanyProfile"
                }
            },
            "relationshipToPartner": "reseller",
            "links": {
                "self": {
                    "uri": "/customers/53eb21cb-6b2d-4ee5-9e92-27dfc927e93c",
                    "method": "GET",
                    "headers": []
                }
            },
            "attributes": {
                "objectType": "Customer"
            }
        }, {
            "id": "3dfe847b-cad9-4fc1-86d3-cf16c2790087",
            "companyProfile": {
                "tenantId": "3dfe847b-cad9-4fc1-86d3-cf16c2790087",
                "domain": "WingtipToys1254789149.onmicrosoft.com",
                "companyName": "Wingtip Toys1254789149",
                "links": {
                    "self": {
                        "uri": "/customers/3dfe847b-cad9-4fc1-86d3-cf16c2790087/profiles/company",
                        "method": "GET",
                        "headers": []
                    }
                },
                "attributes": {
                    "objectType": "CustomerCompanyProfile"
                }
            },
            "relationshipToPartner": "reseller",
            "links": {
                "self": {
                    "uri": "/customers/3dfe847b-cad9-4fc1-86d3-cf16c2790087",
                    "method": "GET",
                    "headers": []
                }
            },
            "attributes": {
                "objectType": "Customer"
            }
        },
    ],
    "attributes": {
        "objectType": "Collection"
    }
}