Freigeben über


Überprüfen einer Adresse

Gilt für: Partner Center | Partner Center-Betrieb durch 21Vianet | Partner Center für Microsoft Cloud for US Government

In diesem Artikel wird erläutert, wie Sie eine Adresse mithilfe der Adressüberprüfungs-API überprüfen.

Die Adressüberprüfungs-API sollte nur für die Vorabvalidierung von Kundenprofilupdates verwendet werden. Basierend auf dem API-Antwortstatus sollte der Aufrufer die am besten geeignete Adresse für den Kunden auswählen.

Voraussetzungen

Anmeldeinformationen, wie unter Partner Center-Authentifizierung beschrieben. Dieses Szenario unterstützt die Authentifizierung mit eigenständigen App- und App+Benutzeranmeldeinformationen.

C#

Um eine Adresse zu überprüfen, instanziieren Sie zuerst ein neues Address-Objekt und füllen Sie sie mit der zu überprüfenden Adresse auf. Rufen Sie dann eine Schnittstelle zu Validations-Vorgängen aus der IAggregatePartner.Validations-Eigenschaft ab, und rufen Sie die IsAddressValid-Methode mit dem Adressobjekt auf.

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();
}

REST-Anforderung

Anforderungssyntax

Methode Anforderungs-URI
POST {baseURL}/v1/validations/address HTTP/1.1

Anforderungsheader

Weitere Informationen finden Sie unter Partner Center-REST-Header.

Anforderungstext

In dieser Tabelle werden die erforderlichen Eigenschaften im Anforderungstext beschrieben.

Name type Erforderlich* Beschreibung
addressline1 Zeichenfolge J Die erste Zeile der Adresse.
addressline2 Zeichenfolge N Die zweite Zeile der Adresse. Diese Eigenschaft ist optional.
city Zeichenfolge J Die Stadt.
state Zeichenfolge J Das Land/die Region.
postalcode Zeichenfolge J Die Postleitzahl.
country Zeichenfolge J Der aus zwei Zeichen bestehende ISO alpha-2-Ländercode.

* Erforderliche Eigenschaften können sich je nach Land oder Region ändern.

Details der Antwort

Die Antwort gibt eine der folgenden Statusmeldungen zurück. Wenn die Statusantwort nicht überprüft oder verifiedShippable ist, überprüfen Sie Ihre eingegebene Adresse und/oder vorgeschlagene Adresse. Es liegt bei dem Anrufer, die am besten geeignete Adresse für den Kunden auszuwählen.

Status Beschreibung Anzahl der zurückgegebenen vorgeschlagenen Adressen Empfehlung zur Statusantwort
Versandfähigkeit überprüft Die Adresse ist überprüft und für den Versand geeignet. Single Fahren Sie mit der überprüften Adresse fort.
Überprüft Die Adresse ist überprüft. Single Fahren Sie mit der überprüften Adresse fort.
Interaktion erforderlich Die vorgeschlagene Adresse wird erheblich geändert und erfordert eine Benutzerbestätigung. Single Fahren Sie mit der bestätigten Adresse des Benutzers fort.
Straße unvollständig Die angegebene Straße in der Adresse ist unvollständig und erfordert weitere Informationen. Mehrere – maximal drei Fahren Sie mit der bestätigten Adresse des Benutzers fort.
Räumlichkeiten unvollständig Die angegebenen Räumlichkeiten (Gebäudenummer, Suitenummer und andere) sind unvollständig und erfordern weitere Informationen. Mehrere – maximal drei Fahren Sie mit der bestätigten Adresse des Benutzers fort.
Mehrere Mehrere Felder in der Adresse sind unvollständig (möglicherweise einschließlich der Felder für Straße und Räumlichkeiten). Mehrere – maximal drei Fahren Sie mit der bestätigten Adresse des Benutzers fort.
Keine Die Adresse ist falsch. Keine Fahren Sie mit der bestätigten Adresse des Benutzers fort.
Nicht überprüft Die Adresse konnte nicht über den Überprüfungsprozess gesendet werden. Keine Fahren Sie mit der bestätigten Adresse des Benutzers fort.

Anforderungsbeispiel

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

REST-Antwort

Bei erfolgreicher Ausführung gibt die Methode ein AddressValidationResponse-Objekt im Antworttext mit einem HTTP 200-Statuscode zurück. Im Folgenden wird ein Beispiel aufgeführt.

Erfolgs- und Fehlercodes der Antwort

Jede Antwort enthält einen HTTP-Statuscode, der Erfolg oder Fehler und Debugginginformationen angibt. Verwenden Sie ein Netzwerkablaufverfolgungstool, um diesen Code, fehlertyp und andere Parameter zu lesen. Die vollständige Liste finden Sie unter Partner Center-REST-Fehlercodes.

Beispielantwort

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