Sdílet prostřednictvím


Ověření adresy

platí pro: Partnerské centrum | Partnerské centrum provozované společností 21Vianet | Partnerské centrum pro Microsoft Cloud pro státní správu USA

Tento článek vysvětluje, jak ověřit adresu pomocí rozhraní API pro ověření adresy.

Rozhraní API pro ověřování adres by se mělo používat pouze k předběžné aktualizaci profilů zákazníků. Na základě stavu odpovědi rozhraní API by volající měl zvolit nejvhodnější adresu pro zákazníka.

Požadavky

Přihlašovací údaje, jak je popsáno v ověřování Partnerského centra. Tento scénář podporuje ověřování pomocí samostatných přihlašovacích údajů aplikace a kombinovaných přihlašovacích údajů aplikace a uživatele.

C#

Pokud chcete ověřit adresu, nejprve vytvořte instanci nového objektu Adresa a vyplňte ji adresou, kterou chcete ověřit. Pak načtěte rozhraní pro operace Validations z vlastnosti IAggregatePartner.Validations a zavolejte metodu IsAddressValid s objektem adresy.

IAggregatePartner partnerOperations;

// Create an address to validate.
Address address = new Address()
{
    AddressLine1 = "One Microsoft Way",
    City = "Redmond",
    State = "WA",
    PostalCode = "98052",
    Country = "US"
};

// Validate the address.
AddressValidationResponse result = partnerOperations.Validations.IsAddressValid(address);

// If the request completes successfully, you can inspect the response object.

// See the status of the validation.
Console.WriteLine($"Status: {addressValidationResult.Status}");

// See the validation message returned.
Console.WriteLine($"Validation Message Returned: {addressValidationResult.ValidationMessage ?? "No message returned."}");

// See the original address submitted for validation.
Console.WriteLine($"Original Address:\n{this.DisplayAddress(addressValidationResult.OriginalAddress)}");

// See the suggested addresses returned by the API, if any exist.
Console.WriteLine($"Suggested Addresses Returned: {addressValidationResult.SuggestedAddresses?.Count ?? "None."}");

if (addressValidationResult.SuggestedAddresses != null && addressValidationResult.SuggestedAddresses.Any())
{
    addressValidationResult.SuggestedAddresses.ForEach(a => Console.WriteLine(this.DisplayAddress(a)));
}

// Helper method to pretty-print an Address object.
private string DisplayAddress(Address address)
{
    StringBuilder sb = new StringBuilder();

    foreach (var property in address.GetType().GetProperties())
    {
        sb.AppendLine($"{property.Name}: {property.GetValue(address) ?? "None to Display."}");
    }

    return sb.ToString();
}

Požadavek REST

Syntaxe požadavku

Metoda Požadavek URI
POST {baseURL}/v1/validations/address HTTP/1.1

Hlavičky požadavku

Další informace naleznete, když se podíváte na hlavičky REST Partnerského centra.

Text požadavku

Tato tabulka popisuje požadované vlastnosti v textu požadavku.

Jméno Typ Povinné* Popis
řádek adresy 1 řetězec Y První řádek adresy.
řádek adresy 2 řetězec N Druhý řádek adresy. Tato vlastnost je nepovinná.
město řetězec Y Město.
stát řetězec Y Stát.
PSČ řetězec Y PSČ.
země řetězec Y Dvouznakový kód země ISO alfa-2.

* Požadované vlastnosti se mohou změnit podle země nebo oblasti.

Podrobnosti odpovědi

Odpověď vrátí jednu z následujících stavových zpráv. Pokud odpověď na stav není Ověřený nebo OvěřitelnéExpedovat, zkontrolujte zadanou adresu nebo navrhovanou adresu. Volající může zvolit nejvhodnější adresu zákazníka.

Stav Popis Počet vrácených navrhovaných adres Doporučení pro odpověď na stav
Ověřená připravená k odeslání Adresa je ověřená a je možné ji odeslat. Jednotlivý Pokračujte s ověřenou adresou.
Ověřený Adresa je ověřená. Singl Pokračujte s ověřenou adresou.
Vyžaduje se interakce Navrhovaná adresa se výrazně změní a vyžaduje potvrzení uživatele. Singl Pokračujte s potvrzenou adresou uživatele.
Ulice částečně uzavřená Daná ulice v adrese je částečná a potřebuje další informace. Násobek – maximálně tři Pokračujte s potvrzenou adresou uživatele.
Částečné prostory Dané prostory (číslo budovy, číslo kanceláře a další) jsou částečné a vyžadují doplnění informací. Více—maximálně tři Pokračujte s potvrzenou adresou uživatele.
Mnohonásobný V adrese je několik částečných polí (případně včetně částečné části ulice a prostorů). Násobek – maximálně tři Pokračujte s potvrzenou adresou uživatele.
Žádný Adresa je nesprávná. Žádný Pokračujte s potvrzenou adresou uživatele.
Neověřováno Adresu nebylo možné odeslat prostřednictvím procesu ověření. Žádný Pokračujte s potvrzenou adresou uživatele.

Příklad požadavku

# "VerifiedShippable" Request Example

POST https://api.partnercenter.microsoft.com/v1/validations/address HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <token>
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: eb55c2b8-6f4b-4b44-9557-f76df624b8c0
Host: api.partnercenter.microsoft.com
Content-Length: 137
X-Locale: en-US

{
    "AddressLine1": "1 Microsoft Way",
    "City": "Redmond",
    "State": "WA",
    "PostalCode": "98052",
    "Country": "US"
}

# "StreetPartial" Request Example

POST https://api.partnercenter.microsoft.com/v1/validations/address HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer <token>
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
MS-RequestId: ee6cf74c-3ab5-48d6-9269-4a4b75bd59dc
Host: api.partnercenter.microsoft.com
Content-Length: 135
X-Locale: en-US

{
    "AddressLine1": "Microsoft Way",
    "City": "Redmond",
    "State": "WA",
    "PostalCode": "98052",
    "Country": "US"
}

Odpověď REST

Pokud je úspěšná, metoda vrátí objekt AddressValidationResponse v těle odpovědi se stavovým kódem HTTP 200. Následuje příklad.

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

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

Příklad odpovědi

# "VerifiedShippable" Response Example

HTTP/1.1 200 OK
Date: Mon, 17 May 2021 23:19:19 GMT
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: eb55c2b8-6f4b-4b44-9557-f76df624b8c0
X-Locale: en-US
 
{
    "originalAddress": {
        "country": "US",
        "city": "Redmond",
        "state": "WA",
        "addressLine1": "1 Microsoft Way",
        "postalCode": "98052"
    },
    "suggestedAddresses": [
        {
            "country": "US",
            "city": "Redmond",
            "state": "WA",
            "addressLine1": "1 Microsoft Way",
            "postalCode": "98052-8300"
        }
    ],
    "status": "VerifiedShippable"
}

# "StreetPartial" Response Example

HTTP/1.1 200 OK
Date: Mon, 17 May 2021 23:34:08 GMT
Content-Type: application/json; charset=utf-8
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
MS-RequestId: ee6cf74c-3ab5-48d6-9269-4a4b75bd59dc
X-Locale: en-US
 
{
    "originalAddress": {
        "country": "US",
        "city": "Redmond",
        "state": "WA",
        "addressLine1": "Microsoft Way",
        "postalCode": "98052"
    },
    "suggestedAddresses": [
        {
            "country": "US",
            "city": "Redmond",
            "state": "WA",
            "addressLine1": "1 Microsoft Way",
            "postalCode": "98052-6399"
        }
    ],
    "status": "StreetPartial",
    "validationMessage": "Address field invalid for property: 'Region', 'PostalCode', 'City'"
}