{"info":{"_postman_id":"68298413-dc8a-4c61-b41e-a0721d2a4fd0","name":"Singular REST API","description":"<html><head></head><body><h2 id=\"singular-api-v2-postman-collection\">Singular API v2 Postman Collection</h2>\n<p>Updated: Sep.2025</p>\n<p>This is a Postman collection covering the Singular REST API v2 for App Instances. See <a href=\"https://developer.singular.live/rest-api/introduction\">https://developer.singular.live/rest-api</a> for more details.</p>\n<p>If you plan to integrate Singular into your platform, implement automated workflows, [let us know](<a href=\"https://mailto:support@singular.live?subject=Singular\">https://mailto:support@singular.live?subject=Singular</a> Integration)!</p>\n<p>We provide an extended REST API colection and additional integration modules for Singular partners.</p>\n<ul>\n<li><p>Want to learn more about the Singular Partner Program? Click <a href=\"https://www.singular.live/company/partner-program\">here</a>!</p>\n</li>\n<li><p>Want to join the Singular Partner Program? Click <a href=\"https://www.singular.live/company/partner-program#join\">here</a>!</p>\n</li>\n</ul>\n<h2 id=\"prerequisites\">Prerequisites</h2>\n<ul>\n<li><p><a href=\"https://www.postman.com/downloads/\">Postman</a></p>\n</li>\n<li><p><a href=\"https://app.singular.live/users/signup\">Singular Account</a></p>\n</li>\n</ul>\n<h2 id=\"getting-started\">Getting Started</h2>\n<p>To get started download the collection via the <a href=\"https://www.getpostman.com/collections/d5c257099e3ee9c82f06\">collection JSON link</a> or fork the collection by clicking the <a href=\"https://www.getpostman.com/docs/run_button_ux\"><i>Run in Postman</i></a> button present at the top of the documentation page.</p>\n<p>Also visit the <a href=\"http://developer.singular.live/\">Singular Developer Portal</a> for further documentation of Singular APIs, including <a href=\"https://developer.singular.live/quick-start\">Quick start examples</a> and <a href=\"https://developer.singular.live/rest-api/how-to-guides\">How-to guides</a>.</p>\n<h2 id=\"authentication\">Authentication</h2>\n<p>The Singular API endpoints described in this collection use <code>tokens</code> for authentication.</p>\n<ul>\n<li><p><strong>Shared App Token:</strong><br>  <code>Shared App Tokens</code> are used as path variables in the query URL.<br>  You can generate <code>Shared App Tokens</code> for App Instances in the Singular Dashboard. The article <a href=\"https://support.singular.live/hc/en-us/articles/360046167591-Generate-or-revoke-access-to-your-Control-Application\">Generate and revoke access to your Control App</a> on the <a href=\"https://support.singular.live\">Singular Support Portal</a> contains a step-by-step description.</p>\n</li>\n<li><p><strong>Private and Public Tokens:</strong><br>  <a href=\"#0993532f-2725-433d-ba07-942882d2125c\">Singular Data Streams</a> use Private and Public Tokens for sending data and receiving data.</p>\n</li>\n</ul>\n<h1 id=\"rate-limits\">Rate limits</h1>\n<p>Every day the Singular API receives millions of requests. To help manage the volume of requests, limits are placed on the number of requests that can be made. The Singular API also employs several safeguards against bursts of incoming traffic. Users who send many requests in quick succession or a high volume of data that exceed their account limits may see error responses that show up as <a href=\"https://tools.ietf.org/html/rfc6585\">status code 429</a>.<br>These limits help us provide the reliable and scalable API that our customers need.</p>\n<p>We have the following limiters in the API, including:</p>\n<ul>\n<li><p><strong>Daily limiters</strong> limit the number of requests and the amount of data received by the API per day.</p>\n</li>\n<li><p><strong>Burst rate limiters</strong> limit the number of requests and the amount of data received by the API per minute.</p>\n</li>\n</ul>\n<p><strong>The daily and burst rate limiters depend on your subscription type.</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Subscription</th>\n<th>Daily calls</th>\n<th>Burst calls (per minute)</th>\n<th>Daily data</th>\n<th>Burst data (per minute)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Free</td>\n<td>10,000</td>\n<td>50</td>\n<td>25MB</td>\n<td>200KB</td>\n</tr>\n<tr>\n<td>Professional</td>\n<td>20,000</td>\n<td>200</td>\n<td>100MB</td>\n<td>500KB</td>\n</tr>\n<tr>\n<td>Enterprise</td>\n<td>100,000</td>\n<td>500</td>\n<td>500MB</td>\n<td>1MB</td>\n</tr>\n<tr>\n<td>Education</td>\n<td>20,000</td>\n<td>200</td>\n<td>100MB</td>\n<td>500KB</td>\n</tr>\n<tr>\n<td>Event</td>\n<td>20,000</td>\n<td>200</td>\n<td>100MB</td>\n<td>500KB</td>\n</tr>\n<tr>\n<td>Trial</td>\n<td>100,000</td>\n<td>500</td>\n<td>500MB</td>\n<td>1MB</td>\n</tr>\n<tr>\n<td>UNO Plus</td>\n<td>20,000</td>\n<td>200</td>\n<td>50MB</td>\n<td>500KB</td>\n</tr>\n</tbody>\n</table>\n</div><p>Treat these limits as maximums and don’t generate unnecessary load. See Handling Rate Violations for advice on handling 429s. If you suddenly see a rising number of rate-limited requests, please contact <a href=\"https://mailto:support@singular.live?subject=Rate-Limit-Increase\">Singular Support</a>.<br>We may reduce limits to prevent abuse or increase limits to enable high-traffic applications.</p>\n<p>To request an increased rate limit, please contact <a href=\"https://mailto:support@singular.live?subject=Rate-Limit-Increase\">Singular Support</a>.</p>\n<p>For integrating data feeds with high-volume, high-frequency, and low-latency updates, we recommend using <a href=\"#0993532f-2725-433d-ba07-942882d2125c\">Singular Data Streams</a>.</p>\n<h2 id=\"endpoints-using-rate-limits\">Endpoints using rate limits</h2>\n<ul>\n<li><p>POST / PATCH: <code>https://app.singular.live/apiv2/controlapps/{{token}}/control</code></p>\n</li>\n<li><p>POST / PATCH: <code>https://app.singular.live/apiv2/controlapps/{{token}}/command</code></p>\n</li>\n</ul>\n<h2 id=\"header-response-codes\">Header response codes</h2>\n<p>Requests to endpoints using rate limits return custom headers response codes. The response code is a JSON string with detailed information about daily limits and burst limits.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Header</th>\n<th>Value</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>X-Singular-Ratelimit-Burst-Calls</td>\n<td><code>{\"limit\": 500, \"remaining\": 499, \"reset\": 1614430792}</code></td>\n</tr>\n<tr>\n<td>X-Singular-Ratelimit-Daily-Calls</td>\n<td><code>{\"limit\":1048576, \"remaining\":1048452, \"reset\":1614430792}</code></td>\n</tr>\n<tr>\n<td>X-Singular-Ratelimit-Burst-Data</td>\n<td><code>{\"limit\":100000, \"remaining\":99854, \"reset\":1614470401}</code></td>\n</tr>\n<tr>\n<td>X-Singular-Ratelimit-Daily-Data</td>\n<td><code>{\"limit\":524288000, \"remaining\":522565096, \"reset\":1614470401}</code></td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Ratelimit values:</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>limit</code></td>\n<td>maximum number of requests per minute or day</td>\n</tr>\n<tr>\n<td><code>remaining</code></td>\n<td>number of calls or bytes left within the current minute or day</td>\n</tr>\n<tr>\n<td><code>reset</code></td>\n<td>UTC time indicates the next reset of the burst or daily limit</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"common-causes-and-mitigation-strategies\">Common causes and mitigation strategies</h2>\n<p>Rate limits can occur under a variety of conditions, but it’s most common in these scenarios:</p>\n<ul>\n<li><p>Running a large volume of closely-spaced requests can lead to the burst rate limiting. This often happens when developing or testing a data feed integration. When engaging in these activities, you should try to control the client side's request rate and data volume (see Handling Rate Limit Violations).</p>\n</li>\n<li><p>Sending huge amounts of data to the API can lead to the burst rate limiting. This happens when sending growing statistics data over a period of time. In such a case, you should control the data volume on the client-side and only send the required dynamic data to the API.</p>\n</li>\n</ul>\n<h2 id=\"rate-limit-violations\">Rate limit violations</h2>\n<p>Rate limit violations are logged to the <a href=\"https://app.singular.live/users/settings/accountStatus\">Account Usage Statistics</a>.</p>\n<blockquote>\n<p>Rate limit violations for <strong>Professional and Enterprise Subscriptions</strong> are logged, but API requests exceeding the limits will still be processed. </p>\n</blockquote>\n<blockquote>\n<p>Rate limit violations for <strong>Free Subscriptions</strong> will be logged, and API requests exceeding the limits will be rejected and return an <a href=\"https://tools.ietf.org/html/rfc6585\">error status code 429</a> <code>Too Many Requests</code> </p>\n</blockquote>\n<h2 id=\"handling-rate-limit-violations\">Handling rate limit violations</h2>\n<p>A basic technique for integrations to handle rate limiting is to watch for <code>429 status codes</code> and build in a retry mechanism. The retry mechanism should follow an exponential backoff schedule to reduce request volume or increase the time between requests when necessary. Ideally, the client-side is self-aware of existing rate limits and can pause requests until the currently exceeded window expires.</p>\n<p>We’d also recommend looking into the following techniques for handling limiting gracefully:</p>\n<ul>\n<li><p>Add randomness into the requests to avoid a <a href=\"https://en.wikipedia.org/wiki/Thundering_herd_problem\">thundering herd problem</a>.</p>\n</li>\n<li><p>Implement a <a href=\"https://en.wikipedia.org/wiki/Token_bucket\">token bucket algorithm</a> for controlling rate limits at a global scale.</p>\n</li>\n</ul>\n<h2 id=\"support\">Support</h2>\n<p>For help regarding accessing the Singular REST API, feel free to submit at <a href=\"https://support.singular.live/hc/en-us/requests/new\">support ticket</a> or send us an <a href=\"https://mailto:support@singular.live?subject=REST-API\">email</a>.</p>\n<h2 id=\"terms-of-use\">Terms of Use</h2>\n<p>For information on API terms of use and privacy, refer to our policy document at <a href=\"http://www.singular.live/terms-of-service\">http://www.singular.live/terms-of-service</a> and <a href=\"http://www.singular.live/privacy-policy\">http://www.singular.live/privacy-policy</a>.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"Rate limits","slug":"rate-limits"}],"owner":"2177855","collectionId":"68298413-dc8a-4c61-b41e-a0721d2a4fd0","publishedId":"2s83zcTSu6","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"555555","highlight":"58B947"},"publishDate":"2022-12-27T20:36:38.000Z"},"item":[{"name":"App Instance","item":[{"name":"Get Control App Details","item":[{"name":"Get Control App Metadata","event":[{"listen":"test","script":{"id":"f759a4af-8396-4f76-a571-6d00b845f2ee","exec":[""],"type":"text/javascript"}}],"id":"8e68adf0-2291-4916-a4a2-8dd8270c0a39","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://app.singular.live/apiv2/controlapps/:appToken","description":"<p>Retrieves the metadata of a control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","name":"App Instance","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"<string>","key":"appToken"}]}},"response":[{"id":"00f14f6f-7a4f-4a85-a836-6b3d8ecfcd98","name":"Get Control App Metadata - 200 OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken","protocol":"https","host":["app","singular","live"],"path":["apiv2","controlapps",":appToken"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"(Required) Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 04 Oct 2022 13:18:32 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2B4BECBD5F811F81B4E8DB10EAB40F80CE214DEDDDA045DE3E7F4635FB01"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"3d3-IN3I59FWs0GCmNtzA2S9C8ESvAQ\""},{"key":"Set-Cookie","value":"session_id=s%3A85OCYDkxZmuvjPioNCNiWp6avZftfWVg.mOKiiF8%2F0Fnfcrkus7BhT0aY0qvBnNEuzQvbovOf7SY; Path=/; HttpOnly; Secure; SameSite=None"},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=%2FaBG7H4Od%2FDcTIwUUYpphxZYdqjTjVBybu%2BSSw3dLSE8%2FT0Laef6QCAcBdZWg7sV7Lhe22rzXs7kQdg8xZODM5MZ4Okl36sWVbXHLczunVghYh9fkpHbqzbCUZ5XeAXfiVPf\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"754e343a79cc90ae-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 1630476,\n    \"userId\": 25290,\n    \"accountId\": 22123,\n    \"thumbnail\": \"//image.singular.live/fit-in/150x150/f12f184c9a0eb763beb40478e02a1250/images/4GcvLpm2JA5lUFrshMO7vK.png\",\n    \"marketplaceID\": null,\n    \"updatedAt\": \"2023-01-04T08:49:23.000Z\",\n    \"createdAt\": \"2022-09-22T15:46:54.000Z\",\n    \"type\": \"controlapp\",\n    \"outputUrl\": \"https://app.singular.live/output/3AVwVLk51gGVCFWckgBcti/Output?aspect=16:9\",\n    \"broadcastOutputUrl\": \"https://app.singular.live/output/3AVwVLk51gGVCFWckgBcti/Broadcast?aspect=16:9\",\n    \"publicControlUrl\": \"https://app.singular.live/control/1H7sRGX6UhgQHlAgtAXTB6\",\n    \"publicControlApiUrl\": \"https://app.singular.live/apiv2/controlapps/1H7sRGX6UhgQHlAgtAXTB6/control\",\n    \"publicCommandApiUrl\": \"https://app.singular.live/apiv2/controlapps/1H7sRGX6UhgQHlAgtAXTB6/command\",\n    \"publicModelApiUrl\": \"https://app.singular.live/apiv2/controlapps/1H7sRGX6UhgQHlAgtAXTB6/model\",\n    \"appTemplateId\": 518,\n    \"appTemplateVersion\": 11,\n    \"compositionJson\": \"https://assets.singular.live/174aef9588b6e7539e18a6bc37c4ebe6/jsons/3xZQFn2MiMJuxiwtdY0oCH.json\",\n    \"name\": \"REST-Control Node Field Types app\",\n    \"folder\": \"7623f754-e32a-48f8-8d2d-46105df16ea0\",\n    \"compositionId\": 454606\n}"},{"id":"d4491119-145e-4021-b2be-9e85f99de211","name":"Get Control App Metadata - 404 Not Found","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken","protocol":"https","host":["app","singular","live"],"path":["apiv2","controlapps",":appToken"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"(Required) Shared App Token"}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 04 Oct 2022 13:19:16 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2BD37F61EA3530680CFA6C243EDCA59759AC619F02EF0E6441004A36B200"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"30-xRR8LmFO/2eYOSAQLwV6RTju+FA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=ZJ%2FIJq6It%2Fm%2F7PzqGhNUhtmkqhoyvTuVgAswOFjLuWX5RjZ9VjNvyLoUWDifWubDXLrqgduIqOvmC84C0kiHWRWPt1wVTVL5qlQPFzX%2FN1y38qMEPxCMn96tOLswP4m6%2BZd7\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"754e354cae6c9c12-FRA"},{"key":"Content-Encoding","value":"gzip"}],"cookie":[],"responseTime":null,"body":"{\n    \"error\": {\n        \"message\": \"API Not Found\",\n        \"code\": 404\n    }\n}"}],"_postman_id":"8e68adf0-2291-4916-a4a2-8dd8270c0a39"},{"name":"Get Control App Model","event":[{"listen":"test","script":{"id":"fd5a80b1-621f-4293-97aa-104f2ce14fca","exec":[""],"type":"text/javascript"}}],"id":"5314f65e-7ec1-497a-8ddd-bbf98bf84836","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv2/controlapps/:appToken/model","description":"<p>Retrieves the model of a control app instance.</p>\n","urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","model"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"<string>","key":"appToken"}]}},"response":[{"id":"d42ce355-ac2b-4d7a-9823-f1b91198c68c","name":"Get Control App Model - 200 OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/model","protocol":"https","host":["app","singular","live"],"path":["apiv2","controlapps",":appToken","model"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"(Required) Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 04 Oct 2022 13:19:59 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2BD94731061D7F4E6470A59955A135753F353C59D5990F46211A4C4E7900"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"10c8-23KJQFYBg+F65Lf8rdkcILrILvM\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=VdurTtxZefvMilO2EMPV0AIbHJYWrvYbjJXl7j21vVytvYA9tQTQqQ%2B1I3p2CBaGY4gAA0dYtcmARr2Ra6urjrzr1Zv19Q5SFPdDH4rZx%2B1Rrt4r05pkQcW0qg%2FfL%2B7VPgEO\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"754e365af9309211-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": \"-NC_s8grzroliz2xbx7e\",\n        \"name\": \"default\",\n        \"model\": [],\n        \"logicLayer\": null,\n        \"snapshot\": null,\n        \"subcompositions\": [\n            {\n                \"id\": \"1695dbd7-430c-40eb-82f7-85287a965849\",\n                \"name\": \"compTextArea\",\n                \"state\": \"Out\",\n                \"model\": [\n                    {\n                        \"defaultValue\": \"Multi-line Text \\nfrom Google Sheet\",\n                        \"id\": \"text-area-control-node-id\",\n                        \"immediateUpdate\": false,\n                        \"index\": 1,\n                        \"resetValue\": \"Default Text\",\n                        \"title\": \"text-area-control-node-id\",\n                        \"type\": \"textarea\"\n                    }\n                ],\n                \"logicLayer\": null,\n                \"snapshot\": null,\n                \"subcompositions\": []\n            },\n            {\n                \"id\": \"1e602003-5bfa-45f4-8049-8892220fdff2\",\n                \"name\": \"compTimer\",\n                \"state\": \"Out\",\n                \"model\": [\n                    {\n                        \"defaultValue\": {\n                            \"UTC\": 1615816679354,\n                            \"isRunning\": false,\n                            \"value\": 0\n                        },\n                        \"id\": \"time-control-node-id\",\n                        \"immediateUpdate\": true,\n                        \"index\": 0,\n                        \"resetValue\": {\n                            \"UTC\": 0,\n                            \"isRunning\": false,\n                            \"value\": 0\n                        },\n                        \"title\": \"time-control-node-id\",\n                        \"type\": \"timecontrol\"\n                    }\n                ],\n                \"logicLayer\": null,\n                \"snapshot\": null,\n                \"subcompositions\": []\n            },\n            {\n                \"id\": \"41aaf130-468c-4f11-9bca-c1ea68ba1c8b\",\n                \"name\": \"compColor\",\n                \"state\": \"Out\",\n                \"model\": [\n                    {\n                        \"defaultValue\": {\n                            \"a\": 1,\n                            \"b\": 156,\n                            \"g\": 188,\n                            \"r\": 26\n                        },\n                        \"id\": \"color-control-node-id\",\n                        \"immediateUpdate\": false,\n                        \"index\": 2,\n                        \"resetValue\": {\n                            \"a\": 1,\n                            \"b\": 255,\n                            \"g\": 255,\n                            \"r\": 255\n                        },\n                        \"title\": \"color-control-node-id\",\n                        \"type\": \"color\"\n                    },\n                    {\n                        \"defaultValue\": \"crimson\",\n                        \"id\": \"cnColorText\",\n                        \"immediateUpdate\": false,\n                        \"index\": 1,\n                        \"resetValue\": \"Default Text\",\n                        \"title\": \"cnColorText\",\n                        \"type\": \"text\"\n                    }\n                ],\n                \"logicLayer\": null,\n                \"snapshot\": null,\n                \"subcompositions\": []\n            },\n            {\n                \"id\": \"755bd36f-fff0-4250-b703-4cbd310f07fb\",\n                \"name\": \"compVideoClip\",\n                \"state\": \"Out\",\n                \"model\": [\n                    {\n                        \"defaultValue\": {\n                            \"__singularButton\": true,\n                            \"ts\": 0\n                        },\n                        \"id\": \"cnVideoClipPause\",\n                        \"immediateUpdate\": true,\n                        \"index\": 2,\n                        \"resetValue\": {\n                            \"__singularButton\": true,\n                            \"ts\": 0\n                        },\n                        \"title\": \"cnVideoClipPause\",\n                        \"type\": \"button\"\n                    },\n                    {\n                        \"defaultValue\": {\n                            \"__singularButton\": true,\n                            \"ts\": 0\n                        },\n                        \"id\": \"cnVideoClipPlay\",\n                        \"immediateUpdate\": true,\n                        \"index\": 1,\n                        \"resetValue\": {\n                            \"__singularButton\": true,\n                            \"ts\": 0\n                        },\n                        \"title\": \"cnVideoClipPlay\",\n                        \"type\": \"button\"\n                    },\n                    {\n                        \"defaultValue\": {\n                            \"__singularButton\": true,\n                            \"ts\": 0\n                        },\n                        \"id\": \"cnVideoClipStart\",\n                        \"immediateUpdate\": true,\n                        \"index\": 0,\n                        \"resetValue\": {\n                            \"__singularButton\": true,\n                            \"ts\": 0\n                        },\n                        \"title\": \"cnVideoClipStart\",\n                        \"type\": \"button\"\n                    }\n                ],\n                \"logicLayer\": null,\n                \"snapshot\": null,\n                \"subcompositions\": []\n            },\n            {\n                \"id\": \"7ccc118d-5333-474d-9a33-b5fb951cd765\",\n                \"name\": \"compJsonTable\",\n                \"state\": \"Out\",\n                \"model\": [\n                    {\n                        \"defaultValue\": \"{\\\"content\\\": [\\r\\n    {\\\"pos\\\": \\\"1\\\", \\\"name\\\": \\\"NYG\\\", \\\"image\\\": \\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/4BhR3iwVI7oTpuMPQFSNBE.png\\\"},\\r\\n    {\\\"pos\\\": \\\"2\\\", \\\"name\\\": \\\"SF\\\", \\\"image\\\": \\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/1PpN2FpuAutk3zeYILkDum.png\\\"},\\r\\n    {\\\"pos\\\": \\\"3\\\", \\\"name\\\": \\\"DEN\\\", \\\"image\\\": \\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/7Mg4XYFRQWiwT5IKIoH1E7.png\\\"},\\r\\n    {\\\"pos\\\": \\\"4\\\", \\\"name\\\": \\\"PIT\\\", \\\"image\\\": \\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/5K84dUL3ACt2l4pCCfwRP4.png\\\"}\\r\\n  ]\\r\\n}\",\n                        \"height\": \"100px\",\n                        \"id\": \"json-control-node-id\",\n                        \"immediateUpdate\": false,\n                        \"index\": 0,\n                        \"resetValue\": \"{}\",\n                        \"title\": \"json-control-node-id\",\n                        \"type\": \"json\"\n                    }\n                ],\n                \"logicLayer\": null,\n                \"snapshot\": null,\n                \"subcompositions\": []\n            },\n            {\n                \"id\": \"816df4ac-3231-49a2-b744-ccd48aa33a40\",\n                \"name\": \"compText\",\n                \"state\": \"Out\",\n                \"model\": [\n                    {\n                        \"defaultValue\": \"Text from Google Sheet\",\n                        \"id\": \"text-control-node-id\",\n                        \"immediateUpdate\": false,\n                        \"index\": 0,\n                        \"resetValue\": \"Default Text\",\n                        \"title\": \"text-control-node-id\",\n                        \"type\": \"text\"\n                    }\n                ],\n                \"logicLayer\": null,\n                \"snapshot\": null,\n                \"subcompositions\": []\n            },\n            {\n                \"id\": \"9d0ebd84-bdae-6adc-2050-d54c36448d70\",\n                \"name\": \"background\",\n                \"state\": \"Out\",\n                \"model\": [],\n                \"logicLayer\": {\n                    \"name\": \"Background\",\n                    \"tag\": \"#5e35b1\"\n                },\n                \"snapshot\": null,\n                \"subcompositions\": []\n            },\n            {\n                \"id\": \"ab6e39f9-5550-47c2-81be-fa07611a6666\",\n                \"name\": \"compCheckbox\",\n                \"state\": \"Out\",\n                \"model\": [\n                    {\n                        \"defaultValue\": true,\n                        \"id\": \"checkbox-control-node-id\",\n                        \"immediateUpdate\": false,\n                        \"index\": 0,\n                        \"resetValue\": true,\n                        \"title\": \"checkbox-control-node-id\",\n                        \"type\": \"checkbox\"\n                    }\n                ],\n                \"logicLayer\": null,\n                \"snapshot\": null,\n                \"subcompositions\": []\n            },\n            {\n                \"id\": \"ca6f12cf-d990-464b-948b-5d7ad9dd3d33\",\n                \"name\": \"compNumber\",\n                \"state\": \"Out\",\n                \"model\": [\n                    {\n                        \"defaultValue\": \"1234.56\",\n                        \"id\": \"number-control-node-id\",\n                        \"immediateUpdate\": false,\n                        \"index\": 0,\n                        \"resetValue\": 0,\n                        \"step\": \"0.01\",\n                        \"title\": \"number-control-node-id\",\n                        \"type\": \"number\"\n                    },\n                    {\n                        \"defaultValue\": \"$1,234.56\",\n                        \"id\": \"cnNumberDisplayed\",\n                        \"immediateUpdate\": false,\n                        \"index\": 1,\n                        \"resetValue\": \"Default Text\",\n                        \"title\": \"cnNumberDisplayed\",\n                        \"type\": \"text\"\n                    }\n                ],\n                \"logicLayer\": null,\n                \"snapshot\": null,\n                \"subcompositions\": []\n            }\n        ]\n    }\n]"}],"_postman_id":"5314f65e-7ec1-497a-8ddd-bbf98bf84836"},{"name":"Get Control App Control","event":[{"listen":"test","script":{"id":"516e9c1c-7598-4ed1-acb8-ab4105a7d473","exec":[""],"type":"text/javascript"}}],"id":"b24198ac-0405-494c-a730-61568c115671","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Retrieves the control properties of a control app instance.</p>\n","urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"<string>","key":"appToken"}]}},"response":[{"id":"5ee553f9-f45a-40ab-ac25-68736a1e9191","name":"Get Control App Control - 200 OK","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/control","protocol":"https","host":["app","singular","live"],"path":["apiv2","controlapps",":appToken","control"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"(Required) Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 04 Oct 2022 13:20:04 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2B0C3370349E1C5BD73D35E29664569E512D7ADCE3E217FB65E26E90B000"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"a52-S7bh1upwJqWVErcB+j/yl9YDNTs\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=WK5lA4O4Ig2L2cgkFjqUPIuvHOs8xdo4fo9R5sENiapS0PaRYMID2eyM2nsRL2ZIDpHIjmskOIJx6jXPxcb294CZpIZEcp8t7%2FrQBXix5NdtRVp0pLSolW3Gz0ujOrUe2sNS\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"754e3678ee999211-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"subCompositionId\": \"1695dbd7-430c-40eb-82f7-85287a965849\",\n        \"subCompositionName\": \"compTextArea\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {\n            \"text-area-control-node-id\": \"Multi-line Text \\nfrom Google Sheet\"\n        }\n    },\n    {\n        \"subCompositionId\": \"1e602003-5bfa-45f4-8049-8892220fdff2\",\n        \"subCompositionName\": \"compTimer\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {\n            \"time-control-node-id\": {\n                \"UTC\": 1664044077270,\n                \"isRunning\": true,\n                \"value\": 9917\n            }\n        }\n    },\n    {\n        \"subCompositionId\": \"41aaf130-468c-4f11-9bca-c1ea68ba1c8b\",\n        \"subCompositionName\": \"compColor\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {\n            \"cnColorText\": \"crimson\",\n            \"color-control-node-id\": {\n                \"a\": 1,\n                \"b\": 230,\n                \"g\": 216,\n                \"r\": 173\n            }\n        }\n    },\n    {\n        \"subCompositionId\": \"755bd36f-fff0-4250-b703-4cbd310f07fb\",\n        \"subCompositionName\": \"compVideoClip\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {\n            \"cnVideoClipPause\": {\n                \"__singularButton\": true,\n                \"ts\": 0\n            },\n            \"cnVideoClipPlay\": {\n                \"__singularButton\": true,\n                \"ts\": 0\n            },\n            \"cnVideoClipStart\": {\n                \"__singularButton\": true,\n                \"ts\": 0\n            }\n        }\n    },\n    {\n        \"subCompositionId\": \"7b7c8944-ba1f-4eec-a361-2c9ce308d462\",\n        \"subCompositionName\": null,\n        \"mainComposition\": false,\n        \"state\": \"Out2\",\n        \"payload\": {\n            \"image\": \"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/4BhR3iwVI7oTpuMPQFSNBE.png\",\n            \"name\": \"NYG\",\n            \"pos\": \"88\"\n        }\n    },\n    {\n        \"subCompositionId\": \"7ccc118d-5333-474d-9a33-b5fb951cd765\",\n        \"subCompositionName\": \"compJsonTable\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {\n            \"json-control-node-id\": \"{\\\"content\\\": [\\r\\n    {\\\"pos\\\": \\\"1\\\", \\\"name\\\": \\\"NYG\\\", \\\"image\\\": \\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/4BhR3iwVI7oTpuMPQFSNBE.png\\\"},\\r\\n    {\\\"pos\\\": \\\"2\\\", \\\"name\\\": \\\"SF\\\", \\\"image\\\": \\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/1PpN2FpuAutk3zeYILkDum.png\\\"},\\r\\n    {\\\"pos\\\": \\\"3\\\", \\\"name\\\": \\\"DEN\\\", \\\"image\\\": \\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/7Mg4XYFRQWiwT5IKIoH1E7.png\\\"},\\r\\n    {\\\"pos\\\": \\\"4\\\", \\\"name\\\": \\\"PIT\\\", \\\"image\\\": \\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/5K84dUL3ACt2l4pCCfwRP4.png\\\"}\\r\\n  ]\\r\\n}\"\n        }\n    },\n    {\n        \"subCompositionId\": \"816df4ac-3231-49a2-b744-ccd48aa33a40\",\n        \"subCompositionName\": \"compText\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {\n            \"text-control-node-id\": \"Text from Google Sheet\"\n        }\n    },\n    {\n        \"subCompositionId\": \"9d0ebd84-bdae-6adc-2050-d54c36448d70\",\n        \"subCompositionName\": \"background\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {}\n    },\n    {\n        \"subCompositionId\": \"ab6e39f9-5550-47c2-81be-fa07611a6666\",\n        \"subCompositionName\": \"compCheckbox\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {\n            \"checkbox-control-node-id\": true\n        }\n    },\n    {\n        \"subCompositionId\": \"ca6f12cf-d990-464b-948b-5d7ad9dd3d33\",\n        \"subCompositionName\": \"compNumber\",\n        \"mainComposition\": false,\n        \"state\": \"Out1\",\n        \"payload\": {\n            \"cnNumberDisplayed\": \"$1,234.56\",\n            \"number-control-node-id\": \"1234.56\"\n        }\n    },\n    {\n        \"subCompositionId\": \"-NC_s8grzroliz2xbx7e\",\n        \"subCompositionName\": \"mainComposition\",\n        \"mainComposition\": true,\n        \"state\": \"Out1\",\n        \"payload\": {}\n    }\n]"}],"_postman_id":"b24198ac-0405-494c-a730-61568c115671"}],"id":"74ac6eb4-6378-428e-8e2f-71a736042897","event":[{"listen":"prerequest","script":{"id":"ad96c4a4-0b26-4024-bbba-2977cf1cdfe8","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"19307e07-259c-4b4f-aea1-68d0d8420a06","type":"text/javascript","exec":[""]}}],"_postman_id":"74ac6eb4-6378-428e-8e2f-71a736042897","description":"","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","name":"App Instance","type":"folder"}}},{"name":"Send Data to Control App","item":[{"name":"Update Control App Content","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"47256f82-2126-4e67-9771-049d11f317c2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"<subCompositionName>\",\r\n        \"payload\": {\r\n            \"<controlnodeId>\": \"<controlnode content>\",\r\n            \"<...>\": \"<...>\"\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","name":"App Instance","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"<string>","key":"appToken"}]}},"response":[{"id":"f07d8596-601b-4f6d-8cc4-93ecee157bdf","name":"Update Control App Content [name] - 200 OK","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"Lower - Header\",\r\n        \"payload\": {\r\n            \"Header\": \"HEADER\",\r\n            \"Main Text\": \"MAIN LINE OF TEXT\"\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/control","host":["https://app.singular.live"],"path":["apiv2","controlapps",":appToken","control"],"variable":[{"id":"360a0d59-ec04-40a0-b987-40fd0726180b","key":"appToken","value":"Shared App Token  <string>","description":"App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Oct 2022 10:39:38 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"16"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2B9B9211EB34AF3065ADA437917B4C7718BF1A71AC255F4B13FD8D402801"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1665398439}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":250000,\"remaining\":249999,\"reset\":1665446401}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"remaining\":null,\"reset\":1665398439}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"remaining\":null,\"reset\":1665446401}"},{"key":"Etag","value":"W/\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=AFRsY7ioUIIe4xpAs%2F4xv8HBjt7DbZjVUqs7DeDzoCd6qHgCVAYSpK0ebevrjKtA6axfPlsNwq03mZdFj7Ms%2FVZBOIj2qEzwaodaI4wX2zRmdu6gTe0gmRCkw50L9hiu9VsZYw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"757ebbb979199118-FRA"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"},{"id":"5e0227de-cc18-49c7-9add-9e0108c568a9","name":"Update Control App Content [id] - 200 OK","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionId\": \"57d57254-f15b-42ca-b68e-75b69875f5ea\",\r\n        \"payload\": {\r\n            \"Header\": \"HEADER\",\r\n            \"Main Text\": \"MAIN LINE OF TEXT\"\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/control","host":["https://app.singular.live"],"path":["apiv2","controlapps",":appToken","control"],"variable":[{"id":"360a0d59-ec04-40a0-b987-40fd0726180b","key":"appToken","value":"Shared App Token  <string>","description":"App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Oct 2022 10:39:38 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"16"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2B9B9211EB34AF3065ADA437917B4C7718BF1A71AC255F4B13FD8D402801"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1665398439}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":250000,\"remaining\":249999,\"reset\":1665446401}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"remaining\":null,\"reset\":1665398439}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"remaining\":null,\"reset\":1665446401}"},{"key":"Etag","value":"W/\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=AFRsY7ioUIIe4xpAs%2F4xv8HBjt7DbZjVUqs7DeDzoCd6qHgCVAYSpK0ebevrjKtA6axfPlsNwq03mZdFj7Ms%2FVZBOIj2qEzwaodaI4wX2zRmdu6gTe0gmRCkw50L9hiu9VsZYw%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"757ebbb979199118-FRA"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"}],"_postman_id":"47256f82-2126-4e67-9771-049d11f317c2"},{"name":"Update Control App Animation State","event":[{"listen":"test","script":{"id":"52739eb2-a9b3-4ab3-87d6-88a372f785a0","exec":[""],"type":"text/javascript"}}],"id":"ed7ccd21-2e99-4fb5-8a0c-482ccbfda375","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"<subCompositionName>\",\r\n        \"state\": \"<toState>\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new animation state to the control app instance.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Request Headers</strong></th>\n<th></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Content-Type</td>\n<td>application/json</td>\n</tr>\n</tbody>\n</table>\n</div><div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Body</strong> urlencoded</th>\n<th></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Array of `Composition Objects`</td>\n<td>Composition Object:</td>\n</tr>\n<tr>\n<td>JSON object containing content (optional) and animation state (optional)</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div><div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Composition Object</strong></th>\n<th></th>\n<th></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>subCompositionId</td>\n<td>&lt; string &gt;</td>\n<td>(Required) Id of a subcomposition</td>\n</tr>\n<tr>\n<td>toState</td>\n<td>&lt; string &gt;</td>\n<td><code>\"In\"</code> ... animate to \"In\" state  <br /><code>\"Out\"</code> ... animate to \"Out\" state <br /><code>\"Toggle\"</code> ... toggle the animation state</td>\n</tr>\n</tbody>\n</table>\n</div><pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">[\n    {\n        \"subCompositionId\": \"&lt; string &gt;\",\n        \"state\": \"&lt; toState &gt;\"\n    },\n    {\n        \"subCompositionId\": \"&lt;...&gt;\",\n        \"state\": \"&lt;...&gt;\"\n    }\n]\n\n</code></pre>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","name":"App Instance","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"<string>","key":"appToken"}]}},"response":[{"id":"38a1c2c8-0ae4-45a2-9010-3f5aa9deb1f2","name":"Play Animation to IN State [name] - 200 OK","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"Lower - Header\",\r\n        \"state\": \"In\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/control","host":["https://app.singular.live"],"path":["apiv2","controlapps",":appToken","control"],"variable":[{"id":"8dbeb4d5-3b81-4b8f-8aee-74caba66fdd3","key":"appToken","value":"Shared App Token  <string>"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Oct 2022 10:40:33 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"16"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2BC86C8CE84F558A30D4746E3D1C5C6D894FDDD7D061039DA28DB1EBD301"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1665398494}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":250000,\"remaining\":249998,\"reset\":1665446401}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"remaining\":null,\"reset\":1665398494}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"remaining\":0,\"reset\":1665446401}"},{"key":"Etag","value":"W/\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=HqNDu5ykW0vYI5r9p%2BhBjXOnzrOEsKY7h5V4VcFB62v09ZjFHhRdt3RY0a2BwO7BJgcvX1Ik65C%2FKpcF%2FRkMwF41fHJlLAci5R%2FDFgPSg7aC%2FOoqXcP24AQxhKynyM1rQlJ6AQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"757ebd0e48ed9118-FRA"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"},{"id":"90942b7f-3cc9-4e3c-8016-6a2595ec07d4","name":"Play Animation to OUT State [name] - 200 OK","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"Lower - Header\",\r\n        \"state\": \"Out\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/control","host":["https://app.singular.live"],"path":["apiv2","controlapps",":appToken","control"],"variable":[{"id":"5a23939e-daa6-4815-bd47-2980d4b328c5","key":"appToken","value":"Shared App Token  <string>","description":"App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Oct 2022 10:40:57 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"16"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2B9433C9C17D97680109F079880E400F2209AA3054576027434EEF8B9A01"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1665398518}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":250000,\"remaining\":249997,\"reset\":1665446401}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"remaining\":null,\"reset\":1665398518}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"remaining\":0,\"reset\":1665446401}"},{"key":"Etag","value":"W/\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=kL5tEiPHnoYnshDzQPI2P0vWzWjSzrBYPWkZygSb37mfdSSvxwVba04hkle3EYuTww7xretLUubRLCYGEwCLnLX9gQNnAywiXHjbhWXcv7QjiLui2tNu7O1tUkTon50H4CiGMQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"757ebda3edea9118-FRA"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"},{"id":"3ca5c307-444b-47d9-8484-9981d78894f4","name":"Play Animation to IN State [id] - 200 OK","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionId\": \"57d57254-f15b-42ca-b68e-75b69875f5ea\",\r\n        \"state\": \"In\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/control","host":["https://app.singular.live"],"path":["apiv2","controlapps",":appToken","control"],"variable":[{"id":"8dbeb4d5-3b81-4b8f-8aee-74caba66fdd3","key":"appToken","value":"Shared App Token  <string>"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Oct 2022 10:40:33 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"16"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2BC86C8CE84F558A30D4746E3D1C5C6D894FDDD7D061039DA28DB1EBD301"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1665398494}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":250000,\"remaining\":249998,\"reset\":1665446401}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"remaining\":null,\"reset\":1665398494}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"remaining\":0,\"reset\":1665446401}"},{"key":"Etag","value":"W/\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=HqNDu5ykW0vYI5r9p%2BhBjXOnzrOEsKY7h5V4VcFB62v09ZjFHhRdt3RY0a2BwO7BJgcvX1Ik65C%2FKpcF%2FRkMwF41fHJlLAci5R%2FDFgPSg7aC%2FOoqXcP24AQxhKynyM1rQlJ6AQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"757ebd0e48ed9118-FRA"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"},{"id":"45e75edc-f47d-4d87-906f-32b54285c39c","name":"Play Animation to OUT State [id] - 200 OK","originalRequest":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionId\": \"57d57254-f15b-42ca-b68e-75b69875f5ea\",\r\n        \"state\": \"Out\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/control","host":["https://app.singular.live"],"path":["apiv2","controlapps",":appToken","control"],"variable":[{"id":"5a23939e-daa6-4815-bd47-2980d4b328c5","key":"appToken","value":"Shared App Token  <string>","description":"App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Oct 2022 10:40:57 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"16"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2B9433C9C17D97680109F079880E400F2209AA3054576027434EEF8B9A01"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1665398518}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":250000,\"remaining\":249997,\"reset\":1665446401}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"remaining\":null,\"reset\":1665398518}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"remaining\":0,\"reset\":1665446401}"},{"key":"Etag","value":"W/\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=kL5tEiPHnoYnshDzQPI2P0vWzWjSzrBYPWkZygSb37mfdSSvxwVba04hkle3EYuTww7xretLUubRLCYGEwCLnLX9gQNnAywiXHjbhWXcv7QjiLui2tNu7O1tUkTon50H4CiGMQ%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"757ebda3edea9118-FRA"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"}],"_postman_id":"ed7ccd21-2e99-4fb5-8a0c-482ccbfda375"}],"id":"85eb4b8d-5933-41d3-adc0-515df8632cb6","description":"<p>Update control app data and animation state.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Request Headers</strong></th>\n<th></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Content-Type</td>\n<td>application/json</td>\n</tr>\n</tbody>\n</table>\n</div><div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Body</strong></th>\n<th>urlencoded</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Array of <code>Composition Objects</code></td>\n<td>Composition Object:  <br />JSON object containing content (optional) and animation state (optional)</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Request Body Examples:</strong></p>\n<p><em><strong>Using subcomposition ID</strong></em></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">[\n  {\n    \"subCompositionId\": \"&lt;subcompositionId&gt;\",\n    \"payload\": {\n      \"&lt;controlnodeId&gt;\": \"&lt;controlnode content&gt;\",\n      \"&lt;...&gt;\": \"&lt;...&gt;\"\n    }\n  }, {\n    ... \n  }\n]\n\n</code></pre>\n<p><em><strong>Using subcomposition name</strong></em></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">[\n  {\n    \"subCompositionName\": \"&lt;subCompositionName&gt;\",\n    \"payload\": {\n      \"&lt;controlnodeId&gt;\": \"&lt;controlnode content&gt;\",\n      \"&lt;...&gt;\": \"&lt;...&gt;\"\n    }\n  }, {\n    ... \n  }\n]\n\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Composition Object</strong></th>\n<th>Type of</th>\n<th></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>subCompositionId</td>\n<td>&lt; string &gt;</td>\n<td>(Required) Id of a subcomposition or</td>\n</tr>\n<tr>\n<td>subCompositionName</td>\n<td>&lt; string &gt;</td>\n<td>(Required) Name of a subcomposition</td>\n</tr>\n<tr>\n<td>controlnodeId</td>\n<td>&lt; string &gt;</td>\n<td>(Required) Id of the control node</td>\n</tr>\n<tr>\n<td>controlnode content</td>\n<td>&lt; fieldType &gt;</td>\n<td>(Required) New control node content</td>\n</tr>\n<tr>\n<td>toState</td>\n<td>&lt; string &gt;</td>\n<td><code>\"In\"</code> ... animate to \"In\" state  <br /><code>\"Out\"</code> ... animate to \"Out\" state</td>\n</tr>\n</tbody>\n</table>\n</div><div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>&lt; fieldType &gt;</strong></th>\n<th>Example</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>&lt; Text &gt;</td>\n<td><code>\"John Doe\"</code></td>\n<td>Single line of text</td>\n</tr>\n<tr>\n<td>&lt; Text Area &gt;</td>\n<td><code>\"Line 1/nLine 2/nLine 3\"</code></td>\n<td>Multi lines of text</td>\n</tr>\n<tr>\n<td>&lt; Number &gt;</td>\n<td><code>123.45</code>  <br /><code>{\"command\": \"increase\",\"value\": \"1\"}</code></td>\n<td>Number  <br />Command: increase number field by value</td>\n</tr>\n<tr>\n<td>&lt; Image &gt;</td>\n<td><code>\"https://www.gstatic.com/webp/gallery3/1.png\"</code></td>\n<td>Image URL</td>\n</tr>\n<tr>\n<td>&lt; Color &gt;</td>\n<td><code>\"lightgray\"</code>  <br /><code>\"#33AAFF\"</code>  <br /><code>\"#33AAFF55\"</code>  <br /><code>\"rgb(150, 150, 150)\"</code>  <br /><code>\"rgba(255, 150, 150, 0.5)\"</code></td>\n<td>HTML color name  <br />color HEX code  <br />color HEX code with alpha  <br />color rgb values  <br />color rgba values</td>\n</tr>\n<tr>\n<td>&lt; Checkbox &gt;</td>\n<td><code>true</code>  <br /><code>false</code></td>\n<td>Checkbox checked  <br />Checkbox unchecked</td>\n</tr>\n<tr>\n<td>&lt; Audio &gt;</td>\n<td><code>\"https://domain.com/audio.mp3\"</code></td>\n<td>Audio file URL</td>\n</tr>\n<tr>\n<td>&lt; JSON Text &gt;</td>\n<td><code>\"{\\\"id\\\": 1,\\\"firstname\\\": \\\"John\\\",\\\"lastname\\\": \\\"Doe\\\"}\"</code></td>\n<td>Stringified JSON object</td>\n</tr>\n<tr>\n<td>&lt; Time Control &gt;</td>\n<td><code>{\"command\": \"start\"}</code>  <br /><code>{\"command\": \"play\"}</code>  <br /><code>{\"command\": \"pause\"}</code>  <br /><code>{\"command\": \"reset\"}</code></td>\n<td>Start timer  <br />Play timer  <br />Pause timer  <br />Reset timer</td>\n</tr>\n<tr>\n<td>&lt; Button &gt;</td>\n<td><code>\"execute\"</code></td>\n<td>Trigger button click event</td>\n</tr>\n</tbody>\n</table>\n</div>","event":[{"listen":"prerequest","script":{"id":"3bcfbea2-33d8-4aa7-b497-a110eff69fea","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"c55e9e05-d939-4219-8684-a29acd4d913b","type":"text/javascript","exec":[""]}}],"_postman_id":"85eb4b8d-5933-41d3-adc0-515df8632cb6","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","name":"App Instance","type":"folder"}}},{"name":"Send Commands to Control App","item":[{"name":"TakeOutAllOutput","event":[{"listen":"test","script":{"id":"f64a0915-ef74-4add-87d6-f285d79654bf","exec":[""],"type":"text/javascript"}}],"id":"a8c8ccfc-2bb7-45bb-affc-c8294a6d53d6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"action\": \"TakeOutAllOutput\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/command","description":"<p>Send command to animate all elements of the control app to the <code>Out</code> state.</p>\n","urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","command"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"<string>","key":"appToken"}]}},"response":[{"id":"d135d63d-2dcd-447b-8d9d-9435de4f1f2e","name":"TakeOutAllOutput - 200 OK","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"action\": \"TakeOutAllOutput\"\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/command","protocol":"https","host":["app","singular","live"],"path":["apiv2","controlapps",":appToken","command"],"variable":[{"key":"appToken","value":"Shared App Token  <string>"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Oct 2022 10:43:13 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"16"},{"key":"Connection","value":"keep-alive"},{"key":"X-Trace","value":"2B379201450CBA27C73CBF9200464E4319C8A8C2746E8FBD454B04A5DA01"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1665398654}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":250000,\"remaining\":249999,\"reset\":1665446401}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"remaining\":null,\"reset\":1665398654}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"remaining\":null,\"reset\":1665446401}"},{"key":"Etag","value":"W/\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=p3Iu635al5zrIAPBZOsfwin65S%2BZqmZ0QAbOFbhm%2Bk6V9V%2FWQBxW0HQhDMmDrDvc1WWmEVEnpZzyBYLkS%2BOuvjpGEcYPPmXDt2bq0A6mrwZplwtlg%2BfWdgWL%2FXnyohZoLg4kZg%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"757ec0f628029118-FRA"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"}],"_postman_id":"a8c8ccfc-2bb7-45bb-affc-c8294a6d53d6"},{"name":"Refresh Composition","id":"e90c1e7a-b6d1-4e73-bb8d-d7496137bf8c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"action\": \"RefreshComposition\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/command","description":"<p>Reload the <em>current version of the composition</em> into the app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","name":"App Instance","type":"folder"}},"urlObject":{"path":["apiv2","controlapps",":appToken","command"],"host":["https://app.singular.live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"<string>","key":"appToken"}]}},"response":[{"id":"498c533f-de85-48cb-9b77-9082f3add539","name":"Refresh Composition - 200 OK","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"action\": \"RefreshComposition\"\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv2/controlapps/:appToken/command","host":["https://app.singular.live"],"path":["apiv2","controlapps",":appToken","command"],"variable":[{"key":"appToken","value":"Shared App Token  <string>"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 19 Jan 2023 08:22:12 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"16"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization, date"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1674116592}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":250000,\"remaining\":249953,\"reset\":1674172801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102369,\"reset\":1674116592}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26208906,\"reset\":1674172801}"},{"key":"Etag","value":"W/\"10-oV4hJxRVSENxc/wX8+mA4/Pe4tA\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v3?s=TgV%2Fbbwx%2FIXsZLZtfFHBcqIyj44HTf0qF4SH7Mhascdr%2Fbi0Yti4XuRCXyb2kn6NiXXrTQ7tpMn9HHkZ2tOqMAWn3g5qMAzp8CkwSkwZ05QpzYKjs2eBGmT2OJmSyHDakqrR\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"success_fraction\":0,\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"78be2942eac7c4ae-DUS"}],"cookie":[],"responseTime":null,"body":"{\n    \"success\": true\n}"}],"_postman_id":"e90c1e7a-b6d1-4e73-bb8d-d7496137bf8c"}],"id":"c20720a8-7b57-413a-bb27-5d76acc2a3ed","description":"<p>Send commands to a control app instance.</p>\n","event":[{"listen":"prerequest","script":{"id":"8a397c69-d92b-4b49-bef8-a1acacc46911","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"1547c16f-8942-46e6-a7df-449d83943ba9","type":"text/javascript","exec":[""]}}],"_postman_id":"c20720a8-7b57-413a-bb27-5d76acc2a3ed","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","name":"App Instance","type":"folder"}}}],"id":"8f034233-ffc9-4ea9-ba98-e7247729d70e","description":"<p>This section includes endpoints to retrieve control app details, update content and the animation state using the app shared token.</p>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"ce6be057-9db4-482b-b393-f79bb67347b1","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"d947f75c-f117-4cbb-b9be-66aaddaff294","type":"text/javascript","exec":[""]}}],"_postman_id":"8f034233-ffc9-4ea9-ba98-e7247729d70e"},{"name":"Singular API Demos","item":[{"name":"Update payload by ID or name","item":[{"name":"Get subcompositionId from Control App Control","event":[{"listen":"test","script":{"id":"516e9c1c-7598-4ed1-acb8-ab4105a7d473","exec":[""],"type":"text/javascript"}}],"id":"56db09e6-630f-4a08-97c8-46334d7a3d54","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Retrieves the control properties of a control app instance.</p>\n","urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"56db09e6-630f-4a08-97c8-46334d7a3d54"},{"name":"Update Control App Content of a Subcomposition by ID","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"89a677b1-4d2d-4483-b9a7-2c6b48b107e4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionId\": \"57d57254-f15b-42ca-b68e-75b69875f5ea\",\r\n        \"payload\": {\r\n            \"Header\": \"PM Header\",\r\n            \"Main Text\": \"Main text from PM\"\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"89a677b1-4d2d-4483-b9a7-2c6b48b107e4"},{"name":"Update Control App Content of a Subcomposition by Name","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"37e3055e-dced-49db-9b96-328d488eaa81","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"Lower - Header\",\r\n        \"payload\": {\r\n            \"Header\": \"PM Header\",\r\n            \"Main Text\": \"Main text from PM\"\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"id":"c5ec9845-68ad-433f-806c-a71e0be11c1f","description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"37e3055e-dced-49db-9b96-328d488eaa81"}],"id":"49f9cd0e-4140-411a-8036-2a9577f2ad98","description":"<p>This flow demonstrates reading the subcomposition id from the control app model and updating the payload.</p>\n","_postman_id":"49f9cd0e-4140-411a-8036-2a9577f2ad98","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}}},{"name":"Set animation state by ID or name","item":[{"name":"Get subcompositionId from Control App Control","event":[{"listen":"test","script":{"id":"516e9c1c-7598-4ed1-acb8-ab4105a7d473","exec":[""],"type":"text/javascript"}}],"id":"897358a5-585c-4aa0-be13-254e4532a495","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Retrieves the control properties of a control app instance.</p>\n","urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"897358a5-585c-4aa0-be13-254e4532a495"},{"name":"Update Control App Content of a Subcomposition by ID","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"439bf661-575f-40d1-ad03-2dcb2a8b01a7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionId\": \"57d57254-f15b-42ca-b68e-75b69875f5ea\",\r\n        \"state\": \"Out\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"439bf661-575f-40d1-ad03-2dcb2a8b01a7"},{"name":"Update Control App Content of a Subcomposition by Name","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"6872e59e-86bf-4a9e-9304-2b1a6ecad5b1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"Lower - Header\",\r\n        \"state\": \"Out\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"id":"31a189db-b7e5-4cb0-9179-4e651d474379","description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"6872e59e-86bf-4a9e-9304-2b1a6ecad5b1"}],"id":"74974b8c-d03c-4f4a-932a-3a75a2664929","description":"<p>This flow demonstrates reading the subcomposition id from the control app model and updating the payload.</p>\n","_postman_id":"74974b8c-d03c-4f4a-932a-3a75a2664929","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}}},{"name":"Update payload, and set animation state by ID or name","item":[{"name":"Get subcompositionId from Control App Model","event":[{"listen":"test","script":{"id":"516e9c1c-7598-4ed1-acb8-ab4105a7d473","exec":[""],"type":"text/javascript"}}],"id":"b9e03c8a-f0ad-4e89-a35b-a5ae53b8b512","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Retrieves the control properties of a control app instance.</p>\n","urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"b9e03c8a-f0ad-4e89-a35b-a5ae53b8b512"},{"name":"Update Control App Content of a Subcomposition by ID","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"fa883392-bf45-4027-923f-0e4b593c81de","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n       \"subCompositionId\": \"57d57254-f15b-42ca-b68e-75b69875f5ea\",\r\n        \"payload\": {\r\n            \"Header\": \"PM Header 2\",\r\n            \"Main Text\": \"Main text from PM 2\"\r\n        },\r\n        \"state\": \"In\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"fa883392-bf45-4027-923f-0e4b593c81de"},{"name":"Update Control App Content of a Subcomposition by Name","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"4291704b-684b-4328-9ff3-0c46839116c5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"Lower - Header\",\r\n        \"payload\": {\r\n            \"Header\": \"PM Header 2\",\r\n            \"Main Text\": \"Main text from PM 2\"\r\n        },\r\n        \"state\": \"In\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"id":"b7f74463-61d3-4336-992a-4b84f637e391","description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"4291704b-684b-4328-9ff3-0c46839116c5"}],"id":"33d27833-e9c3-455c-bfa8-1882c9a07472","description":"<p>This flow demonstrates reading the subcomposition id from the control app model and updating the payload.</p>\n","_postman_id":"33d27833-e9c3-455c-bfa8-1882c9a07472","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}}},{"name":"Update payloads, and set animation state by ID or name","item":[{"name":"Get subcompositionId from Control App Model","event":[{"listen":"test","script":{"id":"516e9c1c-7598-4ed1-acb8-ab4105a7d473","exec":[""],"type":"text/javascript"}}],"id":"b7732290-2307-4b60-a2e5-0f0bac872c60","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Retrieves the control properties of a control app instance.</p>\n","urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"b7732290-2307-4b60-a2e5-0f0bac872c60"},{"name":"Update Control App Content of a Subcomposition by ID","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"b4c59063-ebc6-4d57-87e0-2d7af87cbe64","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionId\": \"57d57254-f15b-42ca-b68e-75b69875f5ea\",\r\n        \"payload\": {\r\n            \"Header\": \"PM Header 2\",\r\n            \"Main Text\": \"Main text from PM 2\"\r\n        }\r\n    },\r\n    {\r\n        \"subCompositionId\": \"6cb2b49c-03e1-499b-89b1-93664560e92b\",\r\n        \"payload\": {\r\n            \"Header\": \"PM Header ...\",\r\n            \"Main Text\": \"Main text from PM ...\",\r\n            \"Dropline\": \"Dropline PM ...\"\r\n        },\r\n        \"state\": \"In\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"b4c59063-ebc6-4d57-87e0-2d7af87cbe64"},{"name":"Update Control App Content of a Subcomposition by Name","event":[{"listen":"test","script":{"id":"55f4b2cf-8637-4d08-a1ca-67d9a754e5b5","exec":[""],"type":"text/javascript"}}],"id":"0eea1781-4ac6-497e-ad8d-79f0638e3e7b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PATCH","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"subCompositionName\": \"Lower - Header\",\r\n        \"payload\": {\r\n            \"Header\": \"PM Header 2\",\r\n            \"Main Text\": \"Main text from PM 2\"\r\n        }\r\n    },\r\n    {\r\n        \"subCompositionName\": \"Lower - Header + Dropline\",\r\n        \"payload\": {\r\n            \"Header\": \"PM Header ...\",\r\n            \"Main Text\": \"Main text from PM ...\",\r\n            \"Dropline\": \"Dropline PM ...\"\r\n        },\r\n        \"state\": \"In\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/control","description":"<p>Send new content to the control app instance.</p>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}},"urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","control"],"host":["app","singular","live"],"query":[],"variable":[{"id":"6726004d-14e0-454d-a06a-d1ae6cd22944","description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"0eea1781-4ac6-497e-ad8d-79f0638e3e7b"}],"id":"cc1a58d2-02fb-44ff-bf94-5a2f9326eac4","description":"<p>This flow demonstrates reading the subcomposition id from the control app model and updating the payload.</p>\n","_postman_id":"cc1a58d2-02fb-44ff-bf94-5a2f9326eac4","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}}},{"name":"Clear output","item":[{"name":"TakeOutAllOutput","event":[{"listen":"test","script":{"id":"f64a0915-ef74-4add-87d6-f285d79654bf","exec":[""],"type":"text/javascript"}}],"id":"d53e3433-a363-4560-9c3f-d9f4f240fbdd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"action\": \"TakeOutAllOutput\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv2/controlapps/:appToken/command","description":"<p>Send command to animate all elements of the control app to the <code>Out</code> state.</p>\n","urlObject":{"protocol":"https","path":["apiv2","controlapps",":appToken","command"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[],"_postman_id":"d53e3433-a363-4560-9c3f-d9f4f240fbdd"}],"id":"e9eb121e-dd60-42df-ada2-c2d01d340475","description":"<p>This request demonstrates taking out all subcompositions from all outputs.</p>\n","_postman_id":"e9eb121e-dd60-42df-ada2-c2d01d340475","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","name":"Singular API Demos","type":"folder"}}}],"id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60","description":"<p>This section contains use-case based Singular API demos.</p>\n<p>The API demos use the \"<a href=\"https://app.singular.live/dashboard?templateLibraryItem=165\">UNO Lowers | Momentum</a>\" template.</p>\n<p>Follow the steps below to run the API demo use-cases:</p>\n<ul>\n<li>Download the \"<a href=\"https://app.singular.live/dashboard?templateLibraryItem=165\">UNO Lowers | Momentum</a>\" template from the \"<a href=\"https://support.singular.live/hc/en-us/articles/360021891371-Singular-Template-Library\">Template Library</a>\"  </li>\n<li>Locate the \"App Token\" and update the <a href=\"https://learning.postman.com/docs/sending-requests/variables/\">collection variable</a> \"appToken\".  </li>\n<li>Replace the \"App Token\" in request URLs with your \"App Token\"</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"2b337582-14fc-45b6-add2-67930a6b8e4a","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"85ce931d-de01-4d59-bc69-133d4e592c29","type":"text/javascript","exec":[""]}}],"_postman_id":"8da21798-ba93-4b0c-8d23-01fa22ceaa60"},{"name":"Data Stream","item":[{"name":"Send Payload","id":"885b0d71-8ff5-43f6-862d-dc28c368c2e3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"url":"https://datastream.singular.live/datastreams/:datastreamPrivateToken","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"0993532f-2725-433d-ba07-942882d2125c","id":"0993532f-2725-433d-ba07-942882d2125c","name":"Data Stream","type":"folder"}},"urlObject":{"protocol":"https","path":["datastreams",":datastreamPrivateToken"],"host":["datastream","singular","live"],"query":[],"variable":[{"description":{"content":"<p>(Required) Datastream Private Token</p>\n","type":"text/plain"},"type":"any","value":"<string>","key":"datastreamPrivateToken"}]}},"response":[],"_postman_id":"885b0d71-8ff5-43f6-862d-dc28c368c2e3"}],"id":"0993532f-2725-433d-ba07-942882d2125c","description":"<p>Data Streams provide a reliable distribution infrastructure for high-speed data at a stable and low latency (below 300ms).</p>\n<p>Data Streams address use cases as hockey and basketball clocks, penalty clocks, shot clocks, displaying telemetry data of race cars, geolocations of planes, and much more.</p>\n<p>We recommend using Singular Data Streams for all use cases that require updating data at 1 Hz or faster.</p>\n<h2 id=\"managing-data-streams\">Managing Data Streams</h2>\n<p>Create, rename, delete Data Streams with the <a href=\"https://support.singular.live/hc/en-us/articles/360056901272-Data-Stream-Manager\">Data Stream Manager</a> and follow the steps in the <a href=\"https://www.youtube.com/watch?v=IwqiDQ51pbw\">tutorial video</a>.</p>\n<h2 id=\"rate-limits\">Rate limits</h2>\n<p>The <strong>maximum size</strong> of one data package is <strong>limited to 60KB</strong>.</p>\n<p>The <strong>maximum number of simultaneous connections</strong> for one Data Stream is <strong>limited to 100</strong>.</p>\n<p>Data Streams have no daily or burst rate limiters.</p>\n<h2 id=\"data-stream-backend\">Data Stream backend</h2>\n<p>The Data Streams backend is hosted at <a href=\"http://datastream.singular.live/\">http://datastream.singular.live/</a></p>\n<p>Payloads sent to Data Streams stay persistent until new payloads arrive. Clients connecting to a Data Stream immediately receive the latest payload. The Data Streams backend includes a UTC timestamp to payloads. The client can use the timecode to calculate the latency and evaluate the age of the payload.</p>\n<h2 id=\"receive-data-streams-in-the-composition-script\">Receive Data Streams in the composition script</h2>\n<p>The <a href=\"https://developer.singular.live/composition-scripting/cheat-sheets/fundamentals#context-and-utility-functions\">Singular Composition Script</a> provides a utility function to read Data Stream payloads.</p>\n<p>The following code snippet creates a data stream object and uses the public token to connect to the Data Stream. The callback function returns the connection status and the latest payload.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">context.utils.createDataStream(\n  data_stream_public_token, \n  (status, payload) =&gt; \n  {\n    console.log(\"we have received: \", status, payload);\n  });\n\n</code></pre>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"15aa0712-838b-4500-960e-1d6072c0441b","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"7da564fe-386b-473e-8dbe-613b3ba3f3c4","type":"text/javascript","exec":[""]}}],"_postman_id":"0993532f-2725-433d-ba07-942882d2125c"},{"name":"Previous API Versions","item":[{"name":"Singular API v1","item":[{"name":"App Instance API (appToken)","item":[{"name":"List Outputs of an App Instance","id":"13ba6878-825b-4454-bdf2-0ff87a86c3fa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv1/control/:appToken/output","urlObject":{"protocol":"https","path":["apiv1","control",":appToken","output"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[{"id":"72dd6eb0-7215-4599-a953-204402c0f378","name":"List Outputs of an App Instance (access token)","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.singular.live/apiv1/control/:appToken/output","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":appToken","output"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 11:15:45 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"b9-9edoqat4Ut4HxbCLi3+A5K7vdxY\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"0889f30ae100004e56fc88c000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=NjqOCRtLXUUnDa%2B%2Bu1rlh65iqOOI86hSgyBTdAE96%2BLCsJ6R4BYnore6qgSYcbCtivGK%2BYjF53pgJf9LS8lX7od1%2FYdOMTWQg1qDGesBP2JNqw%3D%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6289babe3f954e56-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"outputUrl\": \"https://app.singular.live/output/3sNG5mBIZwQKAeT0zzvXRj/Output?aspect=16:9\",\n    \"broadcastUrl\": \"https://app.singular.live/output/3sNG5mBIZwQKAeT0zzvXRj/Broadcast?aspect=16:9\"\n}"}],"_postman_id":"13ba6878-825b-4454-bdf2-0ff87a86c3fa"},{"name":"List Control Properties of an App Instance","id":"59566ca8-1174-4b72-9ca8-28c1368325b1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv1/control/:appToken","urlObject":{"protocol":"https","path":["apiv1","control",":appToken"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[{"id":"e0712ae0-e557-44d9-968f-ffe1fffe9dac","name":"List Control Properties of an App Instance (access token)","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.singular.live/apiv1/control/:appToken","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":appToken"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 11:17:26 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Ratelimit-Max","value":"60"},{"key":"X-Ratelimit-Interval-Milliseconds","value":"60000"},{"key":"X-Ratelimit-Reset","value":"1614511107"},{"key":"X-Ratelimit-Remaining","value":"59"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"ded-X65bLSZxUZWNNhmu6Uu52s2Zk58\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"0889f4972b00004e564d318000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=HI2%2F6%2Bzr6U%2B8SXnBxchkeipQ752%2F0FeVbuTejKnMjJSPtJHxhQkipDIeXoy9sIeKRW8Y2IdX%2B64CYgBFwB0IlOoi8Qi8XmeK31Poc8E%2FGG76%2Fw%3D%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6289bd384beb4e56-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"compositionId\": \"-L8tU-SdaXanzW9gwyzg\",\n        \"compositionName\": null,\n        \"mainComposition\": true,\n        \"animation\": {\n            \"state\": \"Out1\"\n        }\n    },\n    {\n        \"compositionId\": \"04234444-4383-4772-9619-ff971119eb5a\",\n        \"compositionName\": \"Panel Left\",\n        \"animation\": {\n            \"state\": \"Out2\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Image\": \"//assets.singular.live/f12f184c9a0eb763beb40478e02a1250/svgs/167NEOw82oQHqy2vrX5kYh_w880h146.svg\",\n                \"Image Size\": \"90\",\n                \"Title\": \"Title\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"053dc036-4926-4e58-9f61-4981d370a204\",\n        \"compositionName\": \"Title\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"1a0608a9-6b7a-40d4-aae7-005863248cb9\",\n        \"compositionName\": \"Lower 2\",\n        \"animation\": {\n            \"state\": \"Out2\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Text 1\": \"Title or Name\",\n                \"Text 2\": \"Extra Information\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"1e044407-589e-40b2-a242-1be412ff5aeb\",\n        \"compositionName\": \"Table\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"210c29cf-765e-4635-8076-5f2b358d4c36\",\n        \"compositionName\": \"Fullscreen\",\n        \"animation\": {\n            \"state\": \"Out2\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Image\": \"//assets.singular.live/f12f184c9a0eb763beb40478e02a1250/svgs/4dFbJooHpav4Vla89zE7pq_w880h146.svg\",\n                \"Image Position X\": \"0\",\n                \"Image Position Y\": \"5\",\n                \"Image Size\": \"85\",\n                \"Title\": \"Title\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"2b997d44-28e7-4ad9-a292-031088b73575\",\n        \"compositionName\": \"Upper Left\",\n        \"animation\": {\n            \"state\": \"Out2\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Text\": \"Upper Left\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"321e25b7-0c36-7c73-27de-1e14c7a8e50d\",\n        \"compositionName\": \"Title Text\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"3b330b4c-05b9-4617-a92f-c5867cc4e76f\",\n        \"compositionName\": \"Name\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"3f493a79-0921-48fe-acb0-007683fe7fdd\",\n        \"compositionName\": \"Panel Left Text\",\n        \"animation\": {\n            \"state\": \"Out2\"\n        }\n    },\n    {\n        \"compositionId\": \"4306e2f7-ef40-4ba1-8362-633d34d16715\",\n        \"compositionName\": \"Upper Right\",\n        \"animation\": {\n            \"state\": \"Out2\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Text\": \"Upper Right\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"4a319e66-57dc-4268-892a-fa9a016d4c84\",\n        \"compositionName\": \"Background Image\",\n        \"animation\": {\n            \"state\": \"Out1\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Background Image\": \"//assets.singular.live/f12f184c9a0eb763beb40478e02a1250/svgs/4D0x1TRxC6mObaN60VkzPr_w1921h1081.svg\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"534e3097-4ecd-4c60-9251-cf75f8db2ad8\",\n        \"compositionName\": \"Animation Accent\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"7b2bdb7f-d58e-4d59-b827-e03dc2c06852\",\n        \"compositionName\": \"Lower\",\n        \"animation\": {\n            \"state\": \"Out2\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Text\": \"Title or Name\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"7c185fd3-9d99-4f13-92fa-3797553df0d3\",\n        \"compositionName\": \"Animation Accent\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"8aedfb5d-8e94-77da-5d98-86a6fca1768c\",\n        \"compositionName\": \"Animation Accent\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"8e6b2892-5c66-4c9e-8538-3019e5fd5daa\",\n        \"compositionName\": \"Baseline\",\n        \"animation\": {\n            \"state\": \"In\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Text\": \"Baseline Information\",\n                \"Title\": \"Title\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"91f4510c-b05c-42fe-b0c5-4ada183c808c\",\n        \"compositionName\": \"Text\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"95e29b3a-5c6b-42b4-8d62-a062411c1399\",\n        \"compositionName\": \"Lower 2 - Large\",\n        \"animation\": {\n            \"state\": \"Out1\"\n        },\n        \"controlNode\": {\n            \"payload\": {\n                \"Text 1\": \"Title or Name\",\n                \"Text 2\": \"Extra Information\"\n            }\n        }\n    },\n    {\n        \"compositionId\": \"9eea77ad-47cb-e763-2dac-87f9d989950d\",\n        \"compositionName\": \"Title\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"b15be206-616b-4132-a797-48fc6c0c748a\",\n        \"compositionName\": \"Title\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"cb0d89d6-5300-7d58-5ed9-678709ca8697\",\n        \"compositionName\": \"Image\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    },\n    {\n        \"compositionId\": \"ce06ab81-41fa-4e5b-a7ef-173cdf49f0e6\",\n        \"compositionName\": \"Text\",\n        \"animation\": {\n            \"state\": \"In\"\n        }\n    }\n]"}],"_postman_id":"59566ca8-1174-4b72-9ca8-28c1368325b1"},{"name":"List Subcompositions of an App Instance","id":"9d21a151-30bd-4ec1-9a59-d7e9a26b0309","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv1/control/:appToken/subcompositions","urlObject":{"protocol":"https","path":["apiv1","control",":appToken","subcompositions"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[{"id":"ac7463c9-3db5-459e-9b7d-4f9079071b72","name":"List Subcompositions of an App Instance (access token)","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.singular.live/apiv1/control/:appToken/subcompositions","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":appToken","subcompositions"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 11:19:23 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Ratelimit-Max","value":"60"},{"key":"X-Ratelimit-Interval-Milliseconds","value":"60000"},{"key":"X-Ratelimit-Reset","value":"1614511224"},{"key":"X-Ratelimit-Remaining","value":"59"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"d1-Yh9jLkZNJBnxKPUL19dk5Pav1D0\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"0889f660ae00004e56d2a08000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=RNogtRn%2FgyN23IXdFfC7YoHU3HMVaahwXVZ92z%2FAtcjDMlXC8n%2FMMHmFbozsx1P5yc9GnYN8Cr5yQtVlndekx16r4NSRxyFQMZha8w%2BPhPf68Q%3D%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6289c0144f064e56-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"data\": [\n        {\n            \"id\": \"36a9089a-f23e-403b-ae03-1ddbeccf4f0d\",\n            \"name\": \"subFramework\",\n            \"state\": \"Out\",\n            \"logicLayer\": null\n        },\n        {\n            \"id\": \"72a330f0-b7ce-49b9-b4c9-92b751492dfb\",\n            \"name\": \"TimerControl\",\n            \"state\": \"In\",\n            \"logicLayer\": null\n        }\n    ]\n}"}],"_postman_id":"9d21a151-30bd-4ec1-9a59-d7e9a26b0309"},{"name":"List Composition URL loaded in an App","id":"cb420a5c-1395-4eda-9e50-8e42f49338b7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[],"url":"https://app.singular.live/apiv1/control/:appToken/composition","urlObject":{"protocol":"https","path":["apiv1","control",":appToken","composition"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[{"id":"b8d8c989-38a8-40d7-b17a-d9d7e556b649","name":"List Composition URL loaded in an App (Token)","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://app.singular.live/apiv1/control/:appToken/composition","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":appToken","composition"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 04 Jun 2021 15:01:30 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":22,\"reset\":1622818908}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4992,\"reset\":1622851201}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102394,\"reset\":1622818908}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26214384,\"reset\":1622851201}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"69-WKqiwHimCE337cpaHBciZyqbbgY\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"0a79243b5400004e4a1d3e3000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report\\/v2?s=7XORhEWbcCrX5OdB5kGwFmCVRbZGmqmPSfWCJ1kW16Cn9pFudLc90b0xGdwS1BVmJSvlexhNhHAn1pc76AYHtxnW4XEduzn8zMENnjUGi9FT0lZ0XUEsxPbFh0KR5w%3D%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"65a209721daa4e4a-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"url\": \"https://assets.singular.live/67c798b9f3e0c69e8b4e92329ee837f7/jsons/1LowihLlGGj4LLjzskk44W.json\"\n}"}],"_postman_id":"cb420a5c-1395-4eda-9e50-8e42f49338b7"},{"name":"Update Show Data in an App Instance","id":"323ec328-0de0-4a88-a038-5299cd94708b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"Lower - Topic\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"Title\": \"Title or Name...\",\r\n                \"Subtitle\": \"Extra Information...\"\r\n            }\r\n        }\r\n    }\r\n]"},"url":"https://app.singular.live/apiv1/control/:appToken","urlObject":{"protocol":"https","path":["apiv1","control",":appToken"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[{"id":"02af8d91-f745-485a-ab46-17dab52e554f","name":"Update Show Data - Subcomposition not found","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"Lower Topic\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"Title\": \"Title or Name...\",\r\n                \"Subtitle\": \"Extra Information...\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv1/control/:appToken","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":appToken"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"Not Found","code":404,"_postman_previewlanguage":"html","header":[{"key":"Date","value":"Sun, 28 Feb 2021 11:38:06 GMT"},{"key":"Content-Type","value":"text/html; charset=utf-8"},{"key":"Content-Length","value":"42"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":23,\"reset\":1614512292}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4996,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102150,\"reset\":1614512292}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26213900,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"2a-7pNUY7CRZGz/nj4p8rBuWOGzlkE\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a07831c0000dff3af895000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=tfhEqYliwSOCCI6DBdIKAanRFwrFfU4dZ2oFBv32L5OVEk%2FEyKOxlEqlObmo64fuADlR18syL7AUcGbaKCQgBas7m9LmF0VMTQZQxJBnRUHWRZs%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6289db7e9bffdff3-FRA"}],"cookie":[],"responseTime":null,"body":"Cannot find composition name 'Lower Topic'"},{"id":"e4cc2029-d466-4d5e-9b68-1380c7e103a3","name":"Update Show Data successfully","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"Lower - Topic\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"Title\": \"Title or Name...\",\r\n                \"Subtitle\": \"Extra Information...\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv1/control/:appToken","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":appToken"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Date","value":"Sun, 28 Feb 2021 11:37:11 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614512292}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4997,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102274,\"reset\":1614512292}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26214024,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a06ad150000dff3b2310000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=oOfVYPZ1EKLV%2BAn8Xe2ebepLlFtfWGDXwXDFuN9GP6dcdtbiEC%2BWiLCquHJ6FaGvvMRbENIn6WXOg4si1pjcarrEYYF5ChTlMh%2BQPcKJYindwM0%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6289da2818aedff3-FRA"}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"323ec328-0de0-4a88-a038-5299cd94708b"},{"name":"Control Animations of an App Instance","id":"1d415fd1-280a-462a-88b7-68ae73026952","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"Lower - Topic\",\r\n        \"animation\": {\r\n            \"action\": \"play\",\r\n            \"to\": \"In\"\r\n        }\r\n    }\r\n]"},"url":"https://app.singular.live/apiv1/control/:appToken","urlObject":{"protocol":"https","path":["apiv1","control",":appToken"],"host":["app","singular","live"],"query":[],"variable":[{"description":{"content":"<p>Shared App Token</p>\n","type":"text/plain"},"type":"any","value":"Shared App Token  <string>","key":"appToken"}]}},"response":[{"id":"6a555e5a-09a3-4f6d-ace4-9cc239017bdd","name":"Play Animation to State \"In\"","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"Lower - Topic\",\r\n        \"animation\": {\r\n            \"action\": \"play\",\r\n            \"to\": \"In\"\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv1/control/:app_accessappTokentoken","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":app_accessappTokentoken"],"variable":[{"key":"app_accessappTokentoken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Date","value":"Sun, 28 Feb 2021 11:44:02 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614512703}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4990,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102323,\"reset\":1614512703}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26213450,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a0cf1040000dff3f8287000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=OsPvzrURcq9q6a9IwDk9Fxo%2F5UtNuYQe%2FbfH1AwM28jvih16dM%2BCPThJSerpj1jAexd2Y2vel1Tpjimo60R0%2FICYhc8FTPDQ23cQSxO96HIC4p8%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6289e42e680fdff3-FRA"}],"cookie":[],"responseTime":null,"body":null},{"id":"c36e42e4-574a-48fe-92fd-acdb3a76a3ab","name":"Play Animation to State \"Out\"","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"Lower - Topic\",\r\n        \"animation\": {\r\n            \"action\": \"play\",\r\n            \"to\": \"Out\"\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv1/control/:appToken","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":appToken"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Date","value":"Sun, 28 Feb 2021 11:45:50 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614512811}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4988,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102322,\"reset\":1614512811}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26213295,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a0e98640000dff3c7805000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=jRQLmvMTdPhGsUWvpLkwLiOtA951qnnluQuh2PYPFXPr7G7NwhROfDVU7u0lPwZJdjwig8tjd9t%2B7LBftl6M0To1TSBZM0gQxv8fYVsG%2FRGeNVA%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6289e6d3ddd0dff3-FRA"}],"cookie":[],"responseTime":null,"body":null},{"id":"c56712b6-69d4-4ce2-b046-1001fbb279e4","name":"Jump Animation to State \"In\"","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"Lower - Topic\",\r\n        \"animation\": {\r\n            \"action\": \"jump\",\r\n            \"to\": \"In\"\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv1/control/:appToken","protocol":"https","host":["app","singular","live"],"path":["apiv1","control",":appToken"],"variable":[{"key":"appToken","value":"Shared App Token  <string>","description":"Shared App Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Date","value":"Sun, 28 Feb 2021 11:44:58 GMT"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":23,\"reset\":1614512703}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4989,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102246,\"reset\":1614512703}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26213373,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a0dcc4e0000dff32639c000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=CCN2wee4jqW1vaERbAEJOKJ1noWchDEmNbOqZtfAN0DgpyMAxhvfqAD0Q4CXGQzJbeFI0qNyZkPurg1BOZgUboMMZCAe0M3SSePmMbnxKtreslE%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6289e58d4cc6dff3-FRA"}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"1d415fd1-280a-462a-88b7-68ae73026952"}],"id":"eb42c40a-0997-4eae-ae94-014bd4a83481","_postman_id":"eb42c40a-0997-4eae-ae94-014bd4a83481","description":""},{"name":"Payload Examples","item":[{"name":"App Instance Payload Examples","item":[{"name":"Text","id":"9f8600a4-aab4-476e-a162-7e70b7fb4286","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-text-control-node-id\": \"Text from Postman...\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"8285aba9-9dbb-4ef3-8d18-dc37c7f4f68b","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"9f8600a4-aab4-476e-a162-7e70b7fb4286"},{"name":"Text Area","id":"e7c37e17-c804-4a59-b57b-eb90846a6d92","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-text-area-control-node-id\": \"Line 1 from Postman...\\nLine 2 from Postman...\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"1bd6778b-65e4-403f-a20f-dab5ff87591d","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"e7c37e17-c804-4a59-b57b-eb90846a6d92"},{"name":"Number as Text","id":"192c0f9f-0f0e-46a5-881a-2e8a87036bea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-number-control-node-id\": \"$1,234.56\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"22332258-e5c1-4432-961f-67bb5174e1a1","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"192c0f9f-0f0e-46a5-881a-2e8a87036bea"},{"name":"Number as Number","id":"f34b34b8-27fa-41ac-96ca-a5679402ad48","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-number-control-node-id\": 1234.56\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"bd85f67b-5798-4172-a2c6-cafacddc8f8b","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"f34b34b8-27fa-41ac-96ca-a5679402ad48"},{"name":"Color as Text","id":"896cf726-d2db-48a4-925e-c7043a27252c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-color-control-node-id\": \"crimson\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"b6521549-8da7-4448-89ce-484196a284b7","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"896cf726-d2db-48a4-925e-c7043a27252c"},{"name":"Color as HEX code","id":"949dab9f-c2d9-42ac-b510-b578cbe17a15","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-color-control-node-id\": \"#33AAFF\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"71c5c600-7682-4ee9-82b1-deaaed8862ab","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"949dab9f-c2d9-42ac-b510-b578cbe17a15"},{"name":"Color as rgb","id":"6c801445-f0cc-4a2c-a184-34775e7b0da6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-color-control-node-id\": \"rgb(150, 150, 150)\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"ab78b822-3e45-4b41-829f-300725cdecea","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"6c801445-f0cc-4a2c-a184-34775e7b0da6"},{"name":"Color as rgba","id":"83d1409d-c729-40bd-81a8-358f78dd45b5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-color-control-node-id\": \"rgba(250, 0, 0, 0.1)\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"c01cfa6b-956d-4a8f-a74e-4b475e062528","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"83d1409d-c729-40bd-81a8-358f78dd45b5"},{"name":"Checkbox as Boolean","id":"9ace4223-46df-4b25-9d31-c3ccedd4f61f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-checkbox-control-node-id\": true\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"88a91b83-5759-428f-8dc3-6d4663a56d4b","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"9ace4223-46df-4b25-9d31-c3ccedd4f61f"},{"name":"Checkbox as Integer","id":"d5741108-82fa-4d70-8850-6c551bfe3509","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-checkbox-control-node-id\": 1\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","description":"<blockquote>\n<p>Note: <br />\nSending <code>0</code> is interpreted as <code>false</code> <br />\nSending any other number <code>123</code> is interpreted as <code>true</code></p>\n</blockquote>\n","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"8ed6e419-af03-4970-8b1d-114d0ae62e6a","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"d5741108-82fa-4d70-8850-6c551bfe3509"},{"name":"JSON as Table Content","id":"93c5e11d-b324-4aff-b4fb-876d199dd3d9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-json-control-node-id\": \"{\\\"content\\\":[{\\\"pos\\\":\\\"1\\\",\\\"name\\\":\\\"NYG\\\",\\\"image\\\":\\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/4BhR3iwVI7oTpuMPQFSNBE.png\\\"},{\\\"pos\\\":\\\"2\\\",\\\"name\\\":\\\"SF\\\",\\\"image\\\":\\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/1PpN2FpuAutk3zeYILkDum.png\\\"},{\\\"pos\\\":\\\"3\\\",\\\"name\\\":\\\"DEN\\\",\\\"image\\\":\\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/7Mg4XYFRQWiwT5IKIoH1E7.png\\\"},{\\\"pos\\\":\\\"4\\\",\\\"name\\\":\\\"PIT\\\",\\\"image\\\":\\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/5K84dUL3ACt2l4pCCfwRP4.png\\\"}]}\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","description":"<blockquote>\n<p>Note: <br />\nStringify JSON data before sending to Singular.</p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">const jsonTable = [{\n        \"pos\": \"1\",\n        \"name\": \"NYG\"\n    }, {\n        \"pos\": \"2\",\n        \"name\": \"SF\"\n    }, {\n        \"pos\": \"3\",\n        \"name\": \"DEN\"\n    }, {\n        \"pos\": \"4\",\n        \"name\": \"PIT\"\n    }\n];\n\nconst buildJsonPayload = function () {\n    let jsonPayload = {\n        \"compositionName\": \"compJsonTable\",\n        \"controlNode\": {\n            \"payload\": {\n                \"cnJsonTable\": JSON.stringify({\"content\": jsonTable})\n            }\n        }\n    }\n    return jsonPayload;\n}\n</code></pre>\n","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"6a586603-2f20-4f62-81e9-b28621829315","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"93c5e11d-b324-4aff-b4fb-876d199dd3d9"},{"name":"Timer: Command Play","id":"52b24223-f566-462f-a518-8d5fe55eb835","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-time-control-node-id\": {\r\n                    \"command\": \"play\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"e7fe9737-7878-4073-b890-7f2860ce61d9","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"52b24223-f566-462f-a518-8d5fe55eb835"},{"name":"Timer: Command Pause","id":"6025c179-98ee-475d-86c3-25a127e9d586","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-time-control-node-id\": {\r\n                    \"command\": \"pause\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"b2d1d945-36f9-48e8-b642-7c4ce2ad4cfb","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"6025c179-98ee-475d-86c3-25a127e9d586"},{"name":"Timer: Command Reset","id":"4096ee27-54f8-46fd-a29d-d69dc706c838","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-time-control-node-id\": {\r\n                    \"command\": \"reset\"\r\n                }\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"50f7c408-bf94-4e6f-9753-9e560eefd440","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"4096ee27-54f8-46fd-a29d-d69dc706c838"},{"name":"Timer: Timer Control JSON","id":"ab8ea1b1-4406-41f9-aa2f-3c24fb086732","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-time-control-node-id\": {\r\n                    \"UTC\": 1615817238000,\r\n                    \"isRunning\": true,\r\n                    \"value\": 0\r\n                }\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"e5571c04-26fa-47fa-be13-2955b8999a17","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"ab8ea1b1-4406-41f9-aa2f-3c24fb086732"},{"name":"Button: Trigger Event","id":"90a61e47-427e-4d76-92f0-fd3951de7696","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"compositionName\": \"your-composition-name\",\r\n        \"controlNode\": {\r\n            \"payload\": {\r\n                \"your-button-control-node-id\": \"execute\"\r\n            }\r\n        }\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/control/:app_access_token","urlObject":{"protocol":"https","path":["apiv1","control",":app_access_token"],"host":["app","singular","live"],"query":[],"variable":[{"id":"4cb51666-1001-43a9-a9d4-e5894ed9e80a","description":{"content":"<p>App access token</p>\n","type":"text/plain"},"type":"any","value":"{{app_access_token}}","key":"app_access_token"}]}},"response":[],"_postman_id":"90a61e47-427e-4d76-92f0-fd3951de7696"}],"id":"bad29de6-2a20-4b60-a716-7f5bb3e3eda6","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"e60bdf27-6057-4c10-874f-d0030e43cdf3","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"d4767f49-5390-4da6-8a29-f67f8fe69f58","type":"text/javascript","exec":[""]}}],"_postman_id":"bad29de6-2a20-4b60-a716-7f5bb3e3eda6","description":""},{"name":"Data Node Payload Examples","item":[{"name":"Text","id":"9558025c-340f-4417-8bc1-473cb79fcc7f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"text\",\r\n                \"id\": \"dnText\",\r\n                \"title\": \"dnText\",\r\n                \"type\": \"text\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnText\": \"Text from Postman...\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"ec18bcb5-4e79-4db2-9bb5-3a1feddf7db8","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"9558025c-340f-4417-8bc1-473cb79fcc7f"},{"name":"Text Area","id":"b10a8fef-17d4-4fba-b889-7847a445229c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"text area\",\r\n                \"id\": \"dnTextArea\",\r\n                \"title\": \"dnTextArea\",\r\n                \"type\": \"textarea\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnTextArea\": \"Text line 1 from Postman...\\nText line 2...\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"0d5c4764-006d-43cc-8f8e-4e83c989cb54","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"b10a8fef-17d4-4fba-b889-7847a445229c"},{"name":"Number as Text","id":"7e166aa6-fad2-4d56-a6da-8c41c362f0cb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"\",\r\n                \"id\": \"dnNumberDisplay\",\r\n                \"title\": \"dnNumberDisplay\",\r\n                \"type\": \"text\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnNumberDisplay\": \"$1,234.56\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"ac8e4f97-4613-4630-9c0f-b17ae8e4353b","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"7e166aa6-fad2-4d56-a6da-8c41c362f0cb"},{"name":"Number as Number","id":"0337b4f3-c9e1-4193-a08f-d3c5ffcbf7f1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": 0,\r\n                \"id\": \"dnNumberValue\",\r\n                \"title\": \"dnNumberValue\",\r\n                \"type\": \"number\",\r\n                \"format\": \"0.01\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnNumberValue\": 1234.56\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"89a9f4cb-26da-4d40-8b8f-b2c522d2b239","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"0337b4f3-c9e1-4193-a08f-d3c5ffcbf7f1"},{"name":"Color as Text","id":"883ba6f6-1894-4900-8ccf-bf53701c03e5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"gray\",\r\n                \"id\": \"dnColor\",\r\n                \"title\": \"dnColor\",\r\n                \"type\": \"color\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnColor\": \"crimson\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"40d99db1-f15c-4ce1-86d7-835d387357c2","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"883ba6f6-1894-4900-8ccf-bf53701c03e5"},{"name":"Color as HEX code","id":"90c8166b-d314-4bea-a1fd-eb5cc2a3fd17","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"gray\",\r\n                \"id\": \"dnColor\",\r\n                \"title\": \"dnColor\",\r\n                \"type\": \"color\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnColor\": \"#33AAFF\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"3cda1f53-4265-4db9-858d-3920c1ecd476","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"90c8166b-d314-4bea-a1fd-eb5cc2a3fd17"},{"name":"Color as rgb","id":"886442b7-2193-4c03-905a-c3d51848d500","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"gray\",\r\n                \"id\": \"dnColor\",\r\n                \"title\": \"dnColor\",\r\n                \"type\": \"color\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnColor\": \"rgb(150, 150, 150)\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"d7175845-184e-466a-94dc-50b58d8ba10a","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"886442b7-2193-4c03-905a-c3d51848d500"},{"name":"Color as rgba","id":"2fb18a4f-8f79-487f-b317-9ff996e4d755","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"gray\",\r\n                \"id\": \"dnColor\",\r\n                \"title\": \"dnColor\",\r\n                \"type\": \"color\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnColor\": \"rgba(250, 0, 0, 0.1)\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"bd76e9e6-08bf-479f-bc5a-7050e591992f","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"2fb18a4f-8f79-487f-b317-9ff996e4d755"},{"name":"Checkbox as Boolean","id":"c57b4fa7-0820-4afb-923d-c3556339e4c3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": true,\r\n                \"id\": \"dnCheckbox\",\r\n                \"title\": \"dnCheckbox\",\r\n                \"type\": \"checkbox\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnCheckbox\": true\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"579d7c59-d611-484a-9e36-b8bdfa1f78b0","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"c57b4fa7-0820-4afb-923d-c3556339e4c3"},{"name":"Checkbox as Text","id":"a7faa7ba-b30a-44b2-8eb1-bca27f8b3ddb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": true,\r\n                \"id\": \"dnCheckbox\",\r\n                \"title\": \"dnCheckbox\",\r\n                \"type\": \"checkbox\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnCheckbox\": \"any-text-is-true, empty-string-is-false\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","description":"<blockquote>\n<p>Note: <br />\nSending an empty string <code>\"\"</code> is interpreted as <code>false</code> <br />\nSending any other string <code>\"abcd\"</code> is interpreted as <code>true</code></p>\n</blockquote>\n","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"d35c15b5-ba3c-4cd7-b61f-ca14c8dfce95","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"a7faa7ba-b30a-44b2-8eb1-bca27f8b3ddb"},{"name":"Checkbox as Integer","id":"46c5f46a-59f7-4d31-8c0f-57b554223cf9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": true,\r\n                \"id\": \"dnCheckbox\",\r\n                \"title\": \"dnCheckbox\",\r\n                \"type\": \"checkbox\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnCheckbox\": 1\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","description":"<blockquote>\n<p>Note: <br />\nSending <code>0</code> is interpreted as <code>false</code> <br />\nSending any other number <code>123</code> is interpreted as <code>true</code></p>\n</blockquote>\n","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"4bc4dd40-8ce0-4c47-ba9f-7bb45ca80325","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"46c5f46a-59f7-4d31-8c0f-57b554223cf9"},{"name":"JSON as Table Content","id":"f1650050-da24-430d-9259-43b79a369b75","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"{}\",\r\n                \"id\": \"dnJsonData\",\r\n                \"title\": \"dnJsonData\",\r\n                \"type\": \"json\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"dnJsonData\": \"{\\\"content\\\":[{\\\"pos\\\":\\\"1\\\",\\\"name\\\":\\\"NYG\\\",\\\"image\\\":\\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/4BhR3iwVI7oTpuMPQFSNBE.png\\\"},{\\\"pos\\\":\\\"2\\\",\\\"name\\\":\\\"SF\\\",\\\"image\\\":\\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/1PpN2FpuAutk3zeYILkDum.png\\\"},{\\\"pos\\\":\\\"3\\\",\\\"name\\\":\\\"DEN\\\",\\\"image\\\":\\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/7Mg4XYFRQWiwT5IKIoH1E7.png\\\"},{\\\"pos\\\":\\\"4\\\",\\\"name\\\":\\\"PIT\\\",\\\"image\\\":\\\"https://image.singular.live/f12f184c9a0eb763beb40478e02a1250/images/5K84dUL3ACt2l4pCCfwRP4.png\\\"}]}\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","description":"<blockquote>\n<p>Note: <br />\nStringify JSON data before sending to Singular.</p>\n</blockquote>\n","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"192c7ecd-416a-476b-a537-18b776e805f4","type":"any","value":"{{datanode_token_485}}","key":"datanode_token"}]}},"response":[],"_postman_id":"f1650050-da24-430d-9259-43b79a369b75"}],"id":"0367cdcc-9b68-4f24-bc5b-68efc487e606","_postman_id":"0367cdcc-9b68-4f24-bc5b-68efc487e606","description":""}],"id":"d882e38d-f289-4099-9085-f6b51438ad1a","_postman_id":"d882e38d-f289-4099-9085-f6b51438ad1a","description":""},{"name":"Data Stream API","item":[{"name":"Send Payload","id":"1ca935ba-0d87-4c81-9e5a-3891181a611c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"matchClock\": \"12:34\",\r\n    \"shotClock\": \"24.56\",\r\n    \"penaltyClocks\": {\r\n        \"home1\": \"02:10\",\r\n        \"home2\": \"00:00\",\r\n        \"away1\": \"00:00\",\r\n        \"away2\": \"00:00\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://datastream.singular.live/datastreams/:data_stream_private_token","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"e81c21b6-bf10-40a8-bc47-d2a0fe5fddf7","id":"e81c21b6-bf10-40a8-bc47-d2a0fe5fddf7","name":"Data Stream API","type":"folder"}},"urlObject":{"protocol":"https","path":["datastreams",":data_stream_private_token"],"host":["datastream","singular","live"],"query":[],"variable":[{"id":"3a8bb32a-e825-4909-b0fe-b15498ddf195","description":{"content":"<p>Private data stream token</p>\n","type":"text/plain"},"type":"any","value":"{{data_stream_private_token}}","key":"data_stream_private_token"}]}},"response":[{"id":"36010e25-d2c5-4eef-aff9-922912f6e9b2","name":"Send Single JSON value","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"rpm\": 12345\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://datastream.singular.live/datastreams/:data_stream_private_token","protocol":"https","host":["datastream","singular","live"],"path":["datastreams",":data_stream_private_token"],"variable":[{"key":"data_stream_private_token","value":"{{data_stream_private_token}}","description":"Private data stream token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Date","value":"Sun, 28 Feb 2021 10:48:26 GMT"},{"key":"Content-Length","value":"0"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"0889da09d900004a913d3c5000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=0Z8Y9W%2BDL%2BKyVGCWwPqN5ZtYS9AJyI3%2BLjC81nUxNW5b50x0%2B0ul23kd0mABpfqh6tmulO4cZuV5e0V6Ch34v1usMTgUYGPzattyGvpGQ4zqoRW8fQVCOZE%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628992bc8aaa4a91-FRA"}],"cookie":[],"responseTime":null,"body":null},{"id":"12b10893-1962-41a7-9395-a69d5b75fb3d","name":"Send JSON Object","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"matchClock\": \"12:34\",\r\n    \"shotClock\": \"24.56\",\r\n    \"penaltyClocks\": {\r\n        \"home1\": \"02:10\",\r\n        \"home2\": \"00:00\",\r\n        \"away1\": \"00:00\",\r\n        \"away2\": \"00:00\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://datastream.singular.live/datastreams/:data_stream_private_token","protocol":"https","host":["datastream","singular","live"],"path":["datastreams",":data_stream_private_token"],"variable":[{"key":"data_stream_private_token","value":"{{data_stream_private_token}}","description":"Private data stream token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Date","value":"Sun, 28 Feb 2021 10:46:20 GMT"},{"key":"Content-Length","value":"0"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"0889d81cc000004a91258f6000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=zp%2FBmOuCMKoBx1oCCJXDyMNxMevfcwGujOvd5ig0QhhN1NUCrd%2B9xyoeQM1R%2BMMnLcjcenPHERAM%2Bk2Uhvds4poslzQE8ahkWN1CJGI3UQx8YgZZeTdMmyk%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"62898fa79bee4a91-FRA"}],"cookie":[],"responseTime":null,"body":null}],"_postman_id":"1ca935ba-0d87-4c81-9e5a-3891181a611c"}],"id":"e81c21b6-bf10-40a8-bc47-d2a0fe5fddf7","description":"<p>Data Streams provide a reliable distribution infrastructure for high-speed data at a stable and low latency (below 300ms).</p>\n<p>Data Streams address use cases as hockey and basketball clocks, penalty clocks, shot clocks, displaying telemetry data of race cars, geolocations of planes, and much more.</p>\n<p>We recommend using Singular Data Streams for all use cases that require updating data at 1 Hz or faster.</p>\n<h2 id=\"managing-data-streams\">Managing Data Streams</h2>\n<p>Create, rename, delete Data Streams with the <a href=\"https://support.singular.live/hc/en-us/articles/360056901272-Data-Stream-Manager\">Data Stream Manager</a> and follow the steps in the <a href=\"https://www.youtube.com/watch?v=IwqiDQ51pbw\">tutorial video</a>.</p>\n<h2 id=\"rate-limits\">Rate limits</h2>\n<p>The <strong>maximum size</strong> of one data package is <strong>limited to 60KB</strong>.<br />\nThe <strong>maximum number of simultaneous connections</strong> for one Data Stream is <strong>limited to 25</strong>. <br />\nData Streams have no daily or burst rate limiters.</p>\n<h2 id=\"data-stream-backend\">Data Stream backend</h2>\n<p>The Data Streams backend is hosted at <a href=\"http://datastream.singular.live/\">http://datastream.singular.live/</a></p>\n<p>Payloads sent to Data Streams stay persistent until new payloads arrive. Clients connecting to a Data Stream immediately receive the latest payload. The Data Streams backend includes a UTC timestamp to payloads. The client can use the timecode to calculate the latency and evaluate the age of the payload.</p>\n<h2 id=\"receive-data-streams-in-the-composition-script\">Receive Data Streams in the composition script</h2>\n<p>The <a href=\"https://bit.ly/3sz0a2X\">Singular Composition Script</a> provides a utility function to read Data Stream payloads.</p>\n<p>The following code snippet creates a data stream object and uses the public token to connect to the Data Stream. The callback function returns the connection status and the latest payload.</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">context.utils.createDataStream(\n  data_stream_public_token, \n  (status, payload) =&gt; \n  {\n    console.log(\"we have received: \", status, payload);\n  });\n</code></pre>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"973a81c6-d2df-4389-afb5-426362cc612a","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"e0dfc350-1352-43fa-810c-15c8f63c89d9","type":"text/javascript","exec":[""]}}],"_postman_id":"e81c21b6-bf10-40a8-bc47-d2a0fe5fddf7"},{"name":"Data Node API","item":[{"name":"Create Data Node","id":"8a9a2163-649b-498e-a810-908283b5f6d9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{username}}"},{"key":"password","value":"{{password}}"}]},"isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"New Data Node\",\r\n    \"folder\": \"4e867728-b556-4d10-8761-afecf431614b\",\r\n    \"thumbnail\": \"images/defaultimage.png\",\r\n    \"data\": {\r\n        \"model\": {\r\n            \"fields\": [\r\n                {\r\n                    \"defaultValue\": \"Default crawl title\",\r\n                    \"id\": \"Crawl Title\",\r\n                    \"title\": \"Crawl Title\",\r\n                    \"type\": \"text\"\r\n                },\r\n                {\r\n                    \"defaultValue\": \"Default crawl text\",\r\n                    \"id\": \"Crawl Text\",\r\n                    \"title\": \"Crawl Text\",\r\n                    \"type\": \"text\"\r\n                },\r\n                {\r\n                    \"defaultValue\": \"10\",\r\n                    \"id\": \"Crawl Speed\",\r\n                    \"title\": \"Crawl Speed\",\r\n                    \"type\": \"number\"\r\n                }\r\n            ]\r\n        },\r\n        \"payload\": {\r\n            \"Crawl Title\": \"Title text here...\",\r\n            \"Crawl Text\": \"Crawl text here...\",\r\n            \"Crawl Speed\": \"10.0\"\r\n        }\r\n    }\r\n}"},"url":"https://app.singular.live/apiv1/datanodes","urlObject":{"protocol":"https","path":["apiv1","datanodes"],"host":["app","singular","live"],"query":[],"variable":[]}},"response":[{"id":"3608ce8f-05ac-4ca4-94ca-c7346011be63","name":"Create Data Node","originalRequest":{"method":"POST","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"New Data Node\",\r\n    \"folder\": \"4e867728-b556-4d10-8761-afecf431614b\",\r\n    \"thumbnail\": \"images/defaultimage.png\",\r\n    \"data\": {\r\n        \"model\": {\r\n            \"fields\": [\r\n                {\r\n                    \"defaultValue\": \"Default crawl title\",\r\n                    \"id\": \"Crawl Title\",\r\n                    \"title\": \"Crawl Title\",\r\n                    \"type\": \"text\"\r\n                },\r\n                {\r\n                    \"defaultValue\": \"Default crawl text\",\r\n                    \"id\": \"Crawl Text\",\r\n                    \"title\": \"Crawl Text\",\r\n                    \"type\": \"text\"\r\n                },\r\n                {\r\n                    \"defaultValue\": \"10\",\r\n                    \"id\": \"Crawl Speed\",\r\n                    \"title\": \"Crawl Speed\",\r\n                    \"type\": \"number\"\r\n                }\r\n            ]\r\n        },\r\n        \"payload\": {\r\n            \"Crawl Title\": \"Title text here...\",\r\n            \"Crawl Text\": \"Crawl text here...\",\r\n            \"Crawl Speed\": \"10.0\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://app.singular.live/apiv1/datanodes"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:21:03 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614514924}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4985,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":101894,\"reset\":1614514924}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26212683,\"reset\":1614556801}"},{"key":"Etag","value":"W/\"143-7KSXoTkBRW/DJddq6EyjwZOWXAs\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a2ed51e00004e1ae891d000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=dgMF6lBjcI9McEpuhtbCnS2h5IFVSg127%2FAQSJAZAFPd1paWlV92BjhbqiD7tBHiba1YO5xWzFiz0eomaOR%2FAHl0VVFIDXJxgcZzBb6JIFTPqyM%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a1a682fb24e1a-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"user_id\": 2290,\n    \"account_id\": 56,\n    \"tenant_id\": null,\n    \"name\": \"New Data Node\",\n    \"firebaseUrl\": \"https://fiery-torch-2122.firebaseio.com/users/2290/dataNodes/-MUc_QsTxbYeA30FklIT\",\n    \"fid\": \"10fe756f-159f-4e66-930f-087ca49f7973\",\n    \"updated_at\": \"2021-02-28T12:21:03.678Z\",\n    \"created_at\": \"2021-02-28T12:21:03.678Z\",\n    \"id\": 4019,\n    \"type\": \"datanode\"\n}"}],"_postman_id":"8a9a2163-649b-498e-a810-908283b5f6d9"},{"name":"All Data Nodes","id":"352a7e93-81cd-4868-bfbe-0e9696ebfa88","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{username}}"},{"key":"password","value":"{{password}}"}]},"isInherited":false},"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"url":"https://app.singular.live/apiv1/datanodes","urlObject":{"protocol":"https","path":["apiv1","datanodes"],"host":["app","singular","live"],"query":[],"variable":[]}},"response":[{"id":"adc310fc-0985-4226-b8fd-dc5bce5161ae","name":"All Data Nodes","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"url":"https://app.singular.live/apiv1/datanodes"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:22:48 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614515029}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4984,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102398,\"reset\":1614515029}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26212681,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"bed7-dEUBqFFH4Rh4G+jeC8uMdt23Cxc\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a306bb800004e1a3615e000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=rrWWljWn7UzPMEljbiWvIVisbRksv2ohS34XUA8znltOjn3xLoNum9cYMbI7VUmQ%2F2BMWmAoyeH8JEJbGmTIavjk%2Fl47yn87ONUaiIJbejHbczs%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a1cf2cdc64e1a-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"[\n    {\n        \"id\": 4019,\n        \"account_id\": 56,\n        \"tenant_id\": null,\n        \"user_id\": 2290,\n        \"is_deleted\": 0,\n        \"fid\": \"10fe756f-159f-4e66-930f-087ca49f7973\",\n        \"name\": \"New Data Node\",\n        \"firebaseUrl\": \"https://fiery-torch-2122.firebaseio.com/users/2290/dataNodes/-MUc_QsTxbYeA30FklIT\",\n        \"thumbnail\": null,\n        \"category\": null,\n        \"created_at\": \"2021-02-28T12:21:04.000Z\",\n        \"updated_at\": \"2021-02-28T12:21:04.000Z\",\n        \"firestorePath\": null,\n        \"deleted_at\": null,\n        \"is_deleted_depend\": null,\n        \"token\": null\n    },\n    {\n        \"id\": 1234,\n        \"account_id\": 56,\n        \"tenant_id\": null,\n        \"user_id\": 2290,\n        \"is_deleted\": 0,\n        \"fid\": \"7fc856f3-c91e-42ec-b5bc-dc082abeb905\",\n        \"name\": \"New Name for Data Node\",\n        \"firebaseUrl\": \"https://fiery-torch-2122.firebaseio.com/users/2290/dataNodes/-LKDNRsqW3OoLWQkxDg8\",\n        \"thumbnail\": null,\n        \"category\": \"API Demo\",\n        \"created_at\": \"2018-08-18T18:52:37.000Z\",\n        \"updated_at\": \"2021-02-27T12:57:00.000Z\",\n        \"firestorePath\": null,\n        \"deleted_at\": null,\n        \"is_deleted_depend\": null,\n        \"token\": \"6UTMgJcqYLAMVdwUCGEYEo\"\n    }\n]"}],"_postman_id":"352a7e93-81cd-4868-bfbe-0e9696ebfa88"},{"name":"Single Data Node","id":"497030b9-5bd0-4ee4-92b3-a431b9349e83","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{username}}"},{"key":"password","value":"{{password}}"}]},"isInherited":false},"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"url":"https://app.singular.live/apiv1/datanodes/:datanode_id","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_id"],"host":["app","singular","live"],"query":[],"variable":[{"id":"f31b28e2-cca9-49ba-9bf0-94841b9f3f70","description":{"content":"<p>Data Node Id</p>\n","type":"text/plain"},"type":"string","value":"{{datanode_id}}","key":"datanode_id"}]}},"response":[{"id":"a45e8d0d-897f-42e8-ad83-4378e8177116","name":"Single Data Node","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_id","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_id"],"variable":[{"id":"f31b28e2-cca9-49ba-9bf0-94841b9f3f70","key":"datanode_id","value":"{{datanode_id}}","type":"string","description":"Data Node Id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:29:39 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614515440}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4981,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102398,\"reset\":1614515440}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26212675,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"1ae-o+32JmAWVMTCFJ8ATUTrN9sDFFQ\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a36b5e000004e1af8254000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=Y4I7NVAuyAk6CqhfAPT1UoJJKHMb373UXkRRskpucshNt5HeyH2Or6z%2Fw%2BkGpundR6Z%2BxBXweFiaH5t4CqQIeTGty88zY5mKxaDsexnEKQ%2BcpF8%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a270308684e1a-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": 4019,\n    \"account_id\": 56,\n    \"tenant_id\": null,\n    \"user_id\": 2290,\n    \"is_deleted\": 0,\n    \"fid\": \"10fe756f-159f-4e66-930f-087ca49f7973\",\n    \"name\": \"New Data Node\",\n    \"firebaseUrl\": \"https://fiery-torch-2122.firebaseio.com/users/2290/dataNodes/-MUc_QsTxbYeA30FklIT\",\n    \"thumbnail\": null,\n    \"category\": null,\n    \"created_at\": \"2021-02-28T12:21:04.000Z\",\n    \"updated_at\": \"2021-02-28T12:21:04.000Z\",\n    \"firestorePath\": null,\n    \"deleted_at\": null,\n    \"is_deleted_depend\": null,\n    \"token\": null\n}"}],"_postman_id":"497030b9-5bd0-4ee4-92b3-a431b9349e83"},{"name":"Single Data Node (Token)","id":"05f54de2-5e8f-46a5-9bce-37cb1cb365c9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"f7abbc8f-33e2-4aae-9edf-13161e37c95f","description":{"content":"<p>Data Node Token</p>\n","type":"text/plain"},"type":"string","value":"{{datanode_token}}","key":"datanode_token"}]}},"response":[{"id":"b701579d-0878-4fe2-9975-b7e582f7b052","name":"Single Data Node (Token)","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_token","data"],"variable":[{"id":"f7abbc8f-33e2-4aae-9edf-13161e37c95f","key":"datanode_token","value":"{{datanode_token}}","type":"string","description":"Data Node Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:30:47 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"1d7-lxufzgAgMl0KvjPozd0nM5c2xeM\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a37bc8200004e1a62083000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=eLXOx4MxodgBJwdMYoXd0KRTS7jPbDqSmXuMYTeBoLzZH8z1Q%2Bagbw5G%2BmLu%2FU2AwrNC%2BPKbHtPZvyk0Zd0C8an6IgOyZT%2F2%2Bbmub%2Bdh%2BzQlEqk%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a28a738a24e1a-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"-MUc_QsTxbYeA30FklIT\",\n    \"model\": {\n        \"fields\": [\n            {\n                \"defaultValue\": \"Default crawl title\",\n                \"id\": \"Crawl Title\",\n                \"title\": \"Crawl Title\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"Default crawl text\",\n                \"id\": \"Crawl Text\",\n                \"title\": \"Crawl Text\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"10\",\n                \"id\": \"Crawl Speed\",\n                \"title\": \"Crawl Speed\",\n                \"type\": \"number\"\n            }\n        ]\n    },\n    \"name\": \"New Data Node\",\n    \"payload\": {\n        \"Crawl Speed\": \"10.0\",\n        \"Crawl Text\": \"Crawl text here...\",\n        \"Crawl Title\": \"Title text here...\"\n    },\n    \"refId\": 4019,\n    \"ts\": 1614514863702\n}"}],"_postman_id":"05f54de2-5e8f-46a5-9bce-37cb1cb365c9"},{"name":"Single Data Node Definition","id":"81a9bf5e-6605-4a99-9781-6ee90c262ef8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{username}}"},{"key":"password","value":"{{password}}"}]},"isInherited":false},"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"url":"https://app.singular.live/apiv1/datanodes/:datanode_id/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_id","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"250ebd50-4d9b-48f3-ae28-84f4b0b4c991","description":{"content":"<p>Data Node Id</p>\n","type":"text/plain"},"type":"string","value":"{{datanode_id}}","key":"datanode_id"}]}},"response":[{"id":"c4a4472f-9b30-48f5-8821-112f74e77aff","name":"Single Data Node Definition","originalRequest":{"method":"GET","header":[{"key":"Content-Type","value":"application/json"}],"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_id/data","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_id","data"],"variable":[{"id":"250ebd50-4d9b-48f3-ae28-84f4b0b4c991","key":"datanode_id","value":"{{datanode_id}}","type":"string","description":"Data Node Id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:31:06 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614515527}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4980,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102398,\"reset\":1614515527}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26212673,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"1d7-lxufzgAgMl0KvjPozd0nM5c2xeM\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a3808f000004e1a3988a000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=v5m5ex3fGEiV3a048bdu9hDDugCoTV%2B8g2FmSDi%2F5QCFpJsOMGwIyDPDUEGGWYQou5bNsRHliKesbUXxImUb7FX9BmRv0Ax4HeBS7wgdXcfTo10%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a29217a2a4e1a-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"-MUc_QsTxbYeA30FklIT\",\n    \"model\": {\n        \"fields\": [\n            {\n                \"defaultValue\": \"Default crawl title\",\n                \"id\": \"Crawl Title\",\n                \"title\": \"Crawl Title\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"Default crawl text\",\n                \"id\": \"Crawl Text\",\n                \"title\": \"Crawl Text\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"10\",\n                \"id\": \"Crawl Speed\",\n                \"title\": \"Crawl Speed\",\n                \"type\": \"number\"\n            }\n        ]\n    },\n    \"name\": \"New Data Node\",\n    \"payload\": {\n        \"Crawl Speed\": \"10.0\",\n        \"Crawl Text\": \"Crawl text here...\",\n        \"Crawl Title\": \"Title text here...\"\n    },\n    \"refId\": 4019,\n    \"ts\": 1614514863702\n}"}],"_postman_id":"81a9bf5e-6605-4a99-9781-6ee90c262ef8"},{"name":"Update Data Node Payload","id":"f0ed8e95-189e-4810-bf02-136a6af27815","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{username}}"},{"key":"password","value":"{{password}}"}]},"isInherited":false},"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n    \"payload\": {\r\n        \"Crawl Title\": \"Title text here..\",\r\n        \"Crawl Text\": \"Crawl text here..\",\r\n        \"Crawl Speed\": \"10.0\"\r\n    }\r\n}"},"url":"https://app.singular.live/apiv1/datanodes/:datanode_id/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_id","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"be7b55e2-3c00-4a8e-9880-2046098366fb","description":{"content":"<p>Data Node Id</p>\n","type":"text/plain"},"type":"string","value":"{{datanode_id}}","key":"datanode_id"}]}},"response":[{"id":"10dc054b-1621-456c-a2ab-538c73d1805d","name":"Update Data Node - Model and Payload","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"Default crawl title\",\r\n                \"id\": \"Crawl Title\",\r\n                \"title\": \"Crawl Title\",\r\n                \"type\": \"text\"\r\n            },\r\n            {\r\n                \"defaultValue\": \"Default crawl text\",\r\n                \"id\": \"Crawl Text\",\r\n                \"title\": \"Crawl Text\",\r\n                \"type\": \"text\"\r\n            },\r\n            {\r\n                \"defaultValue\": \"10\",\r\n                \"id\": \"Crawl Speed\",\r\n                \"title\": \"Crawl Speed\",\r\n                \"type\": \"number\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"Crawl Title\": \"Title text here...\",\r\n        \"Crawl Text\": \"Crawl text here...\",\r\n        \"Crawl Speed\": \"10.0\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_id/data","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_id","data"],"variable":[{"id":"be7b55e2-3c00-4a8e-9880-2046098366fb","key":"datanode_id","value":"{{datanode_id}}","type":"string","description":"Data Node Id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:32:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614515591}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4979,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102012,\"reset\":1614515591}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26212285,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"1d7-AKeqrkjdYIoPpWtl+tzSgmQjAMI\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a39026c00004e1a063eb000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=wnkPZ3Y7qPzESRU7NLt4FLhECv%2FRccEAG0eIK3qWy5%2Br6Ix5ZjJaVdvxNH9nAD3Xfa%2FTyS0MMh2Y5u717J%2FRhXxKWit2ZBVZzYZsx8IxU4aMjy0%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a2ab0ac424e1a-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"model\": {\n        \"fields\": [\n            {\n                \"defaultValue\": \"Default crawl title\",\n                \"id\": \"Crawl Title\",\n                \"title\": \"Crawl Title\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"Default crawl text\",\n                \"id\": \"Crawl Text\",\n                \"title\": \"Crawl Text\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"10\",\n                \"id\": \"Crawl Speed\",\n                \"title\": \"Crawl Speed\",\n                \"type\": \"number\"\n            }\n        ]\n    },\n    \"payload\": {\n        \"Crawl Title\": \"Title text here...\",\n        \"Crawl Text\": \"Crawl text here...\",\n        \"Crawl Speed\": \"10.0\"\n    },\n    \"id\": \"-MUc_QsTxbYeA30FklIT\",\n    \"name\": \"New Data Node\",\n    \"refId\": 4019,\n    \"ts\": 1614515530631\n}"},{"id":"8ca2ae73-f46f-44b5-a601-551f3daf5c8e","name":"Update Data Node - Payload","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","name":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"payload\": {\r\n        \"Crawl Title\": \"Title text here..\",\r\n        \"Crawl Text\": \"Crawl text here..\",\r\n        \"Crawl Speed\": \"10.0\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_id/data","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_id","data"],"variable":[{"id":"be7b55e2-3c00-4a8e-9880-2046098366fb","key":"datanode_id","value":"{{datanode_id}}","type":"string","description":"Data Node Id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:34:40 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614515740}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4978,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102299,\"reset\":1614515740}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26212184,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"1d5-tmGJ6jumnzlt+Cm/Va56EWsBEDM\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a3b49dc00004e1ae520d000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"group\":\"cf-nel\",\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=hb3A1yJ9gIWtjN5IbNqjM4gJYxo%2BH86eLKckuYhM85r1zx6Dw677334VvyZ8YpHxPZZoGkyzk043yeXElDKyspI07gxHNFmSMygqBdS0%2FGFxR3w%3D\"}],\"max_age\":604800}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a2e562ee24e1a-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"model\": {\n        \"fields\": [\n            {\n                \"defaultValue\": \"Default crawl title\",\n                \"id\": \"Crawl Title\",\n                \"title\": \"Crawl Title\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"Default crawl text\",\n                \"id\": \"Crawl Text\",\n                \"title\": \"Crawl Text\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"10\",\n                \"id\": \"Crawl Speed\",\n                \"title\": \"Crawl Speed\",\n                \"type\": \"number\"\n            }\n        ]\n    },\n    \"payload\": {\n        \"Crawl Title\": \"Title text here..\",\n        \"Crawl Text\": \"Crawl text here..\",\n        \"Crawl Speed\": \"10.0\"\n    },\n    \"id\": \"-MUc_QsTxbYeA30FklIT\",\n    \"name\": \"New Data Node\",\n    \"refId\": 4019,\n    \"ts\": 1614515679987\n}"}],"_postman_id":"f0ed8e95-189e-4810-bf02-136a6af27815"},{"name":"Update Data Node Payload (Token)","id":"60aa8c55-fe79-4987-b670-1c16e23fd38b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"Default crawl title\",\r\n                \"id\": \"Crawl Title\",\r\n                \"title\": \"Crawl Title\",\r\n                \"type\": \"text\"\r\n            },\r\n            {\r\n                \"defaultValue\": \"Default crawl text\",\r\n                \"id\": \"Crawl Text\",\r\n                \"title\": \"Crawl Text\",\r\n                \"type\": \"text\"\r\n            },\r\n            {\r\n                \"defaultValue\": \"10\",\r\n                \"id\": \"Crawl Speed\",\r\n                \"title\": \"Crawl Speed\",\r\n                \"type\": \"number\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"Crawl Title\": \"Title text here...\",\r\n        \"Crawl Text\": \"Crawl text here...\",\r\n        \"Crawl Speed\": \"10.0\"\r\n    }\r\n}"},"url":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_token","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"f36de251-2669-4d9d-a6c0-7e1996c2e11b","description":{"content":"<p>Data Node Token</p>\n","type":"text/plain"},"type":"string","value":"{{datanode_token}}","key":"datanode_token"}]}},"response":[{"id":"cd16687a-e8bf-42e8-935b-5d15df7fc2bb","name":"Update Data Node Payload (Token)","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n    \"model\": {\r\n        \"fields\": [\r\n            {\r\n                \"defaultValue\": \"Default crawl title\",\r\n                \"id\": \"Crawl Title\",\r\n                \"title\": \"Crawl Title\",\r\n                \"type\": \"text\"\r\n            },\r\n            {\r\n                \"defaultValue\": \"Default crawl text\",\r\n                \"id\": \"Crawl Text\",\r\n                \"title\": \"Crawl Text\",\r\n                \"type\": \"text\"\r\n            },\r\n            {\r\n                \"defaultValue\": \"10\",\r\n                \"id\": \"Crawl Speed\",\r\n                \"title\": \"Crawl Speed\",\r\n                \"type\": \"number\"\r\n            }\r\n        ]\r\n    },\r\n    \"payload\": {\r\n        \"Crawl Title\": \"Title text here...\",\r\n        \"Crawl Text\": \"Crawl text here...\",\r\n        \"Crawl Speed\": \"10.0\"\r\n    }\r\n}"},"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_token/data","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_token","data"],"variable":[{"id":"f36de251-2669-4d9d-a6c0-7e1996c2e11b","key":"datanode_token","value":"{{datanode_token}}","type":"string","description":"Data Node Token"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 02 Mar 2021 10:32:42 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":23,\"reset\":1614681205}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4998,\"reset\":1614729601}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":101911,\"reset\":1614681205}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26213911,\"reset\":1614729601}"},{"key":"Etag","value":"W/\"1d7-aer79exB5ou+KcxQYzY9L6fr46k\""},{"key":"Set-Cookie","value":"session_id=s%3Aa39fsM8D3CszudliQJgYV3bC-YlFHRrR.BKdMRSBn6XCLMdioRwkNfK2rGaAVMOQlm%2FOPaDNSyaQ; Path=/; HttpOnly; Secure; SameSite=None"},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"0894185b9200004e9e318bc000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=OsgTpD6tA8jPp1cgItX9DTeq54gOQVF%2FbMU8ShegY6g4bkjVQrjgb8a%2B1EFnf9bdsJ3SsWkCmAvQ7JjLFfQWPYred3T082CgR3RuNUrH30UtTew%3D\"}],\"group\":\"cf-nel\",\"max_age\":604800}"},{"key":"NEL","value":"{\"report_to\":\"cf-nel\",\"max_age\":604800}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"6299f6728c3c4e9e-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"model\": {\n        \"fields\": [\n            {\n                \"defaultValue\": \"Default crawl title\",\n                \"id\": \"Crawl Title\",\n                \"title\": \"Crawl Title\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"Default crawl text\",\n                \"id\": \"Crawl Text\",\n                \"title\": \"Crawl Text\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"10\",\n                \"id\": \"Crawl Speed\",\n                \"title\": \"Crawl Speed\",\n                \"type\": \"number\"\n            }\n        ]\n    },\n    \"payload\": {\n        \"Crawl Title\": \"Title text here...\",\n        \"Crawl Text\": \"Crawl text here...\",\n        \"Crawl Speed\": \"10.0\"\n    },\n    \"id\": \"-MUc_QsTxbYeA30FklIT\",\n    \"name\": \"New Data Node\",\n    \"refId\": 4019,\n    \"ts\": 1614681162773\n}"}],"_postman_id":"60aa8c55-fe79-4987-b670-1c16e23fd38b"},{"name":"Update Data Node Metadata","id":"472699a1-475b-4d8a-a0dc-fe85f1b30f21","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{username}}"},{"key":"password","value":"{{password}}"}]},"isInherited":false},"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"New Data Node\",\r\n    \"folder\": \"4e867728-b556-4d10-8761-afecf431614b\",\r\n    \"thumbnail\": \"images/defaultimage.png\",\r\n    \"data\": {\r\n        \"model\": {\r\n            \"fields\": [\r\n                {\r\n                    \"defaultValue\": \"Default crawl title\",\r\n                    \"id\": \"Crawl Title\",\r\n                    \"title\": \"Crawl Title\",\r\n                    \"type\": \"text\"\r\n                },\r\n                {\r\n                    \"defaultValue\": \"Default crawl text\",\r\n                    \"id\": \"Crawl Text\",\r\n                    \"title\": \"Crawl Text\",\r\n                    \"type\": \"text\"\r\n                },\r\n                {\r\n                    \"defaultValue\": \"10\",\r\n                    \"id\": \"Crawl Speed\",\r\n                    \"title\": \"Crawl Speed\",\r\n                    \"type\": \"number\"\r\n                }\r\n            ]\r\n        },\r\n        \"payload\": {\r\n            \"Crawl Title\": \"Title text here...\",\r\n            \"Crawl Text\": \"Crawl text here...\",\r\n            \"Crawl Speed\": \"10.0\"\r\n        }\r\n    }\r\n}"},"url":"https://app.singular.live/apiv1/datanodes/:datanode_id/metadata","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_id","metadata"],"host":["app","singular","live"],"query":[],"variable":[{"id":"070370c0-4195-449b-9be3-3aec6ac70da7","description":{"content":"<p>Data Node Id</p>\n","type":"text/plain"},"type":"string","value":"{{datanode_id}}","key":"datanode_id"}]}},"response":[{"id":"8b4491ac-e03c-4d7d-bd2b-c62d18e42035","name":"Update Data Node Metadata","originalRequest":{"method":"PUT","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n    \"name\": \"New Data Node\",\r\n    \"folder\": \"4e867728-b556-4d10-8761-afecf431614b\",\r\n    \"thumbnail\": \"images/defaultimage.png\",\r\n    \"data\": {\r\n        \"model\": {\r\n            \"fields\": [\r\n                {\r\n                    \"defaultValue\": \"Default crawl title\",\r\n                    \"id\": \"Crawl Title\",\r\n                    \"title\": \"Crawl Title\",\r\n                    \"type\": \"text\"\r\n                },\r\n                {\r\n                    \"defaultValue\": \"Default crawl text\",\r\n                    \"id\": \"Crawl Text\",\r\n                    \"title\": \"Crawl Text\",\r\n                    \"type\": \"text\"\r\n                },\r\n                {\r\n                    \"defaultValue\": \"10\",\r\n                    \"id\": \"Crawl Speed\",\r\n                    \"title\": \"Crawl Speed\",\r\n                    \"type\": \"number\"\r\n                }\r\n            ]\r\n        },\r\n        \"payload\": {\r\n            \"Crawl Title\": \"Title text here...\",\r\n            \"Crawl Text\": \"Crawl text here...\",\r\n            \"Crawl Speed\": \"10.0\"\r\n        }\r\n    }\r\n}"},"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_id/metadata","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_id","metadata"],"variable":[{"id":"070370c0-4195-449b-9be3-3aec6ac70da7","key":"datanode_id","value":"{{datanode_id}}","type":"string","description":"Data Node Id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:44:46 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"4"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":23,\"reset\":1614516338}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4976,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":101388,\"reset\":1614516338}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26211172,\"reset\":1614556801}"},{"key":"Etag","value":"W/\"4-Ut1MdMgT2zeQF5xPI2zq2so0Z6g\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a448aa100004e37628cd000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=cRby2mJR5puuhlRSONLbu2VTLBiaddzYCXvOAK5E9wl6dFMTmOkVLV7gtg6Z%2BSpywvC3G4PulunrdPHWwVt4o6Gk7xFvePluYGkpL8g1mprpapM%3D\"}],\"max_age\":604800,\"group\":\"cf-nel\"}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a3d243a434e37-FRA"}],"cookie":[],"responseTime":null,"body":"\"ok\""}],"_postman_id":"472699a1-475b-4d8a-a0dc-fe85f1b30f21"},{"name":"Patch Data Node","id":"7b9d0869-f544-4ac3-bb12-16eba1c85057","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{username}}"},{"key":"password","value":"{{password}}"}]},"isInherited":false},"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n\t\"model\": {\r\n\t\t\"fields\": [{\r\n\t\t\t\"defaultValue\": \"Breaking News Headline\",\r\n\t\t\t\"id\": \"Breaking News\",\r\n\t\t\t\"title\": \"Breaking News\",\r\n\t\t\t\"type\": \"text\"\r\n\t\t}]\r\n\t},\r\n\t\"payload\": {\r\n\t\t\"Breaking News\": \"Latest News from around the World...\"\r\n\t}\r\n}"},"url":"https://app.singular.live/apiv1/datanodes/:datanode_id/data","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_id","data"],"host":["app","singular","live"],"query":[],"variable":[{"id":"38b7027f-1ae0-4046-91ff-d60a30444efe","description":{"content":"<p>Data Node Id</p>\n","type":"text/plain"},"type":"string","value":"{{datanode_id}}","key":"datanode_id"}]}},"response":[{"id":"e8333dc0-1e6a-493e-b92b-a785a70379cf","name":"Patch Data Node","originalRequest":{"method":"PATCH","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\r\n\t\"model\": {\r\n\t\t\"fields\": [{\r\n\t\t\t\"defaultValue\": \"Breaking News Headline\",\r\n\t\t\t\"id\": \"Breaking News\",\r\n\t\t\t\"title\": \"Breaking News\",\r\n\t\t\t\"type\": \"text\"\r\n\t\t}]\r\n\t},\r\n\t\"payload\": {\r\n\t\t\"Breaking News\": \"Latest News from around the World...\"\r\n\t}\r\n}"},"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_id/data","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_id","data"],"variable":[{"id":"38b7027f-1ae0-4046-91ff-d60a30444efe","key":"datanode_id","value":"{{datanode_id}}","type":"string","description":"Data Node Id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:45:13 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":22,\"reset\":1614516338}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4975,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":101198,\"reset\":1614516338}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26210982,\"reset\":1614556801}"},{"key":"Etag","value":"W/\"2e6-ECQY0elGLmtEgUwK3qhY0OrmhE8\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a44f3ed00004e37ff1cd000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=sMmVxfyINLjZ4cb24YfpPHekZNyUcuu%2BQpsdPNpqZ7MaYNhDV88Gxh43Nb2wR5HjsEbrs0YxSSlmSsC2dZlItYVnL%2Bbzhq%2FhFWXWO5%2FGX57HhwA%3D\"}],\"max_age\":604800,\"group\":\"cf-nel\"}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a3dccaf794e37-FRA"},{"key":"Content-Encoding","value":"br"}],"cookie":[],"responseTime":null,"body":"{\n    \"id\": \"-MUc_QsTxbYeA30FklIT\",\n    \"model\": {\n        \"fields\": [\n            {\n                \"defaultValue\": \"Default crawl title\",\n                \"id\": \"Crawl Title\",\n                \"title\": \"Crawl Title\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"Default crawl text\",\n                \"id\": \"Crawl Text\",\n                \"title\": \"Crawl Text\",\n                \"type\": \"text\"\n            },\n            {\n                \"defaultValue\": \"10\",\n                \"id\": \"Crawl Speed\",\n                \"title\": \"Crawl Speed\",\n                \"type\": \"number\"\n            },\n            {\n                \"defaultValue\": \"Breaking News Headline\",\n                \"id\": \"Breaking News\",\n                \"title\": \"Breaking News\",\n                \"type\": \"text\"\n            },\n            {\n                \"id\": \"Breaking News\",\n                \"type\": \"text\",\n                \"title\": \"Breaking News\",\n                \"defaultValue\": \"Latest News from around the World...\"\n            }\n        ]\n    },\n    \"name\": \"New Data Node\",\n    \"payload\": {\n        \"Crawl Speed\": \"10.0\",\n        \"Crawl Text\": \"Crawl text here...\",\n        \"Crawl Title\": \"Title text here...\",\n        \"Breaking News\": \"Latest News from around the World...\"\n    },\n    \"refId\": 4019,\n    \"ts\": 1614516313324\n}"}],"_postman_id":"7b9d0869-f544-4ac3-bb12-16eba1c85057"},{"name":"Delete Data Node","id":"eef4efce-2bb4-48d1-b97e-e8e0402a642b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"basic","basic":{"basicConfig":[{"key":"username","value":"{{username}}"},{"key":"password","value":"{{password}}"}]},"isInherited":false},"method":"DELETE","header":[],"body":{"mode":"formdata","formdata":[]},"url":"https://app.singular.live/apiv1/datanodes/:datanode_id","urlObject":{"protocol":"https","path":["apiv1","datanodes",":datanode_id"],"host":["app","singular","live"],"query":[],"variable":[{"id":"b3a6d5f2-1c8d-4b73-ab30-7dcc58c4a395","description":{"content":"<p>Data Node Id</p>\n","type":"text/plain"},"type":"string","value":"{{datanode_id}}","key":"datanode_id"}]}},"response":[{"id":"72e360cb-ecd2-4cc9-a248-ebe3e6914c10","name":"Delete Data Node","originalRequest":{"method":"DELETE","header":[],"body":{"mode":"formdata","formdata":[]},"url":{"raw":"https://app.singular.live/apiv1/datanodes/:datanode_id","protocol":"https","host":["app","singular","live"],"path":["apiv1","datanodes",":datanode_id"],"variable":[{"id":"b3a6d5f2-1c8d-4b73-ab30-7dcc58c4a395","key":"datanode_id","value":"{{datanode_id}}","type":"string","description":"Data Node Id"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Sun, 28 Feb 2021 12:45:38 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"4"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Access-Control-Expose-Headers","value":"Date"},{"key":"X-Singular-Ratelimit-Burst-Calls","value":"{\"limit\":25,\"remaining\":24,\"reset\":1614516399}"},{"key":"X-Singular-Ratelimit-Daily-Calls","value":"{\"limit\":5000,\"remaining\":4974,\"reset\":1614556801}"},{"key":"X-Singular-Ratelimit-Burst-Data","value":"{\"limit\":102400,\"remaining\":102398,\"reset\":1614516399}"},{"key":"X-Singular-Ratelimit-Daily-Data","value":"{\"limit\":26214400,\"remaining\":26210980,\"reset\":1614556801}"},{"key":"Access-Control-Allow-Headers","value":"access-control-allow-origin, X-Requested-With, Accept, Origin, content-type, authorization"},{"key":"Access-Control-Allow-Methods","value":"POST,OPTIONS,PUT,GET,DELETE"},{"key":"Etag","value":"W/\"4-Ut1MdMgT2zeQF5xPI2zq2so0Z6g\""},{"key":"Vary","value":"Accept-Encoding"},{"key":"Via","value":"1.1 vegur"},{"key":"CF-Cache-Status","value":"DYNAMIC"},{"key":"cf-request-id","value":"088a4557dd00004e37e53c1000000001"},{"key":"Expect-CT","value":"max-age=604800, report-uri=\"https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct\""},{"key":"Report-To","value":"{\"endpoints\":[{\"url\":\"https:\\/\\/a.nel.cloudflare.com\\/report?s=LK3ihk891K%2FNj8nJKdKygngBPp%2BGEWkLxMd%2BntQT2lmU%2FFCxDshNkX31kQ35brNkNyY5o2vnkB4MZ70Kcq84cUGnuX3Co%2F13THe9Trg3%2BhFft3U%3D\"}],\"max_age\":604800,\"group\":\"cf-nel\"}"},{"key":"NEL","value":"{\"max_age\":604800,\"report_to\":\"cf-nel\"}"},{"key":"Server","value":"cloudflare"},{"key":"CF-RAY","value":"628a3e6c9e124e37-FRA"}],"cookie":[],"responseTime":null,"body":"\"ok\""}],"_postman_id":"eef4efce-2bb4-48d1-b97e-e8e0402a642b"}],"id":"79d7192a-1b3d-43ee-a662-a5e92556a3b6","_postman_id":"79d7192a-1b3d-43ee-a662-a5e92556a3b6","description":""},{"name":"Release Notes","item":[],"id":"a08ec604-5703-4d29-9b77-bbdc946c594e","description":"<h2 id=\"update-history\">Update History</h2>\n<h3 id=\"may2021\">May.2021</h3>\n<ul>\n<li>add App Instance endpoints to request the URL of the composition loaded into the App</li>\n</ul>\n<h3 id=\"mar2021\">Mar.2021</h3>\n<ul>\n<li>add App Instance Payload Examples</li>\n</ul>\n<h3 id=\"mar2021-1\">Mar.2021</h3>\n<ul>\n<li>add Rate Limiters</li>\n<li>add Data Streams </li>\n<li>create targeted REST command collection for developers and technology partners</li>\n</ul>\n<h3 id=\"jan2021\">Jan.2021</h3>\n<ul>\n<li>add examples for using data node tokens to read and update data nodes</li>\n<li>replace example ids with path variables in the documentation</li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"45163e5a-495e-4743-ad81-fbf2f3903051","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"20d97649-2998-49f4-9724-1e8a23eca1d3","type":"text/javascript","exec":[""]}}],"_postman_id":"a08ec604-5703-4d29-9b77-bbdc946c594e"}],"id":"5c8218f9-92b1-4476-ae56-a3537cbdc6b3","description":"<blockquote>\n<p>Note:</p>\n<p>API v1 will not be further developed and discontinued. Major bugs will still be fixed.</p>\n<p>Please contact us when you have questions or require assistance with the transition to API v2!</p>\n</blockquote>\n<p>This is the command collection for the Singular REST API v1.0.</p>\n<p>The easiest way to get started with the API is to click the <a href=\"https://www.getpostman.com/docs/run_button_ux\"><em>Run in Postman</em></a> button present at the top of the documentation page and use the Postman App to send requests.</p>\n<p>Also visit the <a href=\"http://developer.singular.live/\">Singular Developer Portal</a> for further documentation of Singular APIs and SDKs, including examples and code snippets.</p>\n<h2 id=\"overview\">Overview</h2>\n<p>Use the Singular REST API to programmatically send and receive data and trigger animations from Singular overlays.</p>\n<p>This API provides access to a variety of resources, including the following:</p>\n<ul>\n<li><a href=\"#193ac6f2-60d7-40dd-a729-0650ab8bd990\">App Instance API</a> </li>\n<li><a href=\"#f2901dee-52ef-4963-98da-e0eab59857b2\">Data Node API</a></li>\n<li><a href=\"#0993532f-2725-433d-ba07-942882d2125c\">Data Streams API</a></li>\n</ul>\n<p>If you plan to integrate Singular into your platform, let us know! We provide additional REST endpoints for Singular integration partners.</p>\n<ul>\n<li>Want to join the Singular Technology Partner Program? Click <a href=\"https://www.singular.live/technology-partners\">here</a>!</li>\n<li>Want to become a Singular Certified Partner? Send an email to <a href=\"mailto:mike@singular.live\">mike(at)singular.live</a>.</li>\n</ul>\n<h2 id=\"authentication\">Authentication</h2>\n<p>The Singular API supports various authentication options depending on the function you call.</p>\n<ul>\n<li><p><strong>Basic authentication:</strong>\nAll endpoints and queries can use “Basic Authentication” with username and password.</p>\n</li>\n<li><p><strong>Tokens:</strong>\n<code>Tokens</code> are used as path variables in the query URL. Requests using <code>Tokens</code> require no authentication and support calls for sending data and trigger animations.\nUsers can generate <code>Tokens</code> for App Instances and Data Nodes in the Singular Dashboard. The article <a href=\"https://support.singular.live/hc/en-us/articles/360046167591-Generate-or-revoke-access-to-your-Control-Application\">Generate and revoke access to your Control App</a> on the <a href=\"https://support.singular.live\">Singular Support Portal</a> contains a step-by-step description.</p>\n</li>\n<li><p><strong>Private and Public Tokens:</strong>\n<a href=\"#59563b90-8f36-453e-9f14-ee71d05813ff\">Singular Data Streams</a> use Private and Public Tokens for sending data and receiving data.</p>\n</li>\n</ul>\n<h1 id=\"frequently-used-endpoints\">Frequently used endpoints</h1>\n<p>The most frequently used endpoints are listed below. You may check them out first!</p>\n<ul>\n<li><p>Update “Show Data” in a Singular overlay</p>\n<ul>\n<li><a href=\"#857fc25f-57b6-4720-b720-e9e6a015de5a\">Send Show Data using basic authentication</a></li>\n<li><a href=\"#cef7adce-b17f-4b96-bab3-02d9d7539683\">Send Show Data using a shared token</a></li>\n</ul>\n</li>\n<li><p>Trigger animations of a Singular overlay</p>\n<ul>\n<li><a href=\"#f235ab4e-a35c-4440-ac8d-13fc73118044\">Trigger animation using basic authentication</a></li>\n<li><a href=\"#0db6fd38-87d3-4938-8ea7-8523cedef64a\">Trigger animation using a shared token</a></li>\n</ul>\n</li>\n<li><p>Update “Global Data” in Singular data nodes</p>\n<ul>\n<li><a href=\"#98e9c2d5-f3d3-4aae-9672-70f2fc0aee8a\">Send Global Data using basic authentication</a></li>\n<li><a href=\"#43b61d6b-c0b1-427f-a327-bfe732332355\">Send Global Data using a shared token</a></li>\n</ul>\n</li>\n</ul>\n<h1 id=\"rate-limits\">Rate limits</h1>\n<p>Every day the Singular API receives millions of requests. To help manage the volume of requests, limits are placed on the number of requests that can be made. The Singular API also employs several safeguards against bursts of incoming traffic. Users who send many requests in quick succession or a high volume of data that exceed their account limits may see error responses that show up as <a href=\"https://tools.ietf.org/html/rfc6585\">status code 429</a>.\nThese limits help us provide the reliable and scalable API that our customers need.</p>\n<p>We have several limiters in the API, including:</p>\n<ul>\n<li><p><strong>Daily limiters</strong> limit the number of requests and the amount of data received by the API per day.</p>\n</li>\n<li><p><strong>Burst rate limiters</strong> limit the number of requests and the amount of data received by the API per minute.</p>\n</li>\n</ul>\n<p>The daily and burst rate limiters depend on your subscription type.</p>\n<p><strong>Rate limits for Enterprise subscriptions</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th></th>\n<th>Daily API Limit</th>\n<th>Burst API Limit (per minute)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Number of Requests</td>\n<td>100,000 calls</td>\n<td>500 calls</td>\n</tr>\n<tr>\n<td>Amount of Data</td>\n<td>500 MB</td>\n<td>1 MB</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Rate limits for Professional and Non-Profit subscriptions</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th></th>\n<th>Daily API Limit</th>\n<th>Burst API Limit (per minute)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Number of Requests</td>\n<td>20,000 calls</td>\n<td>200 calls</td>\n</tr>\n<tr>\n<td>Amount of Data</td>\n<td>100 MB</td>\n<td>500 KB</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Rate limits for Free subscriptions</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th></th>\n<th>Daily API Limit</th>\n<th>Burst API Limit (per minute)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Number of Requests</td>\n<td>5,000 calls</td>\n<td>25 calls</td>\n</tr>\n<tr>\n<td>Amount of Data</td>\n<td>25 MB</td>\n<td>100 KB</td>\n</tr>\n</tbody>\n</table>\n</div><p>Treat these limits as maximums and don’t generate unnecessary load. See Handling Rate Violations for advice on handling 429s. If you suddenly see a rising number of rate-limited requests, please contact <a href=\"mailto:support@singular.live\">support(at)singular.live</a>.\nWe may reduce limits to prevent abuse or increase limits to enable high-traffic applications. To request an increased rate limit, please contact <a href=\"mailto:support@singular.live\">support(at)singular.live</a>.</p>\n<p>For integrating data feeds with high-volume, high-frequency, and low-latency updates, we recommend using Singular Data Streams -&gt; Add link to Singular Data Streams</p>\n<h2 id=\"endpoints-using-rate-limits\">Endpoints using rate limits</h2>\n<ul>\n<li><strong>PUT / PATCH:</strong> <a href=\"https://app.singular.live/apiv1/appinstances/:%7Bapp_instance_id%7D/control\">https://app.singular.live/apiv1/appinstances/:{app_instance_id}/control</a> </li>\n<li><strong>PUT / PATCH:</strong>  <a href=\"https://app.singular.live/apiv1/control/:%7Bapp_access_token%7D\">https://app.singular.live/apiv1/control/:{app_access_token}</a></li>\n<li><strong>PUT / PATCH:</strong>  <a href=\"https://app.singular.live/apiv1/datanodes/:%7Bdatanode_id%7D/data\">https://app.singular.live/apiv1/datanodes/:{datanode_id}/data</a></li>\n<li><strong>PUT / PATCH:</strong>  <a href=\"https://app.singular.live/apiv1/datanodes/:%7Bdatanode_token%7D/data\">https://app.singular.live/apiv1/datanodes/:{datanode_token}/data</a></li>\n</ul>\n<h2 id=\"header-response-codes\">Header response codes</h2>\n<p>Requests to endpoints using rate limits return custom headers response codes. The response code is a JSON string with detailed information about daily limits and burst limits. </p>\n<ul>\n<li><strong>X-Singular-Ratelimit-Burst-Calls</strong></li>\n</ul>\n<p><strong><code>{\"limit\": 500,\"remaining\": 499,\"reset\": 1614430792}</code></strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>limit</code></td>\n<td>maximum number of requests per minute</td>\n</tr>\n<tr>\n<td><code>remaining</code></td>\n<td>number of calls left within the current minute</td>\n</tr>\n<tr>\n<td><code>reset</code></td>\n<td>UTC time indicates the next reset of the burst limit</td>\n</tr>\n</tbody>\n</table>\n</div><ul>\n<li><strong>X-Singular-Ratelimit-Daily-Calls</strong></li>\n</ul>\n<p><strong><code>{\"limit\":1048576,\"remaining\":1048452,\"reset\":1614430792}</code></strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>limit</code></td>\n<td>maximum number of requests per day</td>\n</tr>\n<tr>\n<td><code>remaining</code></td>\n<td>number of calls left for the current day</td>\n</tr>\n<tr>\n<td><code>reset</code></td>\n<td>UTC time indicates the next reset of the daily limit</td>\n</tr>\n</tbody>\n</table>\n</div><ul>\n<li><strong>X-Singular-Ratelimit-Burst-Data</strong></li>\n</ul>\n<p><strong><code>{\"limit\":100000,\"remaining\":99854,\"reset\":1614470401}</code></strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>limit</code></td>\n<td>maximum amount of data in byte per minute</td>\n</tr>\n<tr>\n<td><code>remaining</code></td>\n<td>amount of data in byte left within the current minute</td>\n</tr>\n<tr>\n<td><code>reset</code></td>\n<td>UTC time indicates the next reset of the burst limit</td>\n</tr>\n</tbody>\n</table>\n</div><ul>\n<li><strong>X-Singular-Ratelimit-Daily-Data</strong></li>\n</ul>\n<p><strong><code>{\"limit\":524288000,\"remaining\":522565096,\"reset\":1614470401}</code></strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Property</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>limit</code></td>\n<td>maximum amount of data in byte per day</td>\n</tr>\n<tr>\n<td><code>remaining</code></td>\n<td>amount of data in byte left for the current day</td>\n</tr>\n<tr>\n<td><code>reset</code></td>\n<td>UTC time indicates the next reset of the daily limit</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"common-causes-and-mitigation-strategies\">Common causes and mitigation strategies</h2>\n<p>Rate limits can occur under a variety of conditions, but it’s most common in these scenarios:</p>\n<ul>\n<li><p>Running a large volume of closely-spaced requests can lead to the burst rate limiting. This often happens when developing or testing a data feed integration. When engaging in these activities, you should try to control the client side's request rate and data volume (see Handling Rate Limit Violations).</p>\n</li>\n<li><p>Sending huge amounts of data to the API can lead to the burst rate limiting. This happens when sending growing statistics data over a period of time. In such a case, you should control the data volume on the client-side and only send the required dynamic data to the API.</p>\n</li>\n</ul>\n<h2 id=\"rate-limit-violations\">Rate limit violations</h2>\n<p>Rate limit violations are logged to the <a href=\"https://app.singular.live/users/settings/accountStatus\">Account Usage Statistics</a>.</p>\n<blockquote>\n<p>Rate limit violations for <strong>Professional and Enterprise Subscriptions</strong> are logged, but API requests exceeding the limits will still be processed.</p>\n</blockquote>\n<blockquote>\n<p>Rate limit violations for <strong>Free Subscriptions</strong> will be logged, and API requests exceeding the limits will be rejected and return an <a href=\"https://tools.ietf.org/html/rfc6585\">error status code 429</a> <code>Too Many Requests</code></p>\n</blockquote>\n<h2 id=\"handling-rate-limit-violations\">Handling rate limit violations</h2>\n<p>A basic technique for integrations to handle rate limiting is to watch for <code>429 status codes</code> and build in a retry mechanism. The retry mechanism should follow an exponential backoff schedule to reduce request volume or increase the time between requests when necessary. Ideally, the client-side is self-aware of existing rate limits and can pause requests until the currently exceeded window expires.</p>\n<p>We’d also recommend looking into the following techniques for handling limiting gracefully:</p>\n<ul>\n<li>Add randomness into the requests to avoid a <a href=\"https://en.wikipedia.org/wiki/Thundering_herd_problem\">thundering herd problem</a>.</li>\n<li>Implement a <a href=\"https://en.wikipedia.org/wiki/Token_bucket\">token bucket algorithm</a> for controlling rate limits at a global scale.</li>\n</ul>\n<h2 id=\"support\">Support</h2>\n<p>For help regarding accessing the Singular REST API, feel free to drop in a line at <a href=\"mailto:support@singular.live\">support(at)singular.live</a>.</p>\n<h2 id=\"terms-of-use\">Terms of Use</h2>\n<p>For information on API terms of use and privacy, refer to our policy document at <a href=\"http://www.singular.live/terms-of-service\">http://www.singular.live/terms-of-service</a> and <a href=\"http://www.singular.live/privacy-policy\">http://www.singular.live/privacy-policy</a>.</p>\n","_postman_id":"5c8218f9-92b1-4476-ae56-a3537cbdc6b3"}],"id":"70a7e4b8-69f8-4980-9844-63839912f674","_postman_id":"70a7e4b8-69f8-4980-9844-63839912f674","description":""}],"event":[{"listen":"prerequest","script":{"id":"99d529c5-ec58-4efc-9cfe-3e6be565aef5","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"59ca07bc-c756-4c5b-9498-d97d601c606e","type":"text/javascript","exec":[""]}}],"variable":[{"key":"appToken","value":"Shared App Token  <string>","type":"string"},{"key":"baseUrl","value":"https://app.singular.live","type":"string"},{"key":"datastreamPrivateToken","value":"Data Stream Private Token","type":"string"}]}