---
title: "List your webhook endpoints"
method: GET
path: "/webhooks"
tags: ["Webhooks"]
---

# List your webhook endpoints

`GET /webhooks`

## Request

- Base URL: `https://api.gmaps.dev/v1`
- URL: `https://api.gmaps.dev/v1/webhooks`
- Auth: HTTP bearer

Every endpoint you have added, newest first, with whether it is still receiving events and why we stopped if it is not. Secrets are not shown again after the endpoint is created. Needs an API key and a paid plan. Costs no credits.

## Response `200`

List your webhook endpoints

- object
  - `data` object[], required
    - `id` string, uuid, required: Our id for the endpoint. update_webhook, delete_webhook, test_webhook and list_webhook_deliveries take it.
    - `url` string, required: Where we POST events.
    - `events` string[], required: The events we send here.
    - `description` string, nullable, required: Your own note about this endpoint, such as which of your services it is.
    - `enabled` boolean, required: False when you or we switched it off. We send nothing to it then.
    - `disabledReason` string, nullable, required: Why we stopped sending here, in English, with the last failure. Null while it works, and when you switched it off yourself.
    - `disabledReasonKey` 'serverErrors.validation' | 'serverErrors.unauthorized' | 'serverErrors.keyInactive' | 'serverErrors.signInRequired' | 'serverErrors.planGateEmails' | 'serverErrors.planGateWebhooks' | 'serverErrors.planGateContact' | 'serverErrors.aupRequired' | 'serverErrors.forbidden' | 'serverErrors.accountSuspended' | 'serverErrors.accountDeletionRequested' | 'serverErrors.accountDeleted' | 'serverErrors.lastStaff' | 'serverErrors.notFound' | 'serverErrors.placeNotFound' | 'serverErrors.placeShortLink' | 'serverErrors.placeLinkNotOne' | 'serverErrors.placeRefUnreadable' | 'serverErrors.collectionNotFound' | 'serverErrors.collectionEnded' | 'serverErrors.collectionPlacesDeleted' | 'serverErrors.exportNotFound' | 'serverErrors.exportNothingYet' | 'serverErrors.exportNothingFound' | 'serverErrors.conflict' | 'serverErrors.payloadTooLarge' | 'serverErrors.geoUnresolved' | 'serverErrors.cityAmbiguous' | 'serverErrors.cityDidYouMean' | 'serverErrors.cityUnknown' | 'serverErrors.cityIbgeUnknown' | 'serverErrors.areaTooLarge' | 'serverErrors.radiusTooLarge' | 'serverErrors.noSearchTerms' | 'serverErrors.tooManyTerms' | 'serverErrors.maxPlacesOverPlan' | 'serverErrors.xlsxTooLarge' | 'serverErrors.keyLimit' | 'serverErrors.subscriptionOpen' | 'serverErrors.checkoutOpen' | 'serverErrors.webhookNotHttps' | 'serverErrors.webhookCredentials' | 'serverErrors.webhookPrivateAddress' | 'serverErrors.webhookNoAddress' | 'serverErrors.webhookDuplicate' | 'serverErrors.webhookUnreachable' | 'serverErrors.webhookTimeout' | 'serverErrors.webhookStatus' | 'serverErrors.webhookRedirect' | 'serverErrors.webhookStopped' | 'serverErrors.webhookOff' | 'serverErrors.upstreamBlocked' | 'serverErrors.rateLimit' | 'serverErrors.quotaMonth' | 'serverErrors.quotaDay' | 'serverErrors.concurrency' | 'serverErrors.internal' | 'serverErrors.engineUnavailable' | 'serverErrors.collectionEngineFailed' | 'serverErrors.serviceUnavailable' | 'serverErrors.billingUnavailable' | 'serverErrors.billingCurrencyUnavailable', nullable, required: The same reason as a `messageKey`, to show it in your reader's language, with `disabledReasonParams` filling its blanks. When it is null, show `disabledReason`.
    - `disabledReasonParams` object, nullable, required: The values that fill `disabledReasonKey`'s blanks, such as how many deliveries failed in a row. Null when there are none.
    - `consecutiveFailures` integer, required: Deliveries that failed in a row, after all their tries. Back to zero on the next one that works.
    - `lastSuccessAt` string, date-time, nullable, required: When a delivery last arrived. Null until one does.
    - `lastFailureAt` string, date-time, nullable, required: When a try last failed. Null if none has.
    - `createdAt` string, date-time, required: When you added the endpoint.
    - `secret` string, starts_with, nullable, required: The signing secret, shown once, when you add the endpoint, and never again. Store it: it proves a request came from us. Null on every later read.
  - `meta` union
    - object
      - `total` integer, required: Every item that matches, not just this page.
      - `limit` integer, required: The most items a page holds.
      - `offset` integer, required: How many items came before this page.
      - `hasMore` boolean, required: True when another page follows.
    - object
      - `cost` integer, required: Credits this call took.
      - `creditsRemaining` integer, required: Credits left after this call, this month's and bought ones together.
      - `requestId` string, required: This call's id. Send it to support if something went wrong.
      - `cached` boolean: True when this response used only saved results.

## Other responses

- `default`: Any other failure.

---

[API](https://skmtc.dev/gmaps/apis/gmaps-dev.md) · [All operations](https://skmtc.dev/gmaps/apis/gmaps-dev/llms.txt) · [OpenAPI document](https://skmtc.dev/gmaps/apis/gmaps-dev/revisions/0b3459aaf802?raw)
