POST/api/v4/locations/oauth_connect_url

Collega una sede ad Apple Business Connect

Crea un link OAuth Apple Business Connect per pubblicare una sede su Apple Maps con ListingsAPI tramite l'account Apple Business verificato del titolare.

Richiede una chiave API. Consulta Autenticazione per il formato dell’header e la rotazione delle chiavi.

Parametri

Corpo

NomeTipoObbligatorioDescrizione
inputobjectobbligatorioWrapper object. The entire request body must be nested under `input`.
input.locationIdstringobbligatorioLocation to connect. Accepts a Base64-encoded Relay ID (e.g. `TG9jYXRpb246MTgwMDI4OQ==`) or a raw numeric location ID.
input.sitestringobbligatorioSet to `APPLE`.
input.successUrlstringobbligatorioAbsolute URL in your application the owner returns to after granting access.
input.errorUrlstringobbligatorioAbsolute URL in your application the owner returns to if they cancel or the grant fails.

Richiesta di esempio

Corpo pronto da incollare. Sostituisci gli ID e i valori segnaposto con i tuoi.

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

Risposte

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`).

Usa questa chiamata quando il titolare dell'attività dispone di un account aziendale Apple Business verificato. Indirizza il titolare a url; accederà ad Apple Business Connect, concederà l'accesso e tornerà al tuo successUrl. Da quel momento, ListingsAPI pubblica il nome, la categoria, l'indirizzo, il numero di telefono, il sito web e gli orari di quella sede su Apple Maps tramite l'account del titolare. Se il titolare annulla o la concessione dell'accesso non riesce, torna a errorUrl e non viene collegato nulla.

Se il titolare non dispone di un account aziendale Apple Business verificato, salta questa chiamata. ListingsAPI pubblica la sede tramite il proprio account Apple Business Connect e Apple verifica la richiesta di pubblicazione prima di pubblicare la sede.

Apple collega una sede per link. Per collegare più sedi, crea un link per ciascuna. Entrambi gli URL di reindirizzamento devono essere assoluti; un valore relativo o non interpretabile viene restituito come success: true con un null url, quindi controlla url prima di effettuare il reindirizzamento. Il link è monouso, quindi creane uno nuovo per ogni tentativo.

Conferma il collegamento

Dopo che il titolare è tornato a successUrl, chiama Elenca gli account collegati con publisher=AppleAccount. Un valore di status pari a CONNECTED indica che gli aggiornamenti vengono effettuati tramite l'account del titolare. MATCH_IN_PROGRESS o CONNECTIVITY_ISSUE indica che il titolare deve aprire un nuovo link di collegamento.

Per interrompere la pubblicazione tramite l'account del titolare, usa Scollega una sede da Apple Business Connect. Per il flusso completo, comprese le istruzioni per controllare la scheda su Apple Maps, consulta Collega Apple Business Connect.

Questa pagina documenta il caso site: "APPLE" di Crea un URL di collegamento OAuth per una sede.

Questo endpoint crea credenziali OAuth effettive. La richiesta e la risposta di esempio riportate sopra sono esempi.

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