{"info":{"_postman_id":"d1f4003a-9e92-4af6-96de-1a8f1614391c","name":"KBD","description":"<html><head></head><body><p>This is a sample BirdDog API server for the Birddog KBD.</p>\n<p>The following are RESTful GET or POST API calls. Successful returns from the API server will have a response code of 200. Returns in the response body that will either be:</p>\n<ul>\n<li><p>JSON with the header being \"application/json\"</p>\n</li>\n<li><p>Or plain text with the header \"text/plain\"</p>\n</li>\n</ul>\n<p>All BirdDog RESTful API calls (GET &amp; POST) are made to port \"8080\"</p>\n<p>You can find out more about BirdDog Products at <a href=\"https://birddog.tv/\">BirdDog.tv</a></p>\n<p>Contact Support: <a href=\"https://mailto:help@bird-dog.tv\">Help@BirdDog.tv</a></p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"29602224","collectionId":"d1f4003a-9e92-4af6-96de-1a8f1614391c","publishedId":"2sB3B8qseQ","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"22b24c"},"publishDate":"2025-07-30T02:13:22.000Z"},"item":[{"name":"Network Settings","item":[{"name":"Ethernet Setup","item":[{"name":"EthSetup","event":[{"listen":"test","script":{"id":"d7ab014e-3cf5-4ccc-a79b-85eb2ab8bd62","exec":["const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const responseJson = pm.response.json();\r","const header = \"application/json\"\r","\r","var schema = {\r","  \"type\": \"object\",\r","  \"properties\": {\r","    \"IpMode\": {\r","      \"type\": \"string\"\r","    },\r","    \"IpAddr\": {\r","      \"type\": \"string\"\r","    },\r","    \"NetMask\": {\r","      \"type\": \"string\"\r","    },\r","    \"GateWayIp\": {\r","      \"type\": \"string\"\r","    },\r","    \"DnsSvrIpFirst\": {\r","      \"type\": \"string\"\r","    },\r","    \"DnsSvrIpSecond\": {\r","      \"type\": \"string\"\r","    }\r","  },\r","  \"required\": [\r","    \"IpMode\",\r","    \"IpAddr\",\r","    \"NetMask\",\r","    \"GateWayIp\",\r","    \"DnsSvrIpFirst\",\r","    \"DnsSvrIpSecond\"\r","  ]\r","}\r","\r","\r","const ipAddresses = [\"IpAddr\", \"NetMask\", \"GateWayIp\", \"DnsSvrIpFirst\", \"DnsSvrIpSecond\"]\r","\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","for (const key of ipAddresses) {\r","    testResorces.formattedIpAddress(responseJson, key)\r","}\r","\r","testResorces.shouldBeOneOf(responseJson, \"IpMode\", [\"dhcp\", \"static\"])"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"c2787a95-7b46-47cb-a59f-f2ef8aabf220","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"2cab0271-5fda-442e-b929-398646ad8710","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{BASE-URL}}:8080/EthSetup","description":"<p>Response body header = \"application/json\"</p>\n","urlObject":{"port":"8080","path":["EthSetup"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"a3d0265b-759c-49a7-8373-b395477c9f96","name":"All Cameras","originalRequest":{"method":"GET","header":[],"url":"{{BASE-URL}}:8080/EthSetup"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization"},{"key":"Access-Control-Allow-Methods","value":"GET,HEAD,OPTIONS,POST,PUT"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json"},{"key":"Date","value":"Thu, 03 Oct 2024 09:41:12 GMT"},{"key":"Content-Length","value":"284"}],"cookie":[],"responseTime":null,"body":"{\n    \"IpMode\": \"dhcp\",\n    \"IpAddr\": \"192.168.20.46\",\n    \"NetMask\": \"255.255.255.0\",\n    \"GateWayIp\": \"192.168.20.20\",\n    \"DnsSvrIpFirst\": \"9.9.9.9\",\n    \"DnsSvrIpSecond\": \"1.1.1.1\",\n    \"DhcpTimeout\": \"30\",\n    \"DhcpFallbackIPAddr\": \"192.168.100.100\",\n    \"DhcpFallbackNetMask\": \"255.255.255.0\",\n    \"DhcpFallbackGateWayIp\": \"192.168.1.1\"\n}"}],"_postman_id":"2cab0271-5fda-442e-b929-398646ad8710"},{"name":"EthSetup","event":[{"listen":"test","script":{"id":"d7ab014e-3cf5-4ccc-a79b-85eb2ab8bd62","exec":["const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const responseJson = pm.response.json();\r","const header = \"application/json\"\r","\r","var schema = {\r","  \"type\": \"object\",\r","  \"properties\": {\r","    \"IpMode\": {\r","      \"type\": \"string\"\r","    },\r","    \"IpAddr\": {\r","      \"type\": \"string\"\r","    },\r","    \"NetMask\": {\r","      \"type\": \"string\"\r","    },\r","    \"GateWayIp\": {\r","      \"type\": \"string\"\r","    },\r","    \"DnsSvrIpFirst\": {\r","      \"type\": \"string\"\r","    },\r","    \"DnsSvrIpSecond\": {\r","      \"type\": \"string\"\r","    }\r","  },\r","  \"required\": [\r","    \"IpMode\",\r","    \"IpAddr\",\r","    \"NetMask\",\r","    \"GateWayIp\",\r","    \"DnsSvrIpFirst\",\r","    \"DnsSvrIpSecond\"\r","  ]\r","}\r","\r","\r","const ipAddresses = [\"IpAddr\", \"NetMask\", \"GateWayIp\", \"DnsSvrIpFirst\", \"DnsSvrIpSecond\"]\r","\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","for (const key of ipAddresses) {\r","    testResorces.formattedIpAddress(responseJson, key)\r","}\r","\r","testResorces.shouldBeOneOf(responseJson, \"IpMode\", [\"dhcp\", \"static\"])"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"5f0b4c8e-b530-4c3e-b913-bd60cbf93793","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"a0c3d0c3-e71e-4013-93da-9c66d7ecf561","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DhcpFallbackIPAddr\": \"192.168.100.254\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{BASE-URL}}:8080/EthSetup","description":"<p>Response body header = \"application/json\"</p>\n","urlObject":{"port":"8080","path":["EthSetup"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"42039dcd-a153-4c9f-a8e9-0451c26db692","name":"All Cameras","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DhcpTimeout\": \"33\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{BASE-URL}}:8080/EthSetup"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization"},{"key":"Access-Control-Allow-Methods","value":"GET,HEAD,OPTIONS,POST,PUT"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json"},{"key":"Date","value":"Thu, 03 Oct 2024 09:41:59 GMT"},{"key":"Content-Length","value":"284"}],"cookie":[],"responseTime":null,"body":"{\n    \"IpMode\": \"dhcp\",\n    \"IpAddr\": \"192.168.20.46\",\n    \"NetMask\": \"255.255.255.0\",\n    \"GateWayIp\": \"192.168.20.20\",\n    \"DnsSvrIpFirst\": \"9.9.9.9\",\n    \"DnsSvrIpSecond\": \"1.1.1.1\",\n    \"DhcpTimeout\": \"33\",\n    \"DhcpFallbackIPAddr\": \"192.168.100.100\",\n    \"DhcpFallbackNetMask\": \"255.255.255.0\",\n    \"DhcpFallbackGateWayIp\": \"192.168.1.1\"\n}"}],"_postman_id":"a0c3d0c3-e71e-4013-93da-9c66d7ecf561"}],"id":"115acb67-f849-4abb-a214-8376b5a3953a","description":"<p>GET - Retrieve Ethernet settings.</p>\n<p>POST - Set Ethernet settings</p>\n<p>Response contains:</p>\n<p><strong>All Cameras</strong></p>\n<ul>\n<li><p>\"IpMode\" → GET &amp; POST \"dhcp\" or \"static\" (Set IP addressing)</p>\n</li>\n<li><p>\"IpAddr\" → GET current IP address, POST static IP address</p>\n</li>\n<li><p>\"NetMask\" → GET current subnet mask, POST static subnet mask</p>\n</li>\n<li><p>\"GateWayIp\" → GET current gateway IP, POST static gateway IP</p>\n</li>\n<li><p>\"DnsSvrIpFirst: → GET current DNS address, POST static DNS address</p>\n</li>\n<li><p>\"DnsSvrIpSecond\" → GET current DNS address, POST static DNS address</p>\n</li>\n</ul>\n","_postman_id":"115acb67-f849-4abb-a214-8376b5a3953a"},{"name":"NDI Discovery Server","item":[{"name":"NDIDisServer","event":[{"listen":"test","script":{"id":"3aba1c7a-77c0-40a0-b099-676358e15572","exec":["const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const responseJson = pm.response.json();\r","const header = \"application/json\"\r","\r","var schema = {\r","  \"type\": \"object\",\r","  \"properties\": {\r","    \"NDIDisServ\": {\r","      \"type\": \"string\"\r","    },\r","    \"NDIDisServIP\": {\r","      \"type\": \"string\"\r","    }\r","  },\r","  \"required\": [\r","    \"NDIDisServ\",\r","    \"NDIDisServIP\"\r","  ]\r","};\r","\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","testResorces.shouldBeOneOf(responseJson, \"NDIDisServ\", [\"NDIDisServDis\", \"NDIDisServEn\"])\r","\r","testResorces.formattedIpAddress(responseJson, \"NDIDisServIP\")\r",""],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"355bc2a2-d211-4889-ab19-03d2b44b2346","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"4cdf0f62-cf26-4f7d-90c8-9ef9dbb37562","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{BASE-URL}}:8080/NDIDisServer","description":"<p>Response body header = \"application/json\"</p>\n","urlObject":{"port":"8080","path":["NDIDisServer"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"f9bdf7b1-936f-49f8-a32e-bc71269ee91f","name":"X1 Ultra","originalRequest":{"method":"GET","header":[],"url":"{{BASE-URL}}:8080/NDIDisServer"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization"},{"key":"Access-Control-Allow-Methods","value":"GET,HEAD,OPTIONS,POST,PUT"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json"},{"key":"Date","value":"Tue, 04 Feb 2025 09:08:09 GMT"},{"key":"Content-Length","value":"61"}],"cookie":[],"responseTime":null,"body":"{\n    \"NDIDisServ\": \"NDIDisServDis\",\n    \"NDIDisServIP\": \"192.168.0.21\"\n}"}],"_postman_id":"4cdf0f62-cf26-4f7d-90c8-9ef9dbb37562"},{"name":"NDIDisServer","event":[{"listen":"test","script":{"id":"3aba1c7a-77c0-40a0-b099-676358e15572","exec":["const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const responseJson = pm.response.json();\r","const header = \"application/json\"\r","\r","var schema = {\r","  \"type\": \"object\",\r","  \"properties\": {\r","    \"NDIDisServ\": {\r","      \"type\": \"string\"\r","    },\r","    \"NDIDisServIP\": {\r","      \"type\": \"string\"\r","    }\r","  },\r","  \"required\": [\r","    \"NDIDisServ\",\r","    \"NDIDisServIP\"\r","  ]\r","};\r","\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","testResorces.shouldBeOneOf(responseJson, \"NDIDisServ\", [\"NDIDisServDis\", \"NDIDisServEn\"])\r","\r","testResorces.formattedIpAddress(responseJson, \"NDIDisServIP\")\r",""],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"6df2dfdc-c481-4b94-828b-267125d87f15","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"3cd53a32-855f-4153-8354-d002aed4bdac","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"NDIDisServ\": \"NDIDisServDis\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{BASE-URL}}:8080/NDIDisServer","description":"<p>Response body header = \"application/json\"</p>\n","urlObject":{"port":"8080","path":["NDIDisServer"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"6905e191-2a90-44a5-8e19-30c42b014859","name":"X1 Ultra","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"NDIDisServ\": \"NDIDisServEn\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{BASE-URL}}:8080/NDIDisServer"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization"},{"key":"Access-Control-Allow-Methods","value":"GET,HEAD,OPTIONS,POST,PUT"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json"},{"key":"Date","value":"Tue, 04 Feb 2025 09:08:32 GMT"},{"key":"Content-Length","value":"61"}],"cookie":[],"responseTime":null,"body":"{\n    \"NDIDisServ\": \"NDIDisServDis\",\n    \"NDIDisServIP\": \"192.168.1.100\"\n}"}],"_postman_id":"3cd53a32-855f-4153-8354-d002aed4bdac"}],"id":"d708959c-89ac-4363-8508-c31a5eb53fce","description":"<p>GET - Retrieve NDI Discovery Server Info.</p>\n<p>POST - Set NDI Discovery Server Info.</p>\n<p>Response includes:</p>\n<p><strong>All Cameras:</strong></p>\n<ul>\n<li><p>\"NDIDisServ\" → \"NDIDisServDis\" or \"NDIDisServEn\"</p>\n</li>\n<li><p>\"NDIDisServIP\": e.g. \"192.168.1.100\"</p>\n</li>\n</ul>\n","_postman_id":"d708959c-89ac-4363-8508-c31a5eb53fce"}],"id":"9815739c-d114-44d2-9607-64be5a60b037","description":"<p>This folder contains GET and POST requests that pertain to the networking operations of the device.</p>\n","_postman_id":"9815739c-d114-44d2-9607-64be5a60b037"},{"name":"NDI Finder Settings","item":[{"name":"NDI Group Name","item":[{"name":"NDIGrpName","event":[{"listen":"test","script":{"id":"088c932b-0771-4634-bac0-3620d4f88ecf","exec":["const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses')\r","const response = pm.response;\r","const header = \"text/plain\"\r","\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"f04e28bb-fc8a-4d5d-8cd7-4dea0715315c","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"8686daab-9ae2-4d3c-a5bd-409b68f866e1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{BASE-URL}}:8080/NDIGrpName","description":"<p>Response body header = \"text/plain\"</p>\n","urlObject":{"port":"8080","path":["NDIGrpName"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"91edb6be-a976-486b-bbd8-d1023a6486fd","name":"ALL X Series Cameras","originalRequest":{"method":"GET","header":[],"url":"{{BASE-URL}}:8080/NDIGrpName"},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization"},{"key":"Access-Control-Allow-Methods","value":"GET,HEAD,OPTIONS,POST,PUT"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"text/plain"},{"key":"Date","value":"Tue, 04 Feb 2025 09:23:21 GMT"},{"key":"Content-Length","value":"27"}],"cookie":[],"responseTime":null,"body":"\"BirdDog-Co1\",\"BirdDog-Co2\""}],"_postman_id":"8686daab-9ae2-4d3c-a5bd-409b68f866e1"},{"name":"NDIGrpName","event":[{"listen":"test","script":{"id":"af49c39a-c0ef-4a84-ad85-3e0e8d6193d4","exec":["const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses')\r","const response = pm.response;\r","const header = \"text/plain\"\r","\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"96105a09-99d6-4e7a-a5a2-807b2d77b056","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"c6a2d011-7b6c-4461-9cb0-b5812b5868f7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"Your_Group, My_Group","options":{"raw":{"language":"text"}}},"url":"{{BASE-URL}}:8080/NDIGrpName","description":"<p>Response body header = \"text/plain\"</p>\n","urlObject":{"port":"8080","path":["NDIGrpName"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"c10812cd-14b5-4406-b0a8-9a8e7e02851a","name":"ALL X Series Cameras","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"Your_Group, My_Group","options":{"raw":{"language":"text"}}},"url":"{{BASE-URL}}:8080/NDIGrpName"},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization"},{"key":"Access-Control-Allow-Methods","value":"GET,HEAD,OPTIONS,POST,PUT"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"text/plain"},{"key":"Date","value":"Mon, 26 May 2025 10:07:42 GMT"},{"key":"Content-Length","value":"20"}],"cookie":[],"responseTime":null,"body":"Your_Group, My_Group"}],"_postman_id":"c6a2d011-7b6c-4461-9cb0-b5812b5868f7"}],"id":"a1cc81e0-df66-4a64-a591-c3848370bdb1","description":"<p>This command will return the name of the currently subscribed NDI group. The response will be a plain text return.</p>\n","_postman_id":"a1cc81e0-df66-4a64-a591-c3848370bdb1"},{"name":"NDI Off Subnet Sources","item":[{"name":"NDIOffSnSrc","event":[{"listen":"test","script":{"id":"af49c39a-c0ef-4a84-ad85-3e0e8d6193d4","exec":["const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses')\r","const response = pm.response;\r","const header = \"text/plain\"\r","\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"450cfea2-bd78-4f69-a7c5-4b84d027c4a0","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"1f8cfc04-96fa-4732-864d-834e2da278f1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"{{BASE-URL}}:8080/NDIOffSnSrc","description":"<p>Response body header = \"text/plain\"</p>\n","urlObject":{"port":"8080","path":["NDIOffSnSrc"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"36e8947e-8121-4087-8869-ef962602dd1f","name":"All Cameras","originalRequest":{"method":"GET","header":[],"url":"{{BASE-URL}}:8080/NDIOffSnSrc"},"status":"OK","code":200,"_postman_previewlanguage":"plain","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization"},{"key":"Access-Control-Allow-Methods","value":"GET,HEAD,OPTIONS,POST,PUT"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"text/plain"},{"key":"Date","value":"Fri, 04 Oct 2024 06:40:21 GMT"},{"key":"Content-Length","value":"31"}],"cookie":[],"responseTime":null,"body":"\"192.168.1.225\",\"192.168.1.223\""}],"_postman_id":"1f8cfc04-96fa-4732-864d-834e2da278f1"},{"name":"NDIOffSnSrc","event":[{"listen":"test","script":{"id":"af49c39a-c0ef-4a84-ad85-3e0e8d6193d4","exec":["const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses')\r","const response = pm.response;\r","const header = \"text/plain\"\r","\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"c1bd45ce-0ae8-4058-893b-e705b3097066","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"8b4fb3e1-4fd3-47f1-b28a-ccfd5ea23cf4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"192.168.100.100,192.168.100.101","options":{"raw":{"language":"text"}}},"url":"{{BASE-URL}}:8080/NDIOffSnSrc","description":"<p>Response body header = \"text/plain\"</p>\n","urlObject":{"port":"8080","path":["NDIOffSnSrc"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[],"_postman_id":"8b4fb3e1-4fd3-47f1-b28a-ccfd5ea23cf4"}],"id":"4dd00641-a2e4-410b-bb9d-90e8144a0e20","description":"<p>Set or retrieve the off subnet (external sources) IP list. The response will be a text only response.</p>\n<ul>\n<li>POST body is a comma seperated list of IP address with no spaces between the values.</li>\n</ul>\n","_postman_id":"4dd00641-a2e4-410b-bb9d-90e8144a0e20"}],"id":"80182e2e-81c5-4ced-a059-b0af4adb4f9e","description":"<p>A collection of API endpoints that relate to the NDI Finder.</p>\n","_postman_id":"80182e2e-81c5-4ced-a059-b0af4adb4f9e"},{"name":"Miscellaneous Camera Settings","item":[{"name":"ResetSystemDefault","event":[{"listen":"test","script":{"id":"66bb46e6-4d40-47a2-bfc3-c3f1d3d371d7","exec":["//Check if all test need to be skipped\r","var skipTests = pm.environment.get(\"skipTests\")\r","if (skipTests){\r","    pm.test.skip(\"Skipping test because the API isn't supported by this device\")\r","    return; //Exits the script\r","}\r","const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const header = \"application/json\"\r","//Catch error caused by API request not returning JSON when the API isn't supported\r","let responseJson\r","try {\r","    responseJson = pm.response.json();\r","} catch (e) {\r","    console.log('No JSON returned because API is not supported by this device.')\r","}\r","\r","var schema = {\r","  \"type\": \"object\",\r","  \"properties\": {\r","    \"Status\": {\r","      \"type\": \"string\"\r","    }\r","  },\r","  \"required\": [\r","    \"Status\"\r","  ]\r","}\r","\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","testResorces.shouldBeOneOf(responseJson, \"Status\", [\"success\"])\r",""],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"ee7ca668-89c0-4d50-abc9-2cf31a8c83dc","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"f0219cb8-65d6-424a-996d-74e706b02187","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"{{BASE-URL}}:8080/ResetSystemDefault","description":"<p>The return of the API is - {\"status\":\"success\"}</p>\n<p>Response body header = \"application/json\"</p>\n","urlObject":{"port":"8080","path":["ResetSystemDefault"],"host":["{{BASE-URL}}"],"query":[{"disabled":true,"description":{"content":"<p>Keep current network settings: \"yes\" or \"no\"</p>\n","type":"text/plain"},"key":"KeepNetWork","value":"yes"}],"variable":[]}},"response":[{"id":"194a2740-d1c9-4f95-8641-113fb5f1b7aa","name":"X1 Ultra","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":{"raw":"{{BASE-URL}}:8080/ResetSystemDefault","host":["{{BASE-URL}}"],"port":"8080","path":["ResetSystemDefault"],"query":[{"key":"KeepNetWork","value":"yes","description":"Keep current network settings: \"yes\" or \"no\"","disabled":true}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Access-Control-Allow-Headers","value":"Origin, X-Requested-With, Content-Type, Accept, Authorization"},{"key":"Access-Control-Allow-Methods","value":"GET,HEAD,OPTIONS,POST,PUT"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Type","value":"application/json"},{"key":"Date","value":"Tue, 04 Feb 2025 09:29:10 GMT"},{"key":"Content-Length","value":"21"}],"cookie":[],"responseTime":null,"body":"{\n    \"Status\": \"success\"\n}"}],"_postman_id":"f0219cb8-65d6-424a-996d-74e706b02187"},{"name":"reboot","event":[{"listen":"test","script":{"id":"739654dd-abec-44a4-b04b-1b51ba3e724c","exec":["//Check if all test need to be skipped\r","var skipTests = pm.environment.get(\"skipTests\")\r","if (skipTests){\r","    pm.test.skip(\"Skipping test because the API isn't supported by this device\")\r","    return; //Exits the script\r","}\r","const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const header = \"application/json\"\r","//Catch error caused by API request not returning JSON when the API isn't supported\r","let responseJson\r","try {\r","    responseJson = pm.response.json();\r","} catch (e) {\r","    console.log('No JSON returned because API is not supported by this device.')\r","}\r","\r","var schema = {\r","  \"type\": \"object\",\r","  \"properties\": {\r","    \"status\": {\r","      \"type\": \"string\"\r","    }\r","  },\r","  \"required\": [\r","    \"status\"\r","  ]\r","}\r","\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","testResorces.shouldBeOneOf(responseJson, \"status\", [\"success\"])\r",""],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"19d311c7-b60e-46d2-b19e-241c07e18ef6","exec":["pm.environment.set(\"skipTests\", false)\r","\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);"],"type":"text/javascript","packages":{}}}],"id":"bc3565d8-a10e-4bfe-8ede-5d800f6dfe6a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"{{BASE-URL}}:8080/reboot","description":"<p>The return of the API is - {\"status\":\"success\"}</p>\n<p>Response body header = \"application/json\"</p>\n","urlObject":{"port":"8080","path":["reboot"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"f5b8bb4b-e4a9-4350-9467-56da85a6b8b2","name":"X1 Ultra","originalRequest":{"method":"POST","header":[],"url":"{{BASE-URL}}:8080/reboot"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Date","value":"Tue, 04 Feb 2025 09:29:57 GMT"},{"key":"Content-Length","value":"20"}],"cookie":[],"responseTime":null,"body":"{\n    \"status\": \"success\"\n}"}],"_postman_id":"bc3565d8-a10e-4bfe-8ede-5d800f6dfe6a"}],"id":"e616b6bb-7c92-41e5-a7c3-63b62a3f3f96","description":"<ul>\n<li><p>/reboot - This command will immediately initiate a reboot of the BirdDog device.</p>\n</li>\n<li><p>/ResetSystemDefault - Factory resest the device, with an optional parameter to keep network settings.</p>\n</li>\n</ul>\n<p>The return for all the above APIs is - {\"status\": \"success\"}.</p>\n","_postman_id":"e616b6bb-7c92-41e5-a7c3-63b62a3f3f96"},{"name":"Camera Selection","item":[{"name":"SelectCam","event":[{"listen":"test","script":{"id":"9e1190d6-c8be-49e2-8bfb-1f8b9b0c42b0","exec":["const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const responseJson = pm.response.json();\r","const header = \"application/json\"\r","\r","// Get the values from the pre-request script\r","var schema = pm.environment.get(\"schema\");\r","var HardwareVersion = pm.environment.get(\"Hardware\")\r","\r","// Start of API tests\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","// Check if the response body contains the expected key and value\r","testResorces.betweenTwoNumbers(responseJson, 'camera', 1, 255)"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"2bd11ca8-acc2-455d-992c-caf70aaace36","exec":["pm.environment.set(\"skipTests\", false)\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);\r","\r","// // Get the IP address and port from the global variables\r","// var ipAddress = pm.environment.get(\"BASE-URL\");\r","// var port = pm.environment.get(\"BASE-PORT\");\r","\r","// // Make the API request\r","// pm.sendRequest(\"http://\" + ipAddress + \":\" + port + \"/version\", function (err, response) {\r","//     if (err) {\r","//         console.log(err);\r","//     } else {\r","//         // Save the text in the response body into a variable\r","//         var Version = response.text();\r","//         // Store the desired value in an environment variable\r","//         pm.environment.set(\"Hardware\", Version);\r","//     }\r","// });\r","\r","// // Get the value from the pre-request script\r","// var HardwareVersion = pm.environment.get(\"Hardware\");\r","\r","var schema = {\r","    \"type\": \"object\",\r","    \"properties\": {\r","      \"camera\": {\r","        \"type\": \"string\"\r","      }\r","  },\r","  \"required\": [\r","      \"camera\"\r","      ]\r","      }\r","\r","// Store the desired value in an environment variable\r","pm.environment.set(\"schema\", schema);\r",""],"type":"text/javascript","packages":{}}}],"id":"a673c6b3-a722-4af0-ad50-604fb33764ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"WbMode\": \"AUTO\"\r\n}"},"url":"{{BASE-URL}}:8080/SelectCam","urlObject":{"port":"8080","path":["SelectCam"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"80b6c2a2-6650-4f2e-828c-9ceeba42c78d","name":"KBD Return","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"text"}],"url":"{{BASE-URL}}:8080/SelectCam"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 01 Jan 1970 00:08:40 GMT"},{"key":"Server","value":"Boa/0.94.13"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate, max-age=0"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Content-Security-Policy","value":"default-src 'self' localhost 'unsafe-inline' 'unsafe-eval' blob: data: ;"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubDomains; preload"},{"key":"Connection","value":"close"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"16"}],"cookie":[],"responseTime":null,"body":"{\n    \"camera\": \"4\"\n}"}],"_postman_id":"a673c6b3-a722-4af0-ad50-604fb33764ff"},{"name":"SelectCam","event":[{"listen":"test","script":{"id":"548988af-2a66-47ce-9fec-b29985fc23df","exec":["const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const responseJson = pm.response.json();\r","const header = \"application/json\"\r","\r","// Get the values from the pre-request script\r","var schema = pm.environment.get(\"schema\");\r","var HardwareVersion = pm.environment.get(\"Hardware\")\r","\r","// Start of API tests\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","// Check if the response body contains the expected key and value\r","testResorces.betweenTwoNumbers(responseJson, 'camera', 1, 255)"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"5b2b897e-c222-4157-aa16-92731ee86932","exec":["pm.environment.set(\"skipTests\", false)\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);\r","\r","// // Get the IP address and port from the global variables\r","// var ipAddress = pm.environment.get(\"BASE-URL\");\r","// var port = pm.environment.get(\"BASE-PORT\");\r","\r","// // Make the API request\r","// pm.sendRequest(\"http://\" + ipAddress + \":\" + port + \"/version\", function (err, response) {\r","//     if (err) {\r","//         console.log(err);\r","//     } else {\r","//         // Save the text in the response body into a variable\r","//         var Version = response.text();\r","//         // Store the desired value in an environment variable\r","//         pm.environment.set(\"Hardware\", Version);\r","//     }\r","// });\r","\r","// // Get the value from the pre-request script\r","// var HardwareVersion = pm.environment.get(\"Hardware\");\r","\r","var schema = {\r","    \"type\": \"object\",\r","    \"properties\": {\r","      \"camera\": {\r","        \"type\": \"string\"\r","      }\r","  },\r","  \"required\": [\r","      \"camera\"\r","      ]\r","      }\r","\r","// Store the desired value in an environment variable\r","pm.environment.set(\"schema\", schema);\r",""],"type":"text/javascript","packages":{}}}],"id":"5aac0b49-fd0d-46f5-be91-569eb156c9aa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"text"}],"url":"{{BASE-URL}}:8080/SelectCam?camera=2","urlObject":{"port":"8080","path":["SelectCam"],"host":["{{BASE-URL}}"],"query":[{"description":{"content":"<p>Range 1 to 255</p>\n","type":"text/plain"},"key":"camera","value":"2"}],"variable":[]}},"response":[{"id":"5bc20b99-7e6d-4f34-9183-8343c40cde7c","name":"KBD Return","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"text"}],"url":"{{BASE-URL}}:8080/SelectCam"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 01 Jan 1970 00:08:40 GMT"},{"key":"Server","value":"Boa/0.94.13"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate, max-age=0"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Content-Security-Policy","value":"default-src 'self' localhost 'unsafe-inline' 'unsafe-eval' blob: data: ;"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubDomains; preload"},{"key":"Connection","value":"close"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"16"}],"cookie":[],"responseTime":null,"body":"{\n    \"camera\": \"4\"\n}"}],"_postman_id":"5aac0b49-fd0d-46f5-be91-569eb156c9aa"}],"id":"ee284d5b-6581-4849-9f93-84b1403b85c5","description":"<ul>\n<li><p>GET</p>\n<ul>\n<li><p>Returns the key \"camera\" with the value being the number of the currently selected position.</p>\n<ul>\n<li>e.g. {\"camera\":\"3\"}</li>\n</ul>\n</li>\n</ul>\n</li>\n<li><p>POST</p>\n<ul>\n<li><p>Allows the user to add a parameter \"?camera=3\" to the API URL which will select the new camera to be used</p>\n</li>\n<li><p>The API return will be the \"camera\" key with the values being the selected camera number</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"ee284d5b-6581-4849-9f93-84b1403b85c5"},{"name":"Camera Groups","item":[{"name":"Cam Group Selection","item":[{"name":"CamGroupSelect","event":[{"listen":"test","script":{"id":"9e1190d6-c8be-49e2-8bfb-1f8b9b0c42b0","exec":["const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const responseJson = pm.response.json();\r","const header = \"application/json\"\r","\r","// Get the values from the pre-request script\r","var schema = pm.environment.get(\"schema\");\r","var HardwareVersion = pm.environment.get(\"Hardware\")\r","\r","// Start of API tests\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","// Check if the response body contains the expected key and value\r","testResorces.betweenTwoNumbers(responseJson, 'group', 1, 6)"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"2bd11ca8-acc2-455d-992c-caf70aaace36","exec":["pm.environment.set(\"skipTests\", false)\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);\r","\r","// // Get the IP address and port from the global variables\r","// var ipAddress = pm.environment.get(\"BASE-URL\");\r","// var port = pm.environment.get(\"BASE-PORT\");\r","\r","// // Make the API request\r","// pm.sendRequest(\"http://\" + ipAddress + \":\" + port + \"/version\", function (err, response) {\r","//     if (err) {\r","//         console.log(err);\r","//     } else {\r","//         // Save the text in the response body into a variable\r","//         var Version = response.text();\r","//         // Store the desired value in an environment variable\r","//         pm.environment.set(\"Hardware\", Version);\r","//     }\r","// });\r","\r","// // Get the value from the pre-request script\r","// var HardwareVersion = pm.environment.get(\"Hardware\");\r","\r","var schema = {\r","    \"type\": \"object\",\r","    \"properties\": {\r","      \"group\": {\r","        \"type\": \"string\"\r","      }\r","  },\r","  \"required\": [\r","      \"group\"\r","      ]\r","      }\r","\r","// Store the desired value in an environment variable\r","pm.environment.set(\"schema\", schema);\r",""],"type":"text/javascript","packages":{}}}],"id":"62b2c8ca-c7bc-4763-8dec-af5384683dc5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Accept","value":"text"}],"url":"{{BASE-URL}}:8080/CamGroupSelect","urlObject":{"port":"8080","path":["CamGroupSelect"],"host":["{{BASE-URL}}"],"query":[],"variable":[]}},"response":[{"id":"fee636a6-5420-4c75-9f9e-2744aad1d195","name":"KBD Return","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"text"}],"url":"{{BASE-URL}}:8080/SelectCam"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 01 Jan 1970 00:08:40 GMT"},{"key":"Server","value":"Boa/0.94.13"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate, max-age=0"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Content-Security-Policy","value":"default-src 'self' localhost 'unsafe-inline' 'unsafe-eval' blob: data: ;"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubDomains; preload"},{"key":"Connection","value":"close"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"16"}],"cookie":[],"responseTime":null,"body":"{\n    \"camera\": \"4\"\n}"}],"_postman_id":"62b2c8ca-c7bc-4763-8dec-af5384683dc5"},{"name":"CamGroupSelect","event":[{"listen":"test","script":{"id":"548988af-2a66-47ce-9fec-b29985fc23df","exec":["const jsonSchemaVerification = pm.require('@birddog-api-yaml/json_schema_verification');\r","const jsonRestResponses = pm.require('@birddog-api-yaml/json_and_rest_responses');\r","const testResorces = pm.require('@birddog-api-yaml/test_resourses');\r","const response = pm.response;\r","const responseJson = pm.response.json();\r","const header = \"application/json\"\r","\r","// Get the values from the pre-request script\r","var schema = pm.environment.get(\"schema\");\r","var HardwareVersion = pm.environment.get(\"Hardware\")\r","\r","// Start of API tests\r","jsonSchemaVerification.validateJsonSchema(response, schema)\r","jsonRestResponses.validateStatusCode(response, 200)\r","jsonRestResponses.validateHeader(response, header)\r","\r","// Check if the response body contains the expected key and value\r","testResorces.betweenTwoNumbers(responseJson, 'group', 1, 6)"],"type":"text/javascript","packages":{"@birddog-api-yaml/json_schema_verification":{"id":"018f4b51-fe02-717a-aad7-fa5d499e1be3"},"@birddog-api-yaml/json_and_rest_responses":{"id":"018f50ab-682c-7576-93a4-08de00995c33"},"@birddog-api-yaml/test_resourses":{"id":"018f559e-b658-7ca2-9c80-8e0430d578e6"}}}},{"listen":"prerequest","script":{"id":"5b2b897e-c222-4157-aa16-92731ee86932","exec":["pm.environment.set(\"skipTests\", false)\r","//Clear the schema environment variable\r","var schema = {}\r","pm.environment.set(\"schema\", schema);\r","\r","// // Get the IP address and port from the global variables\r","// var ipAddress = pm.environment.get(\"BASE-URL\");\r","// var port = pm.environment.get(\"BASE-PORT\");\r","\r","// // Make the API request\r","// pm.sendRequest(\"http://\" + ipAddress + \":\" + port + \"/version\", function (err, response) {\r","//     if (err) {\r","//         console.log(err);\r","//     } else {\r","//         // Save the text in the response body into a variable\r","//         var Version = response.text();\r","//         // Store the desired value in an environment variable\r","//         pm.environment.set(\"Hardware\", Version);\r","//     }\r","// });\r","\r","// // Get the value from the pre-request script\r","// var HardwareVersion = pm.environment.get(\"Hardware\");\r","\r","var schema = {\r","    \"type\": \"object\",\r","    \"properties\": {\r","      \"group\": {\r","        \"type\": \"string\"\r","      }\r","  },\r","  \"required\": [\r","      \"group\"\r","      ]\r","      }\r","\r","// Store the desired value in an environment variable\r","pm.environment.set(\"schema\", schema);\r",""],"type":"text/javascript","packages":{}}}],"id":"34cd55db-d533-4dfd-8b18-d3f950272436","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Accept","value":"text"}],"url":"{{BASE-URL}}:8080/CamGroupSelect?group=2","urlObject":{"port":"8080","path":["CamGroupSelect"],"host":["{{BASE-URL}}"],"query":[{"description":{"content":"<p>Range 1 to 255</p>\n","type":"text/plain"},"key":"group","value":"2"}],"variable":[]}},"response":[{"id":"ee63e2f0-6b03-4d9a-92bb-ba2600c0c837","name":"KBD Return","originalRequest":{"method":"GET","header":[{"key":"Accept","value":"text"}],"url":"{{BASE-URL}}:8080/SelectCam"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 01 Jan 1970 00:08:40 GMT"},{"key":"Server","value":"Boa/0.94.13"},{"key":"Cache-Control","value":"no-store, no-cache, must-revalidate, max-age=0"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Content-Security-Policy","value":"default-src 'self' localhost 'unsafe-inline' 'unsafe-eval' blob: data: ;"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Strict-Transport-Security","value":"max-age=31536000; includeSubDomains; preload"},{"key":"Connection","value":"close"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"16"}],"cookie":[],"responseTime":null,"body":"{\n    \"camera\": \"4\"\n}"}],"_postman_id":"34cd55db-d533-4dfd-8b18-d3f950272436"}],"id":"150c74fc-938a-4fb4-9310-9be2fca351e8","description":"<ul>\n<li><p>GET</p>\n<ul>\n<li><p>Returns the key \"group\" with the value being the number of the currently selected group.</p>\n<ul>\n<li>e.g. {\"group\":\"3\"}</li>\n</ul>\n</li>\n</ul>\n</li>\n<li><p>POST</p>\n<ul>\n<li><p>Allows the user to add a parameter \"?group=3\" to the API URL which will select the new cam group to be used</p>\n</li>\n<li><p>The API return will be the \"group\" key with the values being the selected cam group number</p>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"150c74fc-938a-4fb4-9310-9be2fca351e8"}],"id":"557024bd-e507-4fbc-99bd-8318f0c265be","description":"<p>This folder contains GET and POST requests that pertain to the camera groups settings of the device.</p>\n","_postman_id":"557024bd-e507-4fbc-99bd-8318f0c265be"}]}