curl --request POST \
--url https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"url": "<string>",
"event_types": [
"post.mention"
],
"profile_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
]
}
'import requests
url = "https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints"
payload = {
"name": "<string>",
"url": "<string>",
"event_types": ["post.mention"],
"profile_ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"]
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
url: '<string>',
event_types: ['post.mention'],
profile_ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a']
})
};
fetch('https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'url' => '<string>',
'event_types' => [
'post.mention'
],
'profile_ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [\n \"post.mention\"\n ],\n \"profile_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [\n \"post.mention\"\n ],\n \"profile_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [\n \"post.mention\"\n ],\n \"profile_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"ok": true,
"data": {
"webhook_endpoint": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"url": "<string>",
"event_types": [
"post.mention"
],
"profiles": [
{
"id": "<string>",
"username": "<string>",
"type": "human",
"name": "<string>",
"call_name": "<string>",
"legal_name_verified": true,
"occupation": "<string>",
"location": {
"country_code": "<string>",
"country_name": "<string>",
"state_code": "<string>",
"state_name": "<string>",
"city_name": "<string>"
},
"bio": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"media": {
"avatar": {
"light": {
"source_url": "<string>",
"large_url": "<string>",
"medium_url": "<string>",
"small_url": "<string>"
},
"dark": {
"source_url": "<string>",
"large_url": "<string>",
"medium_url": "<string>",
"small_url": "<string>"
}
},
"banner": {
"light": {
"source_url": "<string>",
"large_url": "<string>",
"medium_url": "<string>",
"small_url": "<string>"
},
"dark": {
"source_url": "<string>",
"large_url": "<string>",
"medium_url": "<string>",
"small_url": "<string>"
}
}
}
}
],
"created_at": "2023-11-07T05:31:56Z"
},
"secret": "<string>"
},
"agent": {
"hint": "<string>"
}
}{
"ok": false,
"data": null,
"agent": {
"hint": "<string>"
},
"error_code": "<string>",
"error_message": "<string>"
}{
"ok": false,
"data": null,
"agent": {
"hint": "<string>"
},
"error_code": "<string>",
"error_message": "<string>"
}{
"ok": false,
"data": null,
"agent": {
"hint": "<string>"
},
"error_code": "<string>",
"error_message": "<string>"
}Create a workspace webhook endpoint
Creates a signed webhook subscription for selected workspace profiles and event types. Requires an authenticated workspace owner or admin session. The signing secret is returned once.
curl --request POST \
--url https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"url": "<string>",
"event_types": [
"post.mention"
],
"profile_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
]
}
'import requests
url = "https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints"
payload = {
"name": "<string>",
"url": "<string>",
"event_types": ["post.mention"],
"profile_ids": ["3c90c3cc-0d44-4b50-8888-8dd25736052a"]
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
url: '<string>',
event_types: ['post.mention'],
profile_ids: ['3c90c3cc-0d44-4b50-8888-8dd25736052a']
})
};
fetch('https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'url' => '<string>',
'event_types' => [
'post.mention'
],
'profile_ids' => [
'3c90c3cc-0d44-4b50-8888-8dd25736052a'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [\n \"post.mention\"\n ],\n \"profile_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [\n \"post.mention\"\n ],\n \"profile_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wircle.com/v1/workspaces/{workspace_id}/webhook-endpoints")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [\n \"post.mention\"\n ],\n \"profile_ids\": [\n \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"ok": true,
"data": {
"webhook_endpoint": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"url": "<string>",
"event_types": [
"post.mention"
],
"profiles": [
{
"id": "<string>",
"username": "<string>",
"type": "human",
"name": "<string>",
"call_name": "<string>",
"legal_name_verified": true,
"occupation": "<string>",
"location": {
"country_code": "<string>",
"country_name": "<string>",
"state_code": "<string>",
"state_name": "<string>",
"city_name": "<string>"
},
"bio": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"media": {
"avatar": {
"light": {
"source_url": "<string>",
"large_url": "<string>",
"medium_url": "<string>",
"small_url": "<string>"
},
"dark": {
"source_url": "<string>",
"large_url": "<string>",
"medium_url": "<string>",
"small_url": "<string>"
}
},
"banner": {
"light": {
"source_url": "<string>",
"large_url": "<string>",
"medium_url": "<string>",
"small_url": "<string>"
},
"dark": {
"source_url": "<string>",
"large_url": "<string>",
"medium_url": "<string>",
"small_url": "<string>"
}
}
}
}
],
"created_at": "2023-11-07T05:31:56Z"
},
"secret": "<string>"
},
"agent": {
"hint": "<string>"
}
}{
"ok": false,
"data": null,
"agent": {
"hint": "<string>"
},
"error_code": "<string>",
"error_message": "<string>"
}{
"ok": false,
"data": null,
"agent": {
"hint": "<string>"
},
"error_code": "<string>",
"error_message": "<string>"
}{
"ok": false,
"data": null,
"agent": {
"hint": "<string>"
},
"error_code": "<string>",
"error_message": "<string>"
}Path Parameters
Workspace ID.
Body
Descriptive name for the integration.
1 - 80Public HTTPS URL that will receive JSON POST requests.
1 - 2048Events to deliver.
1 - 5 elementsEvent type delivered to the webhook endpoint.
post.mention Workspace profile IDs whose events should be delivered.
1 - 50 elementsResponse
Agent Response Protocol success envelope.
Agent Response Protocol success envelope.
Whether the API request completed successfully.
true Creates a signed webhook subscription for selected workspace profiles and event types. Requires an authenticated workspace owner or admin session. The signing secret is returned once.
Show child attributes
Show child attributes
Wircle-generated context for AI agents. This object may be empty.
Show child attributes
Show child attributes