Retrieve Opted-Out Contacts
curl --request POST \
--url https://api.birdeye.com/resources/v1/contact/external/preferences/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/external/preferences/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/external/preferences/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/external/preferences/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/external/preferences/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/external/preferences/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/external/preferences/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",
"optOutFrom": [
"marketing",
"feedback"
]
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242",
"optOutFrom": [
"marketing",
"feedback"
]
}
],
"textOptOut": [
{
"id": 1213425,
"firstName": "Jane",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242",
"optOutFrom": [
"marketing",
"feedback"
]
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242",
"optOutFrom": [
"marketing",
"feedback"
]
}
],
"blocked": [
{
"id": 1213422,
"firstName": "John",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242",
"optOutFrom": [
"marketing",
"feedback"
]
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242",
"optOutFrom": [
"marketing",
"feedback"
]
}
]
}{
"code": 20083,
"message": "End date can't be before start date"
}{
"code": 1161,
"message": "Invalid API key"
}{
"code": 89,
"message": "Rate limit exceeded"
}Contact V2
Retrieve Opted-Out Contacts
API to fetch the daily opt-out or blocked contact data for a business
POST
/
v1
/
contact
/
external
/
preferences
/
update-feed
Retrieve Opted-Out Contacts
curl --request POST \
--url https://api.birdeye.com/resources/v1/contact/external/preferences/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/external/preferences/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/external/preferences/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/external/preferences/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/external/preferences/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/external/preferences/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/external/preferences/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",
"optOutFrom": [
"marketing",
"feedback"
]
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242",
"optOutFrom": [
"marketing",
"feedback"
]
}
],
"textOptOut": [
{
"id": 1213425,
"firstName": "Jane",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242",
"optOutFrom": [
"marketing",
"feedback"
]
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242",
"optOutFrom": [
"marketing",
"feedback"
]
}
],
"blocked": [
{
"id": 1213422,
"firstName": "John",
"lastName": "Doe",
"emailId": "john@yahoo.com",
"phone": "(212) 234-1242",
"optOutFrom": [
"marketing",
"feedback"
]
},
{
"id": 1213423,
"firstName": "Johnny",
"lastName": "Doe",
"emailId": "johnny@yahoo.com",
"phone": "(212) 231-1242",
"optOutFrom": [
"marketing",
"feedback"
]
}
]
}{
"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.
e.g. [Required] User assosiated businessNumber
Media type of the JSON request body.
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