mutation webhookCreateAuthenticated
Returns WebhookSecretResult!
Arguments
| Argument | Type | Description |
|---|---|---|
input | WebhookCreateInput! |
Example request
curl -X POST 'https://graph.clientloop.com/' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer <api-key>' \
-d '{
"query": "mutation WebhookCreate($input: WebhookCreateInput!) { webhookCreate(input: $input) { webhook { id ownerId url events description enabled secretCheckValue createdAt updatedAt } signingSecret } }",
"variables": {
"input": {
"ownerId": "abc123",
"url": "example",
"events": [
"example"
]
}
}
}'const response = await fetch('https://graph.clientloop.com/', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer <api-key>',
},
body: JSON.stringify({
query: `
mutation WebhookCreate($input: WebhookCreateInput!) {
webhookCreate(input: $input) {
webhook {
id
ownerId
url
events
description
enabled
secretCheckValue
createdAt
updatedAt
}
signingSecret
}
}
`,
variables: {
"input": {
"ownerId": "abc123",
"url": "example",
"events": [
"example"
]
}
},
}),
});
const { data, errors } = await response.json();<?php
$body = <<<'JSON'
{
"query": "mutation WebhookCreate($input: WebhookCreateInput!) { webhookCreate(input: $input) { webhook { id ownerId url events description enabled secretCheckValue createdAt updatedAt } signingSecret } }",
"variables": {
"input": {
"ownerId": "abc123",
"url": "example",
"events": [
"example"
]
}
}
}
JSON;
$ch = curl_init('https://graph.clientloop.com/');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Content-Type: application/json',
'Authorization: Bearer <api-key>',
],
CURLOPT_POSTFIELDS => $body,
]);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
var body = """
{
"query": "mutation WebhookCreate($input: WebhookCreateInput!) { webhookCreate(input: $input) { webhook { id ownerId url events description enabled secretCheckValue createdAt updatedAt } signingSecret } }",
"variables": {
"input": {
"ownerId": "abc123",
"url": "example",
"events": [
"example"
]
}
}
}
""";
var request = HttpRequest.newBuilder(URI.create("https://graph.clientloop.com/"))
.header("Content-Type", "application/json")
.header("Authorization", "Bearer <api-key>")
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
var response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());using System.Net.Http;
using System.Text;
var body = """
{
"query": "mutation WebhookCreate($input: WebhookCreateInput!) { webhookCreate(input: $input) { webhook { id ownerId url events description enabled secretCheckValue createdAt updatedAt } signingSecret } }",
"variables": {
"input": {
"ownerId": "abc123",
"url": "example",
"events": [
"example"
]
}
}
}
""";
using var client = new HttpClient();
using var content = new StringContent(body, Encoding.UTF8, "application/json");
client.DefaultRequestHeaders.Add("Authorization", "Bearer <api-key>");
var response = await client.PostAsync("https://graph.clientloop.com/", content);
var result = await response.Content.ReadAsStringAsync();Types
input WebhookCreateInput
| Field | Type | Description |
|---|---|---|
ownerId | ID! | The entity this webhook belongs to. The accepted id format is product-specific (e.g. an organization or workspace); ids of other kinds are rejected. |
url | String! | |
events | [String!]! | |
description | String | |
enabled | Boolean | Defaults to true when omitted. |
type WebhookSecretResult
Returned only by webhookCreate and webhookRotateSecret: the webhook plus its raw signing secret, shown once and never retrievable again. Use it to verify delivered payload signatures.
| Field | Type | Description |
|---|---|---|
webhook | Webhook! | |
signingSecret | String! |
type Webhook
A subscription that delivers event notifications to an owner-supplied HTTPS endpoint. Referenced by id so its url or event list can change without affecting referencing records.
| Field | Type | Description |
|---|---|---|
id | ID! | |
ownerId | ID! | |
url | String! | Destination HTTPS endpoint that receives event payloads via POST. |
events | [String!]! | Event types this webhook is subscribed to (e.g. "commitment.created"). |
description | String | Optional human-readable label describing the webhook's purpose. |
enabled | Boolean! | Whether the webhook is active and delivering events. |
secretCheckValue | String! | Checksum of the signing secret, used to confirm which secret is configured without exposing it. The raw secret is only ever returned by webhookCreate and webhookRotateSecret. |
createdAt | DateTime! | |
updatedAt | DateTime! |
scalar DateTime
ISO 8601 formatted date time. Ex. 2023-11-23T14:30:00Z