Conversion events
Create the WABA dataset
Forwards dataset creation to Meta and remembers the returned dataset ID. Requires the selected connection token to have access to the WABA and the permissions required by Meta. Sandbox is not supported.
POST
/
{business_account_id}
/
dataset
Create the WABA dataset
curl --request POST \
--url https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"dataset_name": "Customer conversions"
}
'import requests
url = "https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset"
payload = { "dataset_name": "Customer conversions" }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({dataset_name: 'Customer conversions'})
};
fetch('https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset', 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.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset",
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([
'dataset_name' => 'Customer conversions'
]),
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;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset"
payload := strings.NewReader("{\n \"dataset_name\": \"Customer conversions\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"dataset_name\": \"Customer conversions\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"dataset_name\": \"Customer conversions\"\n}"
response = http.request(request)
puts response.read_body{}Authorizations
ApiKeyAuthBearerAuth
Project API key for authentication. This is the recommended authentication method.
Get your API key from the Kapso dashboard under Integrations > API keys.
Path Parameters
WhatsApp Business Account ID connected to your project
Body
application/json
Response
Meta dataset creation response, passed through unchanged
The response is of type object.
Was this page helpful?
⌘I
Create the WABA dataset
curl --request POST \
--url https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"dataset_name": "Customer conversions"
}
'import requests
url = "https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset"
payload = { "dataset_name": "Customer conversions" }
headers = {
"X-API-Key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-Key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({dataset_name: 'Customer conversions'})
};
fetch('https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset', 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.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset",
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([
'dataset_name' => 'Customer conversions'
]),
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;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset"
payload := strings.NewReader("{\n \"dataset_name\": \"Customer conversions\"\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset")
.header("X-API-Key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"dataset_name\": \"Customer conversions\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.kapso.ai/meta/whatsapp/v24.0/{business_account_id}/dataset")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-Key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"dataset_name\": \"Customer conversions\"\n}"
response = http.request(request)
puts response.read_body{}
