# ProjectWebhook > Type in domain **Libraries** - HTML: [ProjectWebhook.html](ProjectWebhook.html) - Raw SDL: [ProjectWebhook.sdl](ProjectWebhook.sdl) - Covered by: [llms.txt](../llms.txt) Implements: `Node`, `Webhook` ## Fields - `id`: `ID!` — `Webhook` Id. - `creator`: `User!` — The `creator` is the `User` who created the `Webhook`. - `createdAt`: `DateTime!` — DateTime of the `Webhook` creation. - `name`: `String!` — `Webhook` name. - `notificationUrl`: `Url!` — The `Url` which will be called by the `Webhook` - `secret`: `String!` — The randomly generated secret of the current `Webhook`. - `project`: `Project!` — Returns the associated `Project`. - `version`: `Int!` _(beta)_ — Version number of the `Webhook`. ## Related mutations - [`configureProjectWebhook`](../mutation/configureProjectWebhook.md) - [`installProjectWebhook`](../mutation/installProjectWebhook.md) ## Reach via Example queries that can return this type from the root `Query`. ### `webhooks` ```graphql query Webhooks { webhooks(limit: 25, page: 1) { items { ... on ProjectWebhook { __typename createdAt creator { __typename name id } id name notificationUrl project { __typename ... on MediaLibrary { name id assets { total page limit hasNextPage items { id } } browse { __typename } } ... on IconLibrary { name id assets { total page limit hasNextPage items { id } } browse { __typename } } ... on LogoLibrary { name id assets { total page limit hasNextPage items { id } } browse { __typename } } ... on DocumentLibrary { name id assets { total page limit hasNextPage items { id } } browse { __typename } } ... on Workspace { name id isArchived assets { total page limit hasNextPage items { id } } browse { __typename } } } secret version } } } } ``` Raw: [`Webhooks.sdl`](../examples/Webhooks.sdl)