Get opt-out contact data
curl --request POST \
--url https://api.birdeye.com/resources/v1/contact/{businessId}/update-feed \
--header 'Content-Type: application/json' \
--data '
{
"end": 1693657040000,
"start": 1693570640000,
"subscriptionStatus": [
"blocked",
"opted-out"
]
}
'import requests
url = "https://api.birdeye.com/resources/v1/contact/{businessId}/update-feed"
payload = {
"end": 1693657040000,
"start": 1693570640000,
"subscriptionStatus": ["blocked", "opted-out"]
}
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({
end: 1693657040000,
start: 1693570640000,
subscriptionStatus: ['blocked', 'opted-out']
})
};
fetch('https://api.birdeye.com/resources/v1/contact/{businessId}/update-feed', 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.birdeye.com/resources/v1/contact/{businessId}/update-feed",
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([
'end' => 1693657040000,
'start' => 1693570640000,
'subscriptionStatus' => [
'blocked',
'opted-out'
]
]),
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.birdeye.com/resources/v1/contact/{businessId}/update-feed"
payload := strings.NewReader("{\n \"end\": 1693657040000,\n \"start\": 1693570640000,\n \"subscriptionStatus\": [\n \"blocked\",\n \"opted-out\"\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.birdeye.com/resources/v1/contact/{businessId}/update-feed")
.header("Content-Type", "application/json")
.body("{\n \"end\": 1693657040000,\n \"start\": 1693570640000,\n \"subscriptionStatus\": [\n \"blocked\",\n \"opted-out\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.birdeye.com/resources/v1/contact/{businessId}/update-feed")
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 \"end\": 1693657040000,\n \"start\": 1693570640000,\n \"subscriptionStatus\": [\n \"blocked\",\n \"opted-out\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"emailOptOut": [
{
"id": 1213422,
"firstName": "John",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242"
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242"
}
],
"textOptOut": [
{
"id": 1213425,
"firstName": "Jane",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242"
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242"
}
],
"blocked": [
{
"id": 1213422,
"firstName": "John",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242"
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242"
}
]
}{
"code": 20083,
"message": "End date can't be before start date"
}{
"code": 1161,
"message": "Invalid API key"
}{
"code": 89,
"message": "Rate limit exceeded"
}Contact
Get opt-out Contacts
API to fetch the daily opt-out or blocked contact data for a business
POST
/
v1
/
contact
/
{businessId}
/
update-feed
Get opt-out contact data
curl --request POST \
--url https://api.birdeye.com/resources/v1/contact/{businessId}/update-feed \
--header 'Content-Type: application/json' \
--data '
{
"end": 1693657040000,
"start": 1693570640000,
"subscriptionStatus": [
"blocked",
"opted-out"
]
}
'import requests
url = "https://api.birdeye.com/resources/v1/contact/{businessId}/update-feed"
payload = {
"end": 1693657040000,
"start": 1693570640000,
"subscriptionStatus": ["blocked", "opted-out"]
}
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({
end: 1693657040000,
start: 1693570640000,
subscriptionStatus: ['blocked', 'opted-out']
})
};
fetch('https://api.birdeye.com/resources/v1/contact/{businessId}/update-feed', 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.birdeye.com/resources/v1/contact/{businessId}/update-feed",
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([
'end' => 1693657040000,
'start' => 1693570640000,
'subscriptionStatus' => [
'blocked',
'opted-out'
]
]),
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.birdeye.com/resources/v1/contact/{businessId}/update-feed"
payload := strings.NewReader("{\n \"end\": 1693657040000,\n \"start\": 1693570640000,\n \"subscriptionStatus\": [\n \"blocked\",\n \"opted-out\"\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.birdeye.com/resources/v1/contact/{businessId}/update-feed")
.header("Content-Type", "application/json")
.body("{\n \"end\": 1693657040000,\n \"start\": 1693570640000,\n \"subscriptionStatus\": [\n \"blocked\",\n \"opted-out\"\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.birdeye.com/resources/v1/contact/{businessId}/update-feed")
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 \"end\": 1693657040000,\n \"start\": 1693570640000,\n \"subscriptionStatus\": [\n \"blocked\",\n \"opted-out\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"emailOptOut": [
{
"id": 1213422,
"firstName": "John",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242"
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242"
}
],
"textOptOut": [
{
"id": 1213425,
"firstName": "Jane",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242"
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242"
}
],
"blocked": [
{
"id": 1213422,
"firstName": "John",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242"
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242"
}
]
}{
"code": 20083,
"message": "End date can't be before start date"
}{
"code": 1161,
"message": "Invalid API key"
}{
"code": 89,
"message": "Rate limit exceeded"
}Headers
e.g. application/json
e.g. [Required] Partner specific API key provided by Birdeye for data exchange.
Media type of the JSON request body.
Path Parameters
Id of a business (Long).
Response
OK
All the contacts grouped under this field, which were opted out from email in the given duration
Show child attributes
Show child attributes
All the contacts grouped under this field, which were opted out from text in the given duration
Show child attributes
Show child attributes
All the contacts grouped under this field, which were blockedl in the given duration.
Show child attributes
Show child attributes
⌘I