Update multiple customers
curl --request POST \
--url https://api.pocketflows.com/businesses/{id}/customers/batch_update \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"customers": [
{
"id": "<string>",
"phone_number": "<string>",
"email_address": "<string>",
"metadata": {},
"full_name": "<string>"
}
]
}
'import requests
url = "https://api.pocketflows.com/businesses/{id}/customers/batch_update"
payload = { "customers": [
{
"id": "<string>",
"phone_number": "<string>",
"email_address": "<string>",
"metadata": {},
"full_name": "<string>"
}
] }
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
customers: [
{
id: '<string>',
phone_number: '<string>',
email_address: '<string>',
metadata: {},
full_name: '<string>'
}
]
})
};
fetch('https://api.pocketflows.com/businesses/{id}/customers/batch_update', 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.pocketflows.com/businesses/{id}/customers/batch_update",
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([
'customers' => [
[
'id' => '<string>',
'phone_number' => '<string>',
'email_address' => '<string>',
'metadata' => [
],
'full_name' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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.pocketflows.com/businesses/{id}/customers/batch_update"
payload := strings.NewReader("{\n \"customers\": [\n {\n \"id\": \"<string>\",\n \"phone_number\": \"<string>\",\n \"email_address\": \"<string>\",\n \"metadata\": {},\n \"full_name\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.pocketflows.com/businesses/{id}/customers/batch_update")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"customers\": [\n {\n \"id\": \"<string>\",\n \"phone_number\": \"<string>\",\n \"email_address\": \"<string>\",\n \"metadata\": {},\n \"full_name\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pocketflows.com/businesses/{id}/customers/batch_update")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"customers\": [\n {\n \"id\": \"<string>\",\n \"phone_number\": \"<string>\",\n \"email_address\": \"<string>\",\n \"metadata\": {},\n \"full_name\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"customers": [
{
"id": "<string>",
"external_id": "<string>",
"email_address": "<string>",
"phone_number": "<string>",
"full_name": "<string>",
"metadata": {},
"unsubscribed": "future"
}
]
}Update multiple customers
POST
/
businesses
/
{id}
/
customers
/
batch_update
Update multiple customers
curl --request POST \
--url https://api.pocketflows.com/businesses/{id}/customers/batch_update \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"customers": [
{
"id": "<string>",
"phone_number": "<string>",
"email_address": "<string>",
"metadata": {},
"full_name": "<string>"
}
]
}
'import requests
url = "https://api.pocketflows.com/businesses/{id}/customers/batch_update"
payload = { "customers": [
{
"id": "<string>",
"phone_number": "<string>",
"email_address": "<string>",
"metadata": {},
"full_name": "<string>"
}
] }
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
customers: [
{
id: '<string>',
phone_number: '<string>',
email_address: '<string>',
metadata: {},
full_name: '<string>'
}
]
})
};
fetch('https://api.pocketflows.com/businesses/{id}/customers/batch_update', 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.pocketflows.com/businesses/{id}/customers/batch_update",
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([
'customers' => [
[
'id' => '<string>',
'phone_number' => '<string>',
'email_address' => '<string>',
'metadata' => [
],
'full_name' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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.pocketflows.com/businesses/{id}/customers/batch_update"
payload := strings.NewReader("{\n \"customers\": [\n {\n \"id\": \"<string>\",\n \"phone_number\": \"<string>\",\n \"email_address\": \"<string>\",\n \"metadata\": {},\n \"full_name\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.pocketflows.com/businesses/{id}/customers/batch_update")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"customers\": [\n {\n \"id\": \"<string>\",\n \"phone_number\": \"<string>\",\n \"email_address\": \"<string>\",\n \"metadata\": {},\n \"full_name\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pocketflows.com/businesses/{id}/customers/batch_update")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"customers\": [\n {\n \"id\": \"<string>\",\n \"phone_number\": \"<string>\",\n \"email_address\": \"<string>\",\n \"metadata\": {},\n \"full_name\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"customers": [
{
"id": "<string>",
"external_id": "<string>",
"email_address": "<string>",
"phone_number": "<string>",
"full_name": "<string>",
"metadata": {},
"unsubscribed": "future"
}
]
}Batch update is done as “all or nothing.” If any of the updates causes an
error (say after updating two customers would have had the same email
address), all updates in the batch are cancelled.
Authorizations
Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.
Path Parameters
The ID of the business
Body
application/json
An array of customer data to update. Must identify every customer with their ID
Show child attributes
Show child attributes
Response
200 - application/json
An array of updated Customer objects
An array of updated Customer objects
Show child attributes
Show child attributes