POST/api/v4/locations/oauth_connect_url

Einen Standort mit Apple Business Connect verbinden

Erstellt einen Apple Business Connect OAuth-Link: ListingsAPI veröffentlicht den Standort via verifiziertem Apple Business-Inhaberkonto auf Apple Maps.

Erfordert einen API-Schlüssel. Format des Headers und Schlüsselrotation finden Sie unter Authentifizierung.

Parameter

Body

NameTypErforderlichBeschreibung
inputobjecterforderlichWrapper object. The entire request body must be nested under `input`.
input.locationIdstringerforderlichLocation to connect. Accepts a Base64-encoded Relay ID (e.g. `TG9jYXRpb246MTgwMDI4OQ==`) or a raw numeric location ID.
input.sitestringerforderlichSet to `APPLE`.
input.successUrlstringerforderlichAbsolute URL in your application the owner returns to after granting access.
input.errorUrlstringerforderlichAbsolute URL in your application the owner returns to if they cancel or the grant fails.

Beispielanfrage

Body zum direkten Einfügen. Ersetzen Sie Platzhalter-IDs und -Werte durch Ihre eigenen.

Request body
{  "input": {    "locationId": "TG9jYXRpb246MTgwMDI4OQ==",    "site": "APPLE",    "successUrl": "https://app.example.com/locations/1800289/apple/connected",    "errorUrl": "https://app.example.com/locations/1800289/apple/connect-failed"  }}

Antworten

200A single-use link to send the owner to. `errors` is `null` on success. The `url` shown is a placeholder; send the owner to the `url` returned in your own response.
Response
{  "data": {    "createConnectUrl": {      "success": true,      "url": "https://connect.example.com/oauth?token=8f3c1d92-...",      "errors": null    }  }}
401Unauthenticated, missing or invalid API key.
403The key is valid but not permitted to connect this location (`SY90003`).

Verwenden Sie diese Funktion, wenn der Unternehmensinhaber über ein verifiziertes Organisationskonto bei Apple Business verfügt. Leiten Sie den Inhaber zu url weiter; er meldet sich bei Apple Business Connect an, gewährt Zugriff und kehrt zu Ihrem successUrl zurück. Von da an veröffentlicht ListingsAPI den Namen, die Kategorie, die Adresse, die Telefonnummer, die Website und die Öffnungszeiten dieses Standorts über das Konto des Inhabers auf Apple Maps. Wenn der Inhaber den Vorgang abbricht oder die Zugriffsgewährung fehlschlägt, kehrt er zu errorUrl zurück und es wird keine Verbindung hergestellt.

Wenn der Inhaber kein verifiziertes Organisationskonto bei Apple Business hat, überspringen Sie diesen Aufruf. ListingsAPI veröffentlicht den Standort über sein eigenes Apple Business Connect-Konto, und Apple prüft die Übermittlung vor der Veröffentlichung.

Apple verbindet einen Standort pro Link. Um mehrere Standorte zu verbinden, erstellen Sie für jeden einen Link. Beide Weiterleitungs-URLs müssen absolut sein; bei einem relativen oder nicht parsbaren Wert wird success: true mit null url zurückgegeben. Prüfen Sie daher url vor der Weiterleitung. Der Link kann nur einmal verwendet werden. Erstellen Sie daher für jeden Versuch einen neuen Link.

Die Verbindung bestätigen

Nachdem der Inhaber zu successUrl zurückgekehrt ist, rufen Sie Verbundene Konten auflisten mit publisher=AppleAccount auf. Ein status mit dem Wert CONNECTED bedeutet, dass Aktualisierungen über das Konto des Inhabers erfolgen. MATCH_IN_PROGRESS oder CONNECTIVITY_ISSUE bedeutet, dass der Inhaber einen neuen Verbindungslink öffnen muss.

Um die Veröffentlichung über das Konto des Inhabers zu beenden, verwenden Sie Einen Standort von Apple Business Connect trennen. Den vollständigen Ablauf, einschließlich der Prüfung des Eintrags auf Apple Maps, finden Sie unter Apple Business Connect verbinden.

Diese Seite dokumentiert den Fall site: "APPLE" von Eine OAuth-Verbindungs-URL für einen Standort erstellen.

Dieser Endpunkt erstellt echte OAuth-Zugangsdaten. Die oben gezeigte Anfrage und Antwort dienen als Beispiele.

Request
curl -X POST 'https://listingsapi.com/api/v4/locations/oauth_connect_url' \  -H "Authorization: API $LISTINGSAPI_KEY" \  -H 'Content-Type: application/json' \  -d '{    "input": {      "locationId": "TG9jYXRpb246MTgwMDI4OQ==",      "site": "APPLE",      "successUrl": "https://app.example.com/locations/1800289/apple/connected",      "errorUrl": "https://app.example.com/locations/1800289/apple/connect-failed"    }  }'