Replace List Users
Finish Sync
API to finish sync and make the draft list version live.
PATCH
/
v1
/
subscriber_list
/
{list_id}
/
version
/
{version_id}
/
finish_sync
/
Finish Sync
curl --request PATCH \
--url https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/"
headers = {"Authorization": "Bearer <token>"}
response = requests.patch(url, headers=headers)
print(response.text)const options = {method: 'PATCH', headers: {Authorization: 'Bearer <token>'}};
fetch('https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/', 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://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/"
req, _ := http.NewRequest("PATCH", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"list_id": "_list_id_",
"list_name": "_list_name_",
"list_description": "a brief of what type of users are part of this list",
"list_type": "static_list",
"subscribers_count": 0,
"source": null,
"is_readonly": false,
"status": "draft",
"track_user_entry": false,
"track_user_exit": false,
"requested_for_delete": false,
"created_at": "2025-04-06T23:18:59.601000Z",
"updated_at": "2025-04-06T23:18:59.601000Z",
"version_id": null
}{
"code": 404,
"error_code": "not_found",
"type": "NotFound",
"message": "version_id 01JR6PCW8H9K3H40XZV4A5R not found for list_id _list_id_",
"detail": "version_id 01JR6PCW8H9K3H40XZV4A5R not found for list_id _list_id_"
}Authorizations
Pass as Bearer <API_KEY>. Get API Key from SuprSend dashboard Developers -> API Keys section.
Path Parameters
Unique string identifier of the list
Unique string identifier of the draft version of the list which needs to be made active(live)
Response
201
finish sync makes the draft version with the version_id live as well deletes the draft version.
Was this page helpful?
Previous
Delete Draft ListAPI to delete draft version of the list. Use this to discard test or interim versions before publishing the final list.
Next
⌘I
Finish Sync
curl --request PATCH \
--url https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/ \
--header 'Authorization: Bearer <token>'import requests
url = "https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/"
headers = {"Authorization": "Bearer <token>"}
response = requests.patch(url, headers=headers)
print(response.text)const options = {method: 'PATCH', headers: {Authorization: 'Bearer <token>'}};
fetch('https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/', 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://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/"
req, _ := http.NewRequest("PATCH", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://hub.suprsend.com/v1/subscriber_list/{list_id}/version/{version_id}/finish_sync/")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"list_id": "_list_id_",
"list_name": "_list_name_",
"list_description": "a brief of what type of users are part of this list",
"list_type": "static_list",
"subscribers_count": 0,
"source": null,
"is_readonly": false,
"status": "draft",
"track_user_entry": false,
"track_user_exit": false,
"requested_for_delete": false,
"created_at": "2025-04-06T23:18:59.601000Z",
"updated_at": "2025-04-06T23:18:59.601000Z",
"version_id": null
}{
"code": 404,
"error_code": "not_found",
"type": "NotFound",
"message": "version_id 01JR6PCW8H9K3H40XZV4A5R not found for list_id _list_id_",
"detail": "version_id 01JR6PCW8H9K3H40XZV4A5R not found for list_id _list_id_"
}