A Sync List is an ordered collection of individual items, each storing separate JSON objects. Use Lists to push JSON into an ordered list and update existing items within the list.
After you create a List, you can add, retrieve, update, and delete items from your List with the ListItem resource. (That page contains more details on how items are stored in lists, including ordering, expiration, and limitations on each item's size.)
Lists can be created, updated, subscribed to and removed via the client JavaScript SDK. Servers wishing to manage these objects can do so via the REST API using the examples below.
The unique string that we created to identify the Sync List resource.
^ES[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
An application-defined string that uniquely identifies the resource. It can be used in place of the resource's sid
in the URL to address the resource.
The SID of the Account that created the Sync List resource.
^AC[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The SID of the Sync Service the resource is associated with.
^IS[0-9a-fA-F]{32}$
Min length: 34
Max length: 34
The date and time in GMT when the Sync List expires and will be deleted, specified in ISO 8601 format. If the Sync List does not expire, this value is null
. The Sync List might not be deleted immediately after it expires.
The date and time in GMT when the resource was created specified in ISO 8601 format.
The date and time in GMT when the resource was last updated specified in ISO 8601 format.
The identity of the Sync List's creator. If the Sync List is created from the client SDK, the value matches the Access Token's identity
field. If the Sync List was created from the REST API, the value is system
.
POST https://sync.twilio.com/v1/Services/{ServiceSid}/Lists
The SID of the Sync Service to create the new Sync List in.
application/x-www-form-urlencoded
An application-defined string that uniquely identifies the resource. This value must be unique within its Service and it can be up to 320 characters long. The unique_name
value can be used as an alternative to the sid
in the URL path to address the resource.
How long, in seconds, before the Sync List expires (time-to-live) and is deleted.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function createSyncList() {11const syncList = await client.sync.v112.services("ServiceSid")13.syncLists.create();1415console.log(syncList.sid);16}1718createSyncList();
1{2"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",3"created_by": "created_by",4"date_expires": "2015-07-30T21:00:00Z",5"date_created": "2015-07-30T20:00:00Z",6"date_updated": "2015-07-30T20:00:00Z",7"links": {8"items": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Items",9"permissions": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Permissions"10},11"revision": "revision",12"service_sid": "ServiceSid",13"sid": "ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",14"unique_name": "unique_name",15"url": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"16}
GET https://sync.twilio.com/v1/Services/{ServiceSid}/Lists/{Sid}
The SID of the Sync List resource to fetch. Can be the Sync List resource's sid
or its unique_name
.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function fetchSyncList() {11const syncList = await client.sync.v112.services("ServiceSid")13.syncLists("Sid")14.fetch();1516console.log(syncList.sid);17}1819fetchSyncList();
1{2"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",3"created_by": "created_by",4"date_expires": "2015-07-30T21:00:00Z",5"date_created": "2015-07-30T20:00:00Z",6"date_updated": "2015-07-30T20:00:00Z",7"links": {8"items": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Items",9"permissions": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Permissions"10},11"revision": "revision",12"service_sid": "ServiceSid",13"sid": "Sid",14"unique_name": "unique_name",15"url": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"16}
GET https://sync.twilio.com/v1/Services/{ServiceSid}/Lists
By default, this will return the first 50 Lists. Supply a PageSize parameter to fetch up to 100 items at once. See paging for more information.
The SID of the Sync Service with the Sync List resources to read.
How many resources to return in each list page. The default is 50, and the maximum is 1000.
1
Maximum: 1000
The page token. This is provided by the API.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function listSyncList() {11const syncLists = await client.sync.v112.services("ServiceSid")13.syncLists.list({ limit: 20 });1415syncLists.forEach((s) => console.log(s.sid));16}1718listSyncList();
1{2"lists": [],3"meta": {4"first_page_url": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists?PageSize=50&Page=0",5"key": "lists",6"next_page_url": null,7"page": 0,8"page_size": 50,9"previous_page_url": null,10"url": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists?PageSize=50&Page=0"11}12}
POST https://sync.twilio.com/v1/Services/{ServiceSid}/Lists/{Sid}
The SID of the Sync List resource to update. Can be the Sync List resource's sid
or its unique_name
.
application/x-www-form-urlencoded
How long, in seconds, before the Sync List expires (time-to-live) and is deleted.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function updateSyncList() {11const syncList = await client.sync.v112.services("ServiceSid")13.syncLists("Sid")14.update({ ttl: 42 });1516console.log(syncList.sid);17}1819updateSyncList();
1{2"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",3"created_by": "created_by",4"date_expires": "2015-07-30T21:00:00Z",5"date_created": "2015-07-30T20:00:00Z",6"date_updated": "2015-07-30T20:00:00Z",7"links": {8"items": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Items",9"permissions": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Permissions"10},11"revision": "revision",12"service_sid": "ServiceSid",13"sid": "Sid",14"unique_name": "unique_name",15"url": "https://sync.twilio.com/v1/Services/ISaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/Lists/ESaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"16}
DELETE https://sync.twilio.com/v1/Services/{ServiceSid}/Lists/{Sid}
Permanently delete a List along with all items belonging to it.
The SID of the Sync List resource to delete. Can be the Sync List resource's sid
or its unique_name
.
1// Download the helper library from https://www.twilio.com/docs/node/install2const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";34// Find your Account SID and Auth Token at twilio.com/console5// and set the environment variables. See http://twil.io/secure6const accountSid = process.env.TWILIO_ACCOUNT_SID;7const authToken = process.env.TWILIO_AUTH_TOKEN;8const client = twilio(accountSid, authToken);910async function deleteSyncList() {11await client.sync.v112.services("ISXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")13.syncLists("ESXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")14.remove();15}1617deleteSyncList();
1syncClient.list('example_list').then(function(list) {2list.removeList().then(function() {3console.log('deleted list');4});5});