/api/v4/connected-accounts/trigger-matchesTrigger location matches
Fetches the Google and Facebook profiles for connected accounts and matches them against your Listings API locations.
Parameters
Body
| Name | Type | Required | Description |
|---|---|---|---|
| input | object | required | Wrapper object. The entire request body must be nested under `input`. |
| input.connectedAccountIds | array of strings | required | UUIDs of the connected accounts to trigger matches for. Taken from `GET /connected-accounts`. |
Sample request
Ready-to-paste body. Replace placeholder IDs and values with yours.
{
"input": {
"connectedAccountIds": [
"4f712c17-4f95-42dd-90f4-97171a2e67b5"
]
}
}Responses
200Request accepted. `success` is `true` when the fetch-and-match job was queued for every account; accounts that could not be queued are returned in `failedIds` and `success` is `false`.
{
"data": {
"connectedAccountsTriggerMatches": {
"failedIds": null,
"success": true
}
}
}400Bad request, the body was not wrapped in `input` (GraphQL: `Variable "$input" of required type "ConnectedAccountsTriggerMatchesInput!" was not provided`).
401Unauthenticated, missing or invalid API key.
Kicks off the asynchronous job that pulls every Google Business Profile and Facebook profile the specified connected accounts can access and matches them against your Listings API locations. A success: true response means the job was queued, the matching itself runs in the background.
Request shape. The body must be wrapped in an input object containing connectedAccountIds, an array of the connected accounts to match. Sending a flat, unwrapped body is rejected with an HTTP 400. Get the account IDs from GET /connected-accounts. When one or more accounts cannot be queued, their IDs are returned in failedIds and success is false.
Use case: refresh suggestions after connecting a new account. Immediately after a customer completes the Google connect flow, call trigger-matches with that account's connectedAccountId. This populates the suggested location matches so your onboarding UI can show "we found N of your listings" without the customer waiting on a scheduled sync.
Use case: re-run matching after adding locations. When you bulk-create new Listings API locations for an existing connected account, trigger a fresh match run so the new locations get paired with their existing Google/Facebook listings.
Because the work is asynchronous, do not treat the 200 as "matching finished." Poll the connected-account details endpoint and wait for requestMatchesStatus to reach MATCH_COMPLETED, then read the results from the connection-suggestions endpoint before calling confirm-matches or connect-listing.
This endpoint queues a live fetch against Google/Facebook. The request shape and sample response above are documented from the API specification; the call is not executed against production data.
curl -X POST 'https://listingsapi.com/api/v4/connected-accounts/trigger-matches' \
-H "Authorization: API $LISTINGSAPI_KEY" \
-H 'Content-Type: application/json' \
-d '{
"input": {
"connectedAccountIds": [
"4f712c17-4f95-42dd-90f4-97171a2e67b5"
]
}
}'