curl --request POST \
--url 'https://api.getvero.com/api/v2/events/track?auth_token=' \
--header 'Content-Type: application/json' \
--data '
{
"identity": {
"id": 1000,
"email": "test@example.com"
},
"event_name": "Viewed product",
"data": {
"product_name": "Red T-shirt",
"product_url": "http://www.yourdomain.com/products/red-t-shirt"
},
"extras": {
"source": "Segment.com",
"created_at": "2023-05-30T04:46:31+0000"
}
}
'import requests
url = "https://api.getvero.com/api/v2/events/track?auth_token="
payload = {
"identity": {
"id": 1000,
"email": "test@example.com"
},
"event_name": "Viewed product",
"data": {
"product_name": "Red T-shirt",
"product_url": "http://www.yourdomain.com/products/red-t-shirt"
},
"extras": {
"source": "Segment.com",
"created_at": "2023-05-30T04:46:31+0000"
}
}
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({
identity: {id: 1000, email: 'test@example.com'},
event_name: 'Viewed product',
data: {
product_name: 'Red T-shirt',
product_url: 'http://www.yourdomain.com/products/red-t-shirt'
},
extras: {source: 'Segment.com', created_at: '2023-05-30T04:46:31+0000'}
})
};
fetch('https://api.getvero.com/api/v2/events/track?auth_token=', 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.getvero.com/api/v2/events/track?auth_token=",
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([
'identity' => [
'id' => 1000,
'email' => 'test@example.com'
],
'event_name' => 'Viewed product',
'data' => [
'product_name' => 'Red T-shirt',
'product_url' => 'http://www.yourdomain.com/products/red-t-shirt'
],
'extras' => [
'source' => 'Segment.com',
'created_at' => '2023-05-30T04:46:31+0000'
]
]),
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.getvero.com/api/v2/events/track?auth_token="
payload := strings.NewReader("{\n \"identity\": {\n \"id\": 1000,\n \"email\": \"test@example.com\"\n },\n \"event_name\": \"Viewed product\",\n \"data\": {\n \"product_name\": \"Red T-shirt\",\n \"product_url\": \"http://www.yourdomain.com/products/red-t-shirt\"\n },\n \"extras\": {\n \"source\": \"Segment.com\",\n \"created_at\": \"2023-05-30T04:46:31+0000\"\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.getvero.com/api/v2/events/track?auth_token=")
.header("Content-Type", "application/json")
.body("{\n \"identity\": {\n \"id\": 1000,\n \"email\": \"test@example.com\"\n },\n \"event_name\": \"Viewed product\",\n \"data\": {\n \"product_name\": \"Red T-shirt\",\n \"product_url\": \"http://www.yourdomain.com/products/red-t-shirt\"\n },\n \"extras\": {\n \"source\": \"Segment.com\",\n \"created_at\": \"2023-05-30T04:46:31+0000\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getvero.com/api/v2/events/track?auth_token=")
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 \"identity\": {\n \"id\": 1000,\n \"email\": \"test@example.com\"\n },\n \"event_name\": \"Viewed product\",\n \"data\": {\n \"product_name\": \"Red T-shirt\",\n \"product_url\": \"http://www.yourdomain.com/products/red-t-shirt\"\n },\n \"extras\": {\n \"source\": \"Segment.com\",\n \"created_at\": \"2023-05-30T04:46:31+0000\"\n }\n}"
response = http.request(request)
puts response.read_body{
"status": 200,
"message": "Success."
}{
"status": 400,
"message": "Bad Request"
}{
"status": 401,
"message": "Invalid authentication: You must provide a valid auth_token to access this resource."
}{
"status": 404,
"message": "The resource doesn't exist"
}{
"status": 500,
"message": "An error occurred with our API"
}Track
This endpoint tracks an event for a specific user. If the user profile doesn’t exist Vero will create it.
curl --request POST \
--url 'https://api.getvero.com/api/v2/events/track?auth_token=' \
--header 'Content-Type: application/json' \
--data '
{
"identity": {
"id": 1000,
"email": "test@example.com"
},
"event_name": "Viewed product",
"data": {
"product_name": "Red T-shirt",
"product_url": "http://www.yourdomain.com/products/red-t-shirt"
},
"extras": {
"source": "Segment.com",
"created_at": "2023-05-30T04:46:31+0000"
}
}
'import requests
url = "https://api.getvero.com/api/v2/events/track?auth_token="
payload = {
"identity": {
"id": 1000,
"email": "test@example.com"
},
"event_name": "Viewed product",
"data": {
"product_name": "Red T-shirt",
"product_url": "http://www.yourdomain.com/products/red-t-shirt"
},
"extras": {
"source": "Segment.com",
"created_at": "2023-05-30T04:46:31+0000"
}
}
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({
identity: {id: 1000, email: 'test@example.com'},
event_name: 'Viewed product',
data: {
product_name: 'Red T-shirt',
product_url: 'http://www.yourdomain.com/products/red-t-shirt'
},
extras: {source: 'Segment.com', created_at: '2023-05-30T04:46:31+0000'}
})
};
fetch('https://api.getvero.com/api/v2/events/track?auth_token=', 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.getvero.com/api/v2/events/track?auth_token=",
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([
'identity' => [
'id' => 1000,
'email' => 'test@example.com'
],
'event_name' => 'Viewed product',
'data' => [
'product_name' => 'Red T-shirt',
'product_url' => 'http://www.yourdomain.com/products/red-t-shirt'
],
'extras' => [
'source' => 'Segment.com',
'created_at' => '2023-05-30T04:46:31+0000'
]
]),
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.getvero.com/api/v2/events/track?auth_token="
payload := strings.NewReader("{\n \"identity\": {\n \"id\": 1000,\n \"email\": \"test@example.com\"\n },\n \"event_name\": \"Viewed product\",\n \"data\": {\n \"product_name\": \"Red T-shirt\",\n \"product_url\": \"http://www.yourdomain.com/products/red-t-shirt\"\n },\n \"extras\": {\n \"source\": \"Segment.com\",\n \"created_at\": \"2023-05-30T04:46:31+0000\"\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.getvero.com/api/v2/events/track?auth_token=")
.header("Content-Type", "application/json")
.body("{\n \"identity\": {\n \"id\": 1000,\n \"email\": \"test@example.com\"\n },\n \"event_name\": \"Viewed product\",\n \"data\": {\n \"product_name\": \"Red T-shirt\",\n \"product_url\": \"http://www.yourdomain.com/products/red-t-shirt\"\n },\n \"extras\": {\n \"source\": \"Segment.com\",\n \"created_at\": \"2023-05-30T04:46:31+0000\"\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.getvero.com/api/v2/events/track?auth_token=")
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 \"identity\": {\n \"id\": 1000,\n \"email\": \"test@example.com\"\n },\n \"event_name\": \"Viewed product\",\n \"data\": {\n \"product_name\": \"Red T-shirt\",\n \"product_url\": \"http://www.yourdomain.com/products/red-t-shirt\"\n },\n \"extras\": {\n \"source\": \"Segment.com\",\n \"created_at\": \"2023-05-30T04:46:31+0000\"\n }\n}"
response = http.request(request)
puts response.read_body{
"status": 200,
"message": "Success."
}{
"status": 400,
"message": "Bad Request"
}{
"status": 401,
"message": "Invalid authentication: You must provide a valid auth_token to access this resource."
}{
"status": 404,
"message": "The resource doesn't exist"
}{
"status": 500,
"message": "An error occurred with our API"
}Authorizations
Body
A valid JSON hash containing the keys id and email used to identify the user for which the event is being tracked. Both email and id must be less than 255 characters and email must be a valid email address.
Show child attributes
Show child attributes
The name of the event tracked. Must be less than 255 characters. Capitalized and lowercase letters and spaces and underscores will be treated the same by Vero's API. For example, Purchased Item, purchased item, and purchased_item will all be matched as one event in Vero's backend.
"Viewed product"
A valid JSON hash containing key value pairs that represent the custom user properties you want to track with the event. All keys are freeform and can be defined by you.
Show child attributes
Show child attributes
{
"product_name": "Red T-shirt",
"product_url": "http://www.yourdomain.com/products/red-t-shirt"
}
A valid JSON hash containing key/value pairs that represent the reserved, Vero-specific created_at and source properties. Refer to the note on "deduplication" above.
Show child attributes
Show child attributes
Was this page helpful?

