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'"
}