curl --request PATCH \
--url https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"url": "<string>",
"event_types": [],
"rotate_secret": false,
"is_enabled": true
}
'import requests
url = "https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}"
payload = {
"name": "<string>",
"url": "<string>",
"event_types": [],
"rotate_secret": False,
"is_enabled": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
url: '<string>',
event_types: [],
rotate_secret: false,
is_enabled: true
})
};
fetch('https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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.patch("https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}"
response = http.request(request)
puts response.read_body<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'url' => '<string>',
'event_types' => [
],
'rotate_secret' => false,
'is_enabled' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}const url = 'https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}';
const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
url: '<string>',
event_types: [],
rotate_secret: false,
is_enabled: true
})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));using RestSharp;
var options = new RestClientOptions("https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("x-api-key", "<api-key>");
request.AddJsonBody("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}", false);
var response = await client.PatchAsync(request);
Console.WriteLine("{0}", response.Content);
val client = OkHttpClient()
val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}")
val request = Request.Builder()
.url("https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}")
.patch(body)
.addHeader("x-api-key", "<api-key>")
.addHeader("Content-Type", "application/json")
.build()
val response = client.newCall(request).execute()import Foundation
let parameters = [
"name": "<string>",
"url": "<string>",
"event_types": [],
"rotate_secret": false,
"is_enabled": true
] as [String : Any?]
let postData = try JSONSerialization.data(withJSONObject: parameters, options: [])
let url = URL(string: "https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}")!
var request = URLRequest(url: url)
request.httpMethod = "PATCH"
request.timeoutInterval = 10
request.allHTTPHeaderFields = [
"x-api-key": "<api-key>",
"Content-Type": "application/json"
]
request.httpBody = postData
let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self))falsefalse$headers=@{}
$headers.Add("x-api-key", "<api-key>")
$headers.Add("Content-Type", "application/json")
$response = Invoke-WebRequest -Uri 'https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}' -Method PATCH -Headers $headers -ContentType 'application/json' -Body '{
"name": "<string>",
"url": "<string>",
"event_types": [],
"rotate_secret": false,
"is_enabled": true
}'{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"url": "<string>",
"is_enabled": true,
"event_types": [
"ach_transfer.created"
],
"payload_mode": "snapshot",
"created_time": "2023-11-07T05:31:56Z",
"updated_time": "2023-11-07T05:31:56Z"
}{
"code": 123,
"message": "<string>",
"debug_message": "<string>"
}{
"error_code": "<string>",
"message": "<string>"
}{
"error_code": "<string>",
"message": "<string>"
}{
"error_code": "<string>",
"message": "<string>"
}Update Global Webhook Subscription
Updates a global webhook subscription. Returns the updated subscription, including a new signing secret when you request a rotation. New global API keys with business-specific write access cannot use this route. Use the entity-scoped webhook route with x-entity-id for an approved business. Existing global API keys keep their current behavior.
curl --request PATCH \
--url https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id} \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"name": "<string>",
"url": "<string>",
"event_types": [],
"rotate_secret": false,
"is_enabled": true
}
'import requests
url = "https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}"
payload = {
"name": "<string>",
"url": "<string>",
"event_types": [],
"rotate_secret": False,
"is_enabled": True
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
url: '<string>',
event_types: [],
rotate_secret: false,
is_enabled: true
})
};
fetch('https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("x-api-key", "<api-key>")
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.patch("https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}"
response = http.request(request)
puts response.read_body<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'url' => '<string>',
'event_types' => [
],
'rotate_secret' => false,
'is_enabled' => true
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}const url = 'https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}';
const options = {
method: 'PATCH',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
url: '<string>',
event_types: [],
rotate_secret: false,
is_enabled: true
})
};
fetch(url, options)
.then(res => res.json())
.then(json => console.log(json))
.catch(err => console.error(err));using RestSharp;
var options = new RestClientOptions("https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}");
var client = new RestClient(options);
var request = new RestRequest("");
request.AddHeader("x-api-key", "<api-key>");
request.AddJsonBody("{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}", false);
var response = await client.PatchAsync(request);
Console.WriteLine("{0}", response.Content);
val client = OkHttpClient()
val mediaType = MediaType.parse("application/json")
val body = RequestBody.create(mediaType, "{\n \"name\": \"<string>\",\n \"url\": \"<string>\",\n \"event_types\": [],\n \"rotate_secret\": false,\n \"is_enabled\": true\n}")
val request = Request.Builder()
.url("https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}")
.patch(body)
.addHeader("x-api-key", "<api-key>")
.addHeader("Content-Type", "application/json")
.build()
val response = client.newCall(request).execute()import Foundation
let parameters = [
"name": "<string>",
"url": "<string>",
"event_types": [],
"rotate_secret": false,
"is_enabled": true
] as [String : Any?]
let postData = try JSONSerialization.data(withJSONObject: parameters, options: [])
let url = URL(string: "https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}")!
var request = URLRequest(url: url)
request.httpMethod = "PATCH"
request.timeoutInterval = 10
request.allHTTPHeaderFields = [
"x-api-key": "<api-key>",
"Content-Type": "application/json"
]
request.httpBody = postData
let (data, _) = try await URLSession.shared.data(for: request)
print(String(decoding: data, as: UTF8.self))falsefalse$headers=@{}
$headers.Add("x-api-key", "<api-key>")
$headers.Add("Content-Type", "application/json")
$response = Invoke-WebRequest -Uri 'https://api.meow.com/v1/webhooks/global/subscriptions/{subscription_id}' -Method PATCH -Headers $headers -ContentType 'application/json' -Body '{
"name": "<string>",
"url": "<string>",
"event_types": [],
"rotate_secret": false,
"is_enabled": true
}'{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"url": "<string>",
"is_enabled": true,
"event_types": [
"ach_transfer.created"
],
"payload_mode": "snapshot",
"created_time": "2023-11-07T05:31:56Z",
"updated_time": "2023-11-07T05:31:56Z"
}{
"code": 123,
"message": "<string>",
"debug_message": "<string>"
}{
"error_code": "<string>",
"message": "<string>"
}{
"error_code": "<string>",
"message": "<string>"
}{
"error_code": "<string>",
"message": "<string>"
}Authorizations
Your Meow API key, sent in the x-api-key header for authentication.
Path Parameters
The webhook subscription.
Body
New label for the subscription. Omit to leave it unchanged.
255New HTTPS endpoint to POST events to. Omit to leave it unchanged.
1 - 2048Replacement list of event types to deliver. Omit to leave the current selection unchanged. An empty list is rejected.
ach_transfer.created, ach_transfer.updated, wire_transfer.created, wire_transfer.updated, book_transfer.created, book_transfer.updated, international_payment.created, international_payment.updated, inbound_ach_transfer.created, inbound_ach_transfer.updated, inbound_wire_transfer.created, inbound_wire_transfer.updated, check_deposit.created, check_deposit.updated, global_account_transfer.created, crypto_transfer.created, crypto_transfer.updated, account.created, account.updated, card.created, card.updated, onboarding_consent.updated, info_request.created, info_request.updated, application.created, application.under_review, application.submitted, application.approved, application.rejected, identity_verification.action_required, identity_verification.approved, identity_verification.rejected, message.attempt.exhausted, webhook.test Issue a new signing secret. The new plaintext secret is returned once in this response and never again.
Set to true to re-enable a subscription Meow disabled after repeated delivery failures, a 410 Gone response, or an unsafe URL. The subscription keeps its id and delivery history. Omit to leave it unchanged.
New payload mode. Applies to events fanned out from here on; deliveries already queued keep the mode they were created with. Omit to leave it unchanged.
snapshot, thin Response
Successful Response
- WebhookSubscriptionResponse
- WebhookSubscriptionWithSecretResponse
Unique identifier for the subscription.
Label for the subscription.
Endpoint Meow POSTs each event to.
Whether the subscription is currently receiving deliveries. Meow sets this to false after repeated delivery failures, a 410 Gone response, or an unsafe URL; re-enable it with a PATCH.
Event types this subscription receives. null means every event.
ach_transfer.created, ach_transfer.updated, wire_transfer.created, wire_transfer.updated, book_transfer.created, book_transfer.updated, international_payment.created, international_payment.updated, inbound_ach_transfer.created, inbound_ach_transfer.updated, inbound_wire_transfer.created, inbound_wire_transfer.updated, check_deposit.created, check_deposit.updated, global_account_transfer.created, crypto_transfer.created, crypto_transfer.updated, account.created, account.updated, card.created, card.updated, onboarding_consent.updated, info_request.created, info_request.updated, application.created, application.under_review, application.submitted, application.approved, application.rejected, identity_verification.action_required, identity_verification.approved, identity_verification.rejected, message.attempt.exhausted, webhook.test How much of the resource each delivery carries: snapshot for the full resource, thin for its id and object type only.
snapshot, thin When the subscription was created.
When the subscription was last modified.