{"info":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","description":"<html><head></head><body><h2 id=\"overview\">Overview</h2>\n<p>Suprema BioStar 2 API is a JSON-based API. All requests are made to endpoints beginning with <a href=\"https://server_ip%7Cdomain_name:port/api\">https://server_ip|domain_name[:port]/api</a></p>\n<p>The API can be used to perform almost any operation. Following are a few examples of what can be done with Suprema BioStar 2 API:</p>\n<ul>\n<li>Manage User data</li>\n<li>Manage Access Group data</li>\n<li>Manage Doors data</li>\n<li>Assign an Access Group to one or multiple User</li>\n<li>Assign a User with one or multiple Access Group</li>\n<li>Manage Devices</li>\n<li>And many more...</li>\n</ul>\n<p>All requests must be secure (https).</p>\n<h2 id=\"general-information\">General Information</h2>\n<p>To call the API, BioStar 2 is mainly using HTTP Methods <code>GET</code>, <code>POST</code>, <code>PUT</code>, and <code>DELETE</code>.</p>\n<ul>\n<li><code>GET</code> is used to retrieve data from the server at the specified resource. For example, if you want to retrieve the User data with /users endpoint, then by making a <code>GET</code> request to the endpoint should result with the list of all available users.</li>\n<li><code>POST</code> request is used to send data to the server to create or update a resource. The data sent to the server is stored on the body of the HTTP request.</li>\n<li><code>PUT</code> is similar to <code>POST</code> in that it creates or updates a resource. The difference between them is that when calling the same <code>PUT</code> requests multiple times it will have the same result. While calling a <code>POST</code> request repeatedly will create the same resource multiple times.</li>\n<li><code>DELETE</code> is used to delete resources at the specified endpoint.</li>\n</ul>\n<p>There are four parameter location that’s being used on Suprema BioStar 2 API:</p>\n<ul>\n<li>PATH parameter is located on the URL, usually on the end of an endpoint. For example in /items/{ItemID}, the PATH parameter is ItemID.</li>\n<li>BODY. An array of string values will be located on the BODY of the HTTP request. The request body needs to be in JSON format.</li>\n<li>QUERY. Similar to the PATH parameter, QUERY parameter is also located on the URL, the difference is QUERY parameter will be located after a question mark. Example: /items?id=###, the QUERY parameter is id.</li>\n<li>HEADER. Custom headers that are expected as part of the request.</li>\n</ul>\n<p>Path templating refers to the usage of template expressions, delimited by curly braces ({}), to mark a section of a URL path as replaceable using path parameters. Example: <a href=\"https://127.0.0.1:4433/api/some_api/%7Bid\">https://127.0.0.1:4433/api/some_api/{id</a>}<br>Above example shows that the required value will be placed on {id}</p>\n<p>For <code>AUTHORIZATION</code> details please check <code>POST Login</code> documentation.</p>\n<p><a href=\"https://app.getpostman.com/run-collection/18574376-06778bf6-281e-4346-ab60-7fc0a510c8fd?action=collection%2Ffork&amp;source=rip_markdown&amp;collection-url=entityId%3D18574376-06778bf6-281e-4346-ab60-7fc0a510c8fd%26entityType%3Dcollection%26workspaceId%3D305e8ed5-b55c-41fa-94be-eb34723fcc5f\"><img src=\"https://run.pstmn.io/button.svg\"></a></p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"18574376","collectionId":"7dba1759-9dd3-4185-8d65-8e3c91373f22","publishedId":"UVsLQ69e","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"publishDate":"2022-08-18T06:40:11.000Z"},"item":[{"name":"Revision Notes","item":[],"id":"bc0b9d95-ee10-496c-8c00-2a164daa924d","description":"<h4 id=\"v2912-revisions\"><strong>v2.9.12 Revisions</strong></h4>\n<p><strong>2026-03-11</strong></p>\n<ul>\n<li>Added <a href=\"https://bs2api.biostar2.com/#163f7b49-a85b-42c8-80e1-b28b26e05841\">Delete All Event Logs in Device</a></li>\n</ul>\n<hr />\n<p><strong>2025-09-09</strong></p>\n<ul>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#ec1464f4-9c2f-47d5-9817-0ddfa23a1c4b\">Fetch Event Image</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#e340ffa3-875c-4895-8fb8-b88392410bc3\">Clear APB (All and Specific Users)</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#af8d17a7-2b03-4c85-a86c-5115dd9090ad\">Create QR/Barcode</a></p>\n</li>\n</ul>\n<hr />\n<h4 id=\"v299-revisons\"><strong>v2.9.9 Revisons</strong></h4>\n<p>These APIs have been added/revised, with changes effective from BioStar 2 v2.9.9. See the Changes section on each API for details.</p>\n<p><strong>2025-09-12</strong></p>\n<p>⚠️ <strong>API URL Trailing Slash No Longer Supported</strong> ⚠️</p>\n<p>As of version <strong>2.9.9</strong>, <strong>API endpoints will no longer accept trailing slashes (<strong><strong><code>/</code></strong></strong>)</strong> at the end of URLs.</p>\n<p>🚫 <strong>Invalid</strong>:</p>\n<p><code>GET {ip}/api/endpoint/</code></p>\n<p><code>POST {ip}/api/endpoint/?param=123</code></p>\n<p>✅ <strong>Valid:</strong></p>\n<p><code>GET {ip}/api/endpoint</code></p>\n<p><code>POST {ip}/api/endpoint?param=123</code></p>\n<p>This update affects all endpoint calls with a trailing slash at the end of the path. Please review your integrations and remove any trailing slashes to ensure continued functionality.</p>\n<blockquote>\n<p>This change improves consistency and aligns with stricter URL parsing behavior introduced in recent platform updates. </p>\n</blockquote>\n<p><strong>Affected endpoints in this collection:</strong></p>\n<p><a href=\"https://bs2api.biostar2.com/#18f288c4-0a66-4014-8ce7-03f234c222dd\">List All Access Group v2</a> <code>POST /api/v2/access_groups/search/</code></p>\n<p><a href=\"https://bs2api.biostar2.com/#22453195-0290-48e8-92fa-56038f30056e\">Check Card Availibility</a> <code>GET /api/v2/cards/registered?card_id=123</code></p>\n<p><strong>2025-06-10</strong></p>\n<ul>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#ff25ec8a-3291-4d24-90de-14651b9c5294\">User: Update</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#f8b59a1c-9103-4161-9ca1-246be74cb130\">View a User's Details</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#51c03f3c-7ac0-48e7-a023-b3d3a64bad8c\">View AD Server Setting</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#2277f367-7b43-43d1-bdc7-6443499e5030\">Check Active Directory Connection</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#5e172fd4-9bff-4ede-a14e-fb171fc4cdb6\">Synchronize</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#8c876213-aaf5-4256-bb6a-727f30227ba5\">View AD User Mapping List</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#3ef86fe9-8fe9-4fe2-b2e4-c2bf7a66035a\">View AD Column List</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#8a270792-6751-40f6-a0ab-a559d0ef5fb0\">View AD User Group Filter List</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#9f321def-667f-47e5-9b68-e51835201dc2\">Check EntraID SSO Login Setting</a></p>\n</li>\n</ul>\n<hr />\n<h4 id=\"v298-revisons\"><strong>v2.9.8 Revisons</strong></h4>\n<p>These APIs have been added/revised, with changes effective from BioStar 2 v2.9.8. See the Changes section on each API for details.</p>\n<p><strong>2024-12-09</strong></p>\n<ul>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#e200e13f-ec32-46cf-a734-e3dcc36d017c\">Create/Update User Private Message</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#90d7c485-260f-4e8b-87dc-7132b483a971\">Delete User Private Message</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#4671bb89-3051-4862-8273-c52bd5dd40bb\">Fetch User Private Message</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#1e1f7686-fcf6-4641-918e-5d08dafb188f\">Create Custom Field(s)</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#8d2d685c-8247-4625-88e2-4e2b583bba00\">Update Custom Field(s)</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#791e3b79-cbf3-4a7e-9c0d-65b72820229b\">Create New User with File Upload</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#18dad3f6-6d63-408e-9717-5d655f53d810\">User: Fill Custom Field</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#712e306c-7b97-481f-b1d5-bbe470103376\">Download File from File Upload Custom Field</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#90801371-c02f-41b7-9b1d-0e2a8ae18fb4\">Advanced Search</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#2e6b5b22-d28a-4873-af5d-06a9cfb9311c\">Export User Data as CSV (File Upload Example)</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#8cda0518-0211-4fe9-8054-62255181b033\">Batch Edit with Advanced Search</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#8c455d14-9445-4930-ac33-aca9fd8a6cb6\">Send User Data to Device</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#f0944e10-2418-4e94-8ca0-f99f32d9f12b\">Delete User(s) From Device (Advanced Search)</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#5709adb8-cc2a-4c60-b1f0-c4387fcc0e8c\">Delete User(s) with Advanced Search</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#7d79606e-3e54-4edd-9028-9c7b53006192\">Export User(s) as SVG with Advanced Search</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#620fcc32-869e-4237-bc74-1ae164cf10e5\">Export User(s) as PDF with Advanced Search</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#c08594f5-85e3-4fbf-9d41-3ba38bfb924b\">Data File Export</a></p>\n</li>\n<li><p>Updated <a href=\"https://bs2api.biostar2.com/#25df79c2-5a81-4bf5-b637-356107ae24d9\">Send Visual Face by Email</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#eb1b5929-5725-4a12-b591-4c96bc31ef39\">Count Deleted CSN Mobile</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#29bdcaee-1610-4564-804e-17ab4899ee26\">Delete CSN Mobile from Database</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#5a08d497-bf1e-4372-b69f-ef96c14e3143\">View Deleted CSN Mobile</a></p>\n</li>\n</ul>\n<p><strong>2024-11-28</strong></p>\n<ul>\n<li>Added <a href=\"https://bs2api.biostar2.com/#151ce9f9-f9bf-4b09-92a1-e287f3d6bcdd\">Bulk Add New User</a></li>\n</ul>\n<hr />\n<p><strong>2024-11-28</strong></p>\n<ul>\n<li>Added API example for <a href=\"https://bs2api.biostar2.com/#cad96a8f-339f-449a-9af0-79825acaf3fc\">Add Slave Device</a></li>\n</ul>\n<hr />\n<h4 id=\"v297-revisons\"><strong>v2.9.7 Revisons</strong></h4>\n<p>These APIs have been revised, with changes effective from BioStar 2 v2.9.7. See the Changes section on each API for details.</p>\n<p><strong>2024-07-23</strong></p>\n<ul>\n<li>Updated <a href=\"https://bs2api.biostar2.com/#c52a526c-ae24-4306-83da-c9a39067c148\">Update an AG</a></li>\n</ul>\n<hr />\n<p><strong>2024-06-05</strong></p>\n<ul>\n<li><p>Added square bracket on /api/users body</p>\n</li>\n<li><p>Added note on operators description for /api/events/search</p>\n</li>\n<li><p>Added note on GET /api/users</p>\n</li>\n</ul>\n<hr />\n<p><strong>2024-05-20</strong></p>\n<ul>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#bcaba0b5-71d8-48b0-ae2c-437fc0ffde03\">Export User Data from a Device to BioStar 2</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#560295eb-aa7b-4f82-9c87-bf47118c9aaa\">View User Statistics in a Device</a></p>\n</li>\n</ul>\n<hr />\n<h4 id=\"v296-revisons\"><strong>v2.9.6 Revisons</strong></h4>\n<p>These APIs have been revised, with changes effective from BioStar 2 v2.9.6. See the Changes section on each API for details.</p>\n<p><strong>2024-09-27</strong></p>\n<ul>\n<li>Updated <a href=\"https://bs2api.biostar2.com/#5226b114-47df-41cf-96de-65dfc6e29679\">User Credential: Visual Face</a></li>\n</ul>\n<p><strong>2024-05-02</strong></p>\n<ul>\n<li>Added <a href=\"https://bs2api.biostar2.com/#aef3856a-2591-4e76-bb66-1560cc5d0ac7\">User: Bulk Update</a></li>\n</ul>\n<hr />\n<p><strong>2024-03-20</strong></p>\n<ul>\n<li>Added <a href=\"https://bs2api.biostar2.com/#5f1272f9-946d-4757-85b4-40ac94730d8d\">Update Device Homescreen</a></li>\n</ul>\n<hr />\n<p><strong>2024-03-19</strong></p>\n<ul>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#95e1fb58-2485-4c49-8342-9af6485e223c\">View Firmwares Information</a></p>\n</li>\n<li><p>View Event Types: Add description for Query Parameter <strong>is_break_glass</strong></p>\n</li>\n</ul>\n<hr />\n<p><strong>2024-03-18</strong></p>\n<ul>\n<li><p>Added Audit Category</p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#738fd6b1-509e-4d5c-b571-a2dce74aa574\">Audit Search</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#459de01e-eb5d-4609-a3eb-9efb17d2d722\">Audit Search User</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#0bcc8e79-9c5d-431e-aaeb-79cb8ffa6e65\">Audit Search Operator Level</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#41042fcb-fb3f-42a6-87e6-d0ac62e91ddc\">Audit Search IP List</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#07a9550a-9a75-4e89-99d7-630f3495a7a0\">Audit Search Target List</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#8f8da8ed-5f59-4adf-8b6a-6e994b3de8c7\">Audit CSV Export</a></p>\n</li>\n</ul>\n<hr />\n<p><strong>2024-03-14</strong></p>\n<ul>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#90801371-c02f-41b7-9b1d-0e2a8ae18fb4\">Advanced Search</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#704b0b2b-e23b-4f86-acc5-9336efb8ed20\">Clear Timed APB</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#f1ed5183-0bd9-404e-b2a3-ce32994d19f3\">Create Multiple Trigger Actions</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#33ec7969-90b9-4012-8127-1460b270d450\">Update Multiple Trigger Actions</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#8d97b73e-c4bf-4029-b7e6-e2e149cb7186\">Delete Multiple Trigger Actions</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#2be0ada3-68b3-4959-a50b-294389596240\">View Multiple Trigger Actions</a></p>\n</li>\n<li><p>Added Quick Action Category</p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#a4e0500e-62fc-4b94-bf01-b86e43a7f986\">Trigger Quick Action by ID</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#57857661-67e4-4a7f-bcaf-02cda150bc7a\">View Trigger Action with Quick Action Enabled</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#f340e744-c347-4a2e-8d15-b243dbc8dd6a\">View All Quick Action</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#13036ca5-de04-46f7-8692-338eeab700ca\">View All Quick Action by Permission ID</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#f9ad1f0f-303a-48a6-8660-57efb7b239c6\">View Quick Action by ID</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#c5b4791a-721c-4aa1-b27b-986dd8f869bd\">Save/Update/Delete Quick Action</a></p>\n</li>\n</ul>\n<hr />\n<p><strong>2024-01-04</strong></p>\n<ul>\n<li>Added <a href=\"https://bs2api.biostar2.com/#2561af5d-1743-45e3-aacf-7f33d26d8987\">Create Mobile Access Card in Airfob Portal</a></li>\n</ul>\n<hr />\n<p><strong>2024-01-02</strong></p>\n<ul>\n<li><p>Added Mobile Access Category</p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#9391ffd4-18f0-409d-90bf-556d7bb655d4\">Delete Mobile Access Card in Airfob Portal: Card ID</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#414010d6-5657-4874-86e1-e6c9c59947ed\">Delete Mobile Access Card in Airfob Portal: User ID</a></p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#3b98c2a7-f7c9-41b4-a576-ce573df43343\">Delete Mobile Access Card in Airfob Portal: ALL on User ID</a></p>\n</li>\n</ul>\n<hr />\n<p><strong>2023-08-31</strong></p>\n<ul>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#ae65a7f8-7f7c-4fa6-97f3-9659180a7025\">Update Firmware</a></p>\n</li>\n<li><p>Added Run in Postman button on the bottom of General Information section</p>\n</li>\n</ul>\n<hr />\n<p><strong>2023-08-04</strong></p>\n<ul>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#4e56695a-9d81-4e1b-b863-0bdb59add36a\">List All Added Device(s)</a> status response details</p>\n</li>\n<li><p>Added <a href=\"https://bs2api.biostar2.com/#59060225-2ca5-46b6-b11f-08a41e4786c2\">List All Added Device(s) with Criteria</a> status response details</p>\n</li>\n</ul>\n<hr />\n<p><strong>2023-08-03</strong></p>\n<ul>\n<li>Added <a href=\"https://bs2api.biostar2.com/#370566f9-2be5-411c-a4f1-7321e1f05b52\">Backup</a> feature APIs</li>\n</ul>\n<hr />\n<p><strong>2023-06-01</strong></p>\n<ul>\n<li>Added <a href=\"https://bs2api.biostar2.com/#fb4e3da5-6353-48cf-b63d-1ef8a72ca144\">View a Card Detail</a></li>\n</ul>\n","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"87b6e8b8-8166-4e37-b22e-d87062c3a422","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"70243f93-976e-4466-94cf-e0cc876df413","type":"text/javascript","exec":[""]}}],"_postman_id":"bc0b9d95-ee10-496c-8c00-2a164daa924d"},{"name":"Authorization","item":[{"name":"Login","event":[{"listen":"test","script":{"id":"34b8a49c-73e2-49ae-b347-a879c8fce2d5","exec":["//put response's bs-session-id value to collection variable bsid\r","pm.test(\"Status code is 200\", function () {\r","    pm.response.to.have.status(200);\r","});\r","\r","if(pm.response.to.have.status(200)) {\r","    let params = pm.response.headers.get('bs-session-id');\r","    pm.collectionVariables.set(\"bsid\", params);\r","}"],"type":"text/javascript","packages":{}}},{"listen":"prerequest","script":{"packages":{},"type":"text/javascript"}}],"id":"0b54ae8b-6744-44dd-8556-8001ae3139ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"login_id\": \"admin\",\r\n        \"password\": \"your-password\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/login","description":"<p>In order to use Suprema BioStar 2 API, you will need a Session ID which will be available after you’re logged in.</p>\n<p>To log in, make a form encoded server side POST request as shown on example below.</p>\n<p><code>POST /api/login</code></p>\n<p><code>Host: server_ip|domain_name[:port]</code></p>\n<p><code>{“User”: {“login_id”: “user_login_id_here”, “password”: “password_here”}}</code></p>\n<p>The parameters are:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>login_id</td>\n<td>String</td>\n<td>Y</td>\n<td>Your login ID</td>\n</tr>\n<tr>\n<td>password</td>\n<td>String</td>\n<td>Y</td>\n<td>Your password</td>\n</tr>\n</tbody>\n</table>\n</div><p>If successful, you will receive back the following response:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">Status: 200 OK\nbs-session-id: c52127fea7f645149083d04d89ad68e5\nContent-Type: application/json;charset=UTF-8\n{\n  \"User\": {\n    \"user_id\": \"1\",\n    \"name\": \"Administrator\",\n    \"gender\": \"1\",\n    \"email\": \"admin111@gmail.com\",\n    \"birthday\": \"1977-10-08T04:00:00.00Z\",\n    \"photo_exists\": \"false\",\n    \"pin_exists\": \"false\",\n    \"login_id\": \"admin\",\n    \"password_exists\": \"true\",\n    \"updated_count\": \"15\",\n    \"last_modified\": \"946\",\n    \"idx_last_modified\": \"263\",\n    \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\n    \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\n    \"security_level\": \"0\",\n    \"display_duration\": \"20\",\n    \"display_count\": \"3\",\n    \"permission\": {\n      \"id\": \"1\",\n      \"name\": \"Administrator\",\n      \"description\": \"this is a permission for Administrator\",\n      \"filter\": {\n        \"UserGroup\": [\n          \"1\"\n        ],\n        \"DeviceGroup\": [\n          \"1\"\n        ],\n        \"DoorGroup\": [\n          \"1\"\n        ],\n        \"ElevatorGroup\": [\n          \"1\"\n        ],\n        \"ZoneType\": [\n          \"-1\"\n        ],\n        \"AccessGroup\": [\n          \"0\"\n        ],\n        \"GraphicMapGroup\": [\n          \"1\"\n        ]\n      },\n      \"module\": {\n        \"Dashboard\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"User\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"Device\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"Door\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"Elevator\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"Zone\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"AccessControl\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"Monitoring\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"TA\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"Setting\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"Video\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        },\n        \"Visitor\": {\n          \"read\": \"true\",\n          \"write\": \"true\"\n        }\n      },\n      \"device\": {\n        \"id\": \"939257394\"\n      },\n      \"user\": {\n        \"id\": \"33\"\n      }\n    },\n    \"inherited\": \"false\",\n    \"user_group_id\": {\n      \"id\": \"1\",\n      \"name\": \"All Users\"\n    },\n    \"disabled\": \"false\",\n    \"expired\": \"false\",\n    \"department\": \"department 12\",\n    \"user_title\": \"title\",\n    \"idx_user_id\": \"1001\",\n    \"idx_user_id_num\": \"1001\",\n    \"idx_name\": \"2001\",\n    \"idx_phone\": \"1001\",\n    \"idx_email\": \"5001\",\n    \"fingerprint_template_count\": \"0\",\n    \"face_count\": \"0\",\n    \"card_count\": \"0\",\n    \"access_groups\": [\n      {\n        \"id\": \"1\",\n        \"name\": \"Meeting Room 1 AG\"\n      },\n      {\n        \"id\": \"2\",\n        \"name\": \"Meeting Room 2 AG\"\n      },\n      {\n        \"id\": \"22\",\n        \"name\": \"Building Access\"\n      }\n    ],\n    \"user_custom_fields\": [\n      {\n        \"user_id\": {\n          \"user_id\": \"1\",\n          \"name\": \"Administrator\"\n        },\n        \"custom_field\": {\n          \"id\": \"1\",\n          \"name\": \"Test\",\n          \"type\": \"0\",\n          \"order\": \"1\"\n        }\n      },\n      {\n        \"user_id\": {\n          \"user_id\": \"1\",\n          \"name\": \"Administrator\"\n        },\n        \"custom_field\": {\n          \"id\": \"2\",\n          \"name\": \"33\",\n          \"type\": \"0\",\n          \"order\": \"2\"\n        }\n      }\n    ],\n    \"need_to_update_pw\": \"false\"\n  },\n  \"Response\": {\n    \"code\": \"0\",\n    \"link\": \"https://support.supremainc.com/en/support/home\",\n    \"message\": \"Success\"\n  }\n}\n\n</code></pre>\n<p>There will be a key called bs-session-id, which is a consecutive strings of hex digits located on the header of the response:<br /><code>bs-session-id: 643f64efb7114485a2fd89de17ca13fb</code></p>\n<p>This value will be used as authorization of the APIs that will be called. To apply this value, put it on the header of the API that will be called with key name <code>bs-session-id</code>.</p>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>Number / Alphanumeric</td>\n<td>Unique identifier for the user.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>User's full name.</td>\n</tr>\n<tr>\n<td>gender</td>\n<td>Character</td>\n<td>(Deprecated) Previously indicated gender: N = Not set, M = Male, W = Female. No longer used in the user module.</td>\n</tr>\n<tr>\n<td>birthday</td>\n<td>ISO Date</td>\n<td>User’s date of birth in ISO format.</td>\n</tr>\n<tr>\n<td>photo</td>\n<td>Base64 String</td>\n<td>User’s profile picture in Base64 format.</td>\n</tr>\n<tr>\n<td>photo_exists</td>\n<td>Boolean</td>\n<td>Indicates whether the user has a profile picture (<code>true</code> = has a photo, <code>false</code> = no photo).</td>\n</tr>\n<tr>\n<td>pin</td>\n<td>Base64 String</td>\n<td>User’s encrypted PIN code.</td>\n</tr>\n<tr>\n<td>pin_exists</td>\n<td>Boolean</td>\n<td>Indicates whether the user has set a PIN (<code>true</code> = PIN set, <code>false</code> = no PIN).</td>\n</tr>\n<tr>\n<td>login_id</td>\n<td>String</td>\n<td>User’s login identifier.</td>\n</tr>\n<tr>\n<td>password_exists</td>\n<td>Boolean</td>\n<td>Indicates whether the user has set a password (<code>true</code> = password set, <code>false</code> = no password).</td>\n</tr>\n<tr>\n<td>updated_count</td>\n<td>Number</td>\n<td>Number of times the user’s data has been updated.</td>\n</tr>\n<tr>\n<td>last_modified</td>\n<td>Number</td>\n<td>Timestamp of the last data modification.</td>\n</tr>\n<tr>\n<td>idx_last_modified</td>\n<td>Number</td>\n<td>Internal tracking number for the last modification when personal data is encrypted.</td>\n</tr>\n<tr>\n<td>start_datetime</td>\n<td>ISO Date</td>\n<td>Date and time when the user’s access period started.</td>\n</tr>\n<tr>\n<td>expiry_datetime</td>\n<td>ISO Date</td>\n<td>Date and time when the user’s access will expire.</td>\n</tr>\n<tr>\n<td>security_level</td>\n<td>Number</td>\n<td>User’s security clearance level.</td>\n</tr>\n<tr>\n<td>display_duration</td>\n<td>Boolean</td>\n<td>Indicates whether the screen display period is enabled.</td>\n</tr>\n<tr>\n<td>display_count</td>\n<td>Boolean</td>\n<td>Indicates whether screen display count is enabled.</td>\n</tr>\n<tr>\n<td>permission</td>\n<td>Object</td>\n<td>Defines the user’s operator-level permissions.</td>\n</tr>\n<tr>\n<td>inherited</td>\n<td>Boolean</td>\n<td>Indicates whether the user inherits properties from a user group (<code>true</code> = inherits, <code>false</code> = does not inherit).</td>\n</tr>\n<tr>\n<td>user_group_id</td>\n<td>Object</td>\n<td>The user group to which the user belongs.</td>\n</tr>\n<tr>\n<td>disabled</td>\n<td>Boolean</td>\n<td>Indicates whether the user’s account is disabled (<code>true</code> = disabled, <code>false</code> = active).</td>\n</tr>\n<tr>\n<td>expired</td>\n<td>Boolean</td>\n<td>Indicates whether the user’s account has expired (<code>true</code> = expired, <code>false</code> = active).</td>\n</tr>\n<tr>\n<td>idx_user_id</td>\n<td>Number</td>\n<td>Internal tracking number for the user ID in decrypted memory.</td>\n</tr>\n<tr>\n<td>idx_user_id_num</td>\n<td>Number</td>\n<td>Internal tracking number for user ID when alphanumeric mode is activated in decrypted memory.</td>\n</tr>\n<tr>\n<td>idx_name</td>\n<td>Number</td>\n<td>Internal tracking number for the user’s name in decrypted memory.</td>\n</tr>\n<tr>\n<td>idx_phone</td>\n<td>Number</td>\n<td>Internal tracking number for the user’s phone number in decrypted memory.</td>\n</tr>\n<tr>\n<td>idx_email</td>\n<td>Number</td>\n<td>Internal tracking number for the user’s email address in decrypted memory.</td>\n</tr>\n<tr>\n<td>fingerprint_login</td>\n<td>Boolean</td>\n<td>Indicates whether the user can log in using a fingerprint.</td>\n</tr>\n<tr>\n<td>fingerprint_template_count</td>\n<td>Number</td>\n<td>Number of registered fingerprints for the user.</td>\n</tr>\n<tr>\n<td>face_count</td>\n<td>Number</td>\n<td>Number of registered facial recognition templates for the user.</td>\n</tr>\n<tr>\n<td>visual_face_count</td>\n<td>Number</td>\n<td>Number of registered visual facial recognition templates.</td>\n</tr>\n<tr>\n<td>card_count</td>\n<td>Number</td>\n<td>Number of assigned access cards for the user.</td>\n</tr>\n<tr>\n<td>qr_count</td>\n<td>Number</td>\n<td>Number of assigned QR code credentials.</td>\n</tr>\n<tr>\n<td>mobile_count</td>\n<td>Number</td>\n<td>Number of assigned mobile access cards.</td>\n</tr>\n<tr>\n<td>need_to_update_pw</td>\n<td>Boolean</td>\n<td>Indicates whether the user is required to update their password (true = password update required).</td>\n</tr>\n<tr>\n<td>version.dbBiostarVersion</td>\n<td>String</td>\n<td>Installed version of the BioStar 2 database.</td>\n</tr>\n<tr>\n<td>version.biostarVersion</td>\n<td>String</td>\n<td>Installed build number of the CGI server.</td>\n</tr>\n<tr>\n<td>isMatchVersion</td>\n<td>Boolean</td>\n<td>Indicates whether <code>dbBiostarVersion</code> and <code>biostarVersion</code> have the same prefix (<code>true</code> = versions match). Example: <code>2.9.8.30</code> and <code>2.9.8.42</code> would return <code>true</code>.</td>\n</tr>\n<tr>\n<td>notiPopupOpen</td>\n<td>Boolean</td>\n<td>The inverse of <code>isMatchVersion</code>. (<code>true</code> = versions do not match).</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"path":["api","login"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"fb0ee427-4411-498b-8bc6-4e90136346e3","name":"Login Success","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"login_id\": \"admin\",\r\n        \"password\": \"your-password\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"bs-session-id","value":"435564a0e0d2443fa2d8f86d5bb40622"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"24631"},{"key":"Date","value":"Tue, 21 Jan 2025 01:53:26 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"User\": {\n        \"user_id\": \"1\",\n        \"name\": \"Administrator\",\n        \"gender\": \"1\",\n        \"birthday\": \"1977-10-08T04:00:00.00Z\",\n        \"photo\": \"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQEBAQIBAQECAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr/2wBDAQICAgICAgUDAwUKBwYHCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgr/wAARCACgAJYDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDQNowXyyMg9u38s0+NEThwAfvcnqa9A+KngPwD4M8Rf2R4M+J+neKbM2yP/aNjYz2wWQj5oykyqeCDgjIIIPBJUcm9tp4PLgHOcAj5q/OqWOTlb+v+CfYzwztcpRupbcgOf9odquwHgqGA3dDzUeLJRkXCrjg4+vpUbXVrG2VucYyOWHHr26V6FOs2ckqKNS3uQRuVcZHT+X+fer1pdIT5hzktg8df8/hWC2q2iPzKCB6d/wDPNSwa9boPlcnngZrqjJM55U9DqI7iMYcLkDknbmpobhcADjBOMnJHt+tc1Brrn5vMBU9B6e5qZNfG4+ZMDjv3I/KteUwcGdStx12rkY4C9jUsF+uAmMZzn0+tcyniSGP5mfg/dGeBz2zUyeJLSdA4I2+mRz3696LPoQ4s6cXasmyQHJPUHipIrzZ1kVSPRug/z2rmW1y1mBi8xWK/xY46/jT7aeW4Zdinp1Iq02jNwZ1cN5Gy5jnHOOo+lWxqCMoUT47uT1/+tXN2dleXMmxImAH8/wD6/wDhW7p3h13XZcY3cZGK2hJszdkW7cCYDMwxnOM/eHpVyGBCxIlIPfac9f8AP86S08Lyyn5ZwAOmfyrYsfCaj5nuHJK/Lge3+fzrVXZFynZ2MbAR/N6qB/n2/wD1Vk/GSzSx8IWmJGXzb4DHqAjc/Tn9RXrXjfwZ8KPBEFnd+E/iimuQ+Szahcz6S9hHbMMYGZSd2fmOcAAL1OcDyH9pjxj4PtfBFjqtv4hhuLS38y6uZLZvM2RBcbtqAkgfNzjsfQ1hjHH6nJrsbYXXExR5irBG5BzjuuaK5/wd8Q/DnjzTn1Xw3PLLDHM8XmTW7RklWKnhsHqCPw4or5Rxaep9ImraHxp4x8L/ABj/AGQvj9J+zP8AEL4gT61F/ZaajoWvJcTJLc27M+BMHkbDKUdOCfujnnj0PwF448e65rVl4d0G61DU7y9nS2sbCBWnluZWYKkaIMl2YkAKASSQBXBft1/s+fHz4E/H+6/aC+NvjSDxJZ+JWFlp/iS1hW3yY41CpPDGFSE7FGMAqSCc5PPC+FfiNrjXSzWlvdQSRFHhuEO3nOQVIOQQR/KvpMurKvhIyupO29up42YUpUcS0rpH2lp/jfxL4N1qTwr8QfC82mana7BcafrGnNBPGGRXXfHIoZcqysMjkEEZBFd5pvxQ0WeNWfQNNbp1tIz/ADFfFWs/G34meM/EE/ivxp4j1TWNUuSoudS1W/e4nl2qEXdJIxZsKqqMngKAOBVaf47+MdKicwxTyhD92NwenXoeD0r1qVaKgueKv1ttc8ycJuWkmfbmt/EjQjCdum6ajHp/okfT8q898V/EyOOQm1SFAOuyIL/LrXy5oH7Xvi/RvEen63ffD241eGxvYp5NM1CJzbXao4YwyiORWMbAbWCspwTgg80njX9pzUvGfiy81zTfg+/h22uZQ0WlaUZ3trYYAwhuJpZCCQWOXIyxxgYUVOom7coQjJK7ke7Xvxb1FHIS4YEnAxJx/nNaqaz8YLD4fx/FaTwVq48LzX/2KLxDJp8v2Jrjk+SJyNm/5W+XOflb0OPnCx+IOp37+WbOZGK7jG7LkD1xnIro1+I3xHbwk/gSLxHqi6DJei8k0VdRcWjXIXYJjFnZ5m35d2M44ziuSpWcWuW3/AOqMbrU9IvfjXrjA7LsA/7J6fzrndZ+KOrXsTrPrlwQwJwtwRkenBrg5ptWkB+THH94cVWlt9Wf78IPH9/oKynidDSFJ3Od1P4n/Ef9lv4k6V8bPhL4g1q5sjqEaaz4cu9duJbe+JY7UKOWJBJI4PBAwOx/XH4PeJvEfjT4ZaH4s8W+GJNE1HUdOhuL7SpVANpIyglOp6H3r8jfiFFqVp4RvNRlv0077Kn2iC+Vdxt5IyHRgB3DKK/SH/gnpfftUa78AbXxT+1h4mi1HWNXmW50yP7NDHLb2ZRdnmGLCuW+8OAQDg5PNVh5qrF2M8VBxsz6DsmXcFKkjPHHBFbOn2Qu3DCBCAOvfHr/AJ9awYWjDjO0sOR6V1nhWTGXwcbRznGa9CKbR571NAWem+HtHu/EOsl4bKxtnuLqRYmdkjRSzHaoJPGeACa8M8TftDeG/j/8Ntc0r4ZePJbfzCx0660/Q7pLmMhmVVIIaKUuxUKRKBuALBcFV+j5bBNY0i40prh4xNEyiRJHXaSOPuspPXpnnFfMUf7CfxD8C+OdZ8TT/EfwNPaawfLsl1jQ2tJ3gD+dJulgJLuCAG+Xy2VAXBOCtSjU0sRJpHiV9+x58bviz4gk0b4ufGLVr3w5oekQXN5FLrAt7ezQswD3KrI0UakAt5iqNwz8oNWfhw8lnd6z4X0vxrput6DpUqQaJPpMSCEwZkw4w7s4ZAjbnO7nGTjJof8ABTnx34++F1ovwM8DPruvaj4ltNIfVLazijtp9SeHzYEhttkpE658svGgcB3yqfMFXD/ZW8F/8K++H17oF78Ptb8O3serzC9tNfJW4lYcBmjaKMxuoGxh8wLIWBAO0eXmsHDCysu1/v2OvLmpY1L1/I9FtbPTNIt/s+m6fFbxk5CQoFX8hRQ7hznnHsMYor5Zq7Ppz1b9rzwD8J/HH7OviTw78VPBuueItBaKOXUdO8O/NdhY5FcTKvmJv8tlDlc5IXADHAr8dPhbIttrep+Dbe7mv7OwJksdSnzvkiLEKGQltjYwSu5tp4BOMn9uZtWf5kS4dCQV3xnBTI6j35z+Ffj78ZPh5Zfs6/tla78GvD/xDXxdaalEb+9vprQpdWt1IWkeOVl3B25yTx98ZC1tkUJ0G4t7lZq41aV7al23hTbtZSCB0o8D/Cnxx4q8USaJ8PtCu9Z1fU793sNN0/T5bmWVmQDYI4wWfp0HPNfUf/BNb9hG0/bG8calqnjDUXtfDPhsxfb1h4e7lcsUi3Z+RTtO4jnkY65H6zfBX4CL8JvCjeEvgv4F0bQ7KK9intTaRRB4pItxWUOYizPuwCzliw3A8Ngfc4XLK1amqr0i9j4rFZlRoVHSWskfhD4u+D/7V3wgl+wfEr4VX3huTyhJ5XiHwndWjeWSyhgJgCAWVgD0yD6VhGX4neUDCdGbHUm3cE/k9f0SeNvhZ8WPFulOmsaiLzUJo3LajdywsULEBVC+SVCLguFC4DEgqwOa8D+NP/BKr4bfGnwHqi6j8L9OtPGWoQEWvjzR75rf7HcrsZXmt4lWGYPsKMrR52udrq2GGtXLayV4NN/11FSzSi2lNM/EWw8JeILrx1P4y8SmzVpLFLcxWoONysTu5+tX7nxp8P8ATZntrvxnpcMiOVeOXUI1ZT6EFuPpXbfFP4beNfgx8SNd+EvxAs/s+raBqMlpdgK4SRlPyyxl1VmjddroxUbkdWxzXnH/AASk+GP7F/jf/gov8QvBX7Ztt4QudO1TT7iPwnF4xeJLU6srJKsTSTgRRF4hJtaR1V22xrukdVrxYUnWrOFSXK0etVrRo0VOKuixdfE34ZxBmb4h6JgfezqsX6/NVK6+Mfwstsib4jaEnAwX1SEZ/Nq+zv8AgqJ8Ff8AgmV+xlfv+zrq/wCxLoXhPxJrPgK41rwr8QrbwlY3luurQXLGDTpYpbUqUmMJjkfaxRbmHcqK5mi848T/ALP/AOyv+2D/AMEhfH37Zfwr/Yi+H/hLU9F8I6wNVlsdLmhNhqdiiO9xpznGYHjw4UlvKZjDvkaN2O6y2FTESoKTclq9Dk/tVRipcuj8z5M+If7Rngn4d+J/Cer6t4SbxTo8moR6hJbW2oLFb3qRPuWMyhHBXeFJ4wQuO9fsv8Ndci8WfD3RPFFrpcNnHqWl29yltazCVIFkjDBFdQAQAcZAA4r8cPgd8C7b4vfsNaY0d95F3DYb9PLShE8yN2c722sQMdgO4r9Lv+CU37RfxJ/ao+Bwn8b/AA9tNNh8Ow22n2ut2er28qag6RhW3QRtut3ACnaV24YYNGDpRi3TR0Y27gps+kdL0R7iNXKgnHftzVT4m/EXxB8H/D9zqmi/C3WfEtwLdXs7fS7V5jcyliPJAQHYe5d8KM8kDmu10LSlhby5yM56gZ79K66y0+WfSzZWOoG0lcENN5aszKRggbgdp564OMdK9mNC6PIlVsfLvjL9vn43eENe0PTtC/Yb1uK3u4ydYvPHfiay0C3jIiB8uCWSR/NlLNgR4DHHHJGZfhJ+0L/wUN1P4g3+seIv2a9M8NeG7W+gj1XQ9e8d2Vzc6er24y8c10Y90TOV+UhME48wgiuB/aq/4JMftPftW/F211Dxr+1ZPb+GIiv9n2i2DXVwirsMvMbRIm45GSMBQOASRX0T+zZ/wS3sfh/pmgXeqa/JHqnhC++0+HJba+k2AOiLIk+Rhg3l9ECoVbaQeSHGhVcrdO+n+RyzrtvQ4v4O+BPhd47/AG+Z/iLHqnxG1LX/AA3ZLca5PNoMb6dBPLvRYYljjAgiVBu3I0m/g7iNzG1/wUj+y/8AC/rO1sfLYJ4dt2fYMZZnlJLe/wBea+tPCmg6d4k8d2EX9iwaJ4ouNDuf+Eyg08sMqQscJO7Hmxh1cwysOiPtAywr4s/artr+X446lot38Rn8VSaPbW+n/wBpNbwR7dkYzF+4jjRtpJBIGc5BJINcmc0fZ4Dl7tHbk03LG3fRP9Dx8wynouPX0orbm0VWkwOSByAMUV8eqUlofXKpF9SfVP2sfhr4e8d6P8O7i9vr/U9alxbppunSzpGoXJZ2RSOhHyjLfMOMHNfCX7cHgjxL8Gf20dV+KHxJjjurHx1arJoWqWkLgQBAkZgcEDDhVQnvyPevqDQP2O9Q+BeiH4rWs2keOPJ8S3Gn6ZJBaW9vd6QMsVjkZ5GDeWIyvmxYJ/iDHmt79oD4CX/x3+Es3g34l+CNTa3ijS7sb6OEma0ftLEX24yCRkkBgeeOnqRwNXC1mkjz6eL+sUb1Gl5djK/4I2/t9/BL9mD4ia/4O+O9pM/hbxhDA8GqQiYf2fewFthcIwJhdXYMwDlWROApdh+u/hT4ofCfxtBFrnwO12G90uKNVmuLLUVuoXdlEilXVmByrqfvYwRwOc/hl8Rv+Caet6Z8UdGtPh18VdMufh6lta3fmeKtRtLPU9MnKETW3neaItu4EhyvCuMgkEtu/HL9pL4ef8EsPgRqviT4I+KNcuPEuoa0sWl6j4S+JaX9pFfGEOkt7FbStZyouwKUe3/eqpTKn5l+lwGIr4dqnVT5dert/kz53HYSlilzUmuZ+Wv37o/d228caY2pr4Yk8RW0Or/ZvtEFi1yonaLON+zO7bnjOK5z4jfHOP4OfD/UfG3xU1zR9F0qxj8+/vbm/bbwGIVV2ku5OwBRlmLYAJwD+Ev7Lv8AwVn/AG/f2lNDg8fSftT6kfEehEpMlx4e0i1t/skwJkKyJFsYAIAqursMFiVxXG/tu/FD9pHXvEHhbU7740p4otNSvJbSTS/EfjOfWL3TJljEssylYobeOKRNu1Fy42jdkFTSxOc4ahKUIpOS7tfpf7tx4fIsXUhGbbUXo7J/r08zvv2wPjTbftOftHeMPjhpGlfZItdvVbT7ec7T5UMMcEJkxu2syRIzYyAWOMgc/O3/AATM/Z+/Zk/aK/4KSeLfhJ+29a2uiaP8QfCV5pPh1LrxFJZXNh4iMlr9lktrkL5P2jZHOYfODQys6xFJTKkb+YeOf2o/i5pnxS8PeG/D2nWVvpsmmwPegRgNc5JdpH3s21tvUJhflGADknif2hL6fXPjjcSx27p9oS1wHPySHygfMAxgfe2nr9zrwAPnHiatKp9YaTUtWns77+h62MpwhQ9jB25dD3T/AIKm+I/jh8Dp7H/gl7+0L8R5vGWqfs/+Jb6Dwp42iuObnw9qljplxaWJgePfG0CRxspeeRYRcPApeK3iNfpfeeIPidqv/BGv4lfBy+/Z1+HHwo0PwX+zjqE+vfD/AMK/EV7vxDorXGmXF3Eb3TriylNh9uAkuQs11LchbgtIzzCSvwr+IX7QXxn/AGifHGrfHj4w+NU1rxQqaTper67rV5bHVL429mLW0cx5824K29kqyXSqxZlRp5DJMhkqz/G/xh8LvBWuab4J8caho+o+JdGl0jVRpl60ZvNOuPluLaUKRvhkRdrKRgkLxkDHdQxlXCY/SDcZ2W6uo/d0Vtb7I8OVBVIxj1Tufc3/AATw0iFf2RT4ktzFa6cJJJUjILtEQpUl5CfnOyOPoFHy8AV6N/wb2/tU+BNZ+PfxE+BKC/hXxXqbX3hsLvkgkeEHzC3ynYzJhgxbGABgEc/KHwF/aO+InwK/ZL0/wK/hJfs2pRyNbhFNxNK7MSCVQhUj2Hq7Lj1NfdX/AAbqfAe1Pirxv+1Tr3guCH90mm6BdtAAXeQl51R9+PlURhjtYHONwIIrqwtJKqku/wCB7GJqL6u77W/E/UrTfDexBJKxG5uoBBxmt6wh03TYPtEglYLwBFEXYd/uqCSa4XWfG15NvFxqSW0KtxGpxz68HPpXJeNvi8nw28OXvxAufiLpmlaRo9hNc6td6los160aqNwZBHPHgAA5XaxJIxjv9FTjGx89Jyse8+Dfi58HLvxbF8PH8f6VbeJJIPOi8M6jdLa6iYzyH+zS7ZdpH8WzHevyK/4LZ/8ABYHwZ+0xrk37FnwE8eT2Hhzw/wCIAfE/i3SNZvrW31SRPMiksnRIFNxAhyzbGdHwpXJGK5D/AIKEf8FgvgD8fvgRe6P4Q/ZntPG72mo/Zh4q8W6Da6bbwylCQ8NvDNJfM4BBH7yFSfvq4G0/ll4h1zUL7ToobTUrpRdYka1FyZBz7HJUnHTGR+leJmmNco+yoS3+0vy2t80y8PTqKXO9Leh+z/7D3/BbD4WfsU/DHw98LvF48Uat4cuLC6s9G8Q29qZorDdNGzLF5s7SSrHmYAOELFI8fKxYet/Ef9oT4K/Fj4pax4w+Cmty6h4XvPIbSL1rKSIzoIE3SFZFVgWk3k5AyWJr8MvCHxk8LeGPDV/Yavo80d3cRxRmKPZ5E8iBh5hhZNqMATggg5/MfZ37L/7dHwLg1DQ/g5e3er2uoXEcFtHfXFrEto85UAJuSRmGW+XlQM/nXg4/HYudBUkrxTvtrpp3/rue1lypyxkqs9G1byPup/FdhOMLaS4B42gE0Vz+m2Ut6Rb26sfk39cccDvRXkRnVkr2PonCnF2Phrwr/wAFx/24NMeW08N6N4Sh+0zBrhrm0uG8wkBQWaOZGOBx17960f2qf+CmX7Yd/wCGNGl8W+MIg+oWSGzi0aS4SNZSxHlgPMxwMBuuTu696+JdN1S7tZIpLdd2HAk29RzXsHwcsvFn7VXx20HwfpqG4tPDdvttgsRYLcMcljgEnbjOMdIvevqMRWhTwkm1rokeLhKEq2LSvotWfUXwb8X+Ofj34WvPAuueO7vxdfmFbTXbTW9YvUjdjGGdFO7btVCMjA4OAT0rzb4hftdv8M/gt8Sv2dPhdpXhuytbuzGj3EDafAE1cljC/wA0675kiO8knALR7uTg07/glX4r1y0+FPjnxdbGOTXbk6lLp80mdi3rxJ5bdDgBmzzxgda+X7LTRrt54i1+aFriWwZfsqsThUGSRjZJ/CpH3WI7DOCPBlia0Hbmd4vv6f16H0Cw9F3fKrNdl/Wn5n1F+wZ4++A37Pfxt+FEviP4paFHomm2d5eeJA04VLe8/drCrvyGJRTjbnBZ8/eGfPvi98Vvhp4z0/WX+JUt74o1LVfHOr6uG8P+KoreKLzPL8vcWEm+PBKouR8qY9qzvgv4XsvHPxD0v4da74j/ALLsdU1ttNa8ZIWFqjiNhIFdIlIQNnDyqDyGkI4X1zT/ANkKSPxZrXgee7h1i5s7aefS722urdrieKORInMsEdziBwyyMAvmblwyblYbc6M67muRJtt9nd2d9PQdWNBwam7Ky7qyuuv/AAT5x+JXibw9ovxM0jx14HnjnvtJ+w3NnqCLC7RSx4ZlyTg7WB4PoK5v4u6tqvjj4i2/ifRNStoJrlgkNvEmLdFGWKkJvKHJdxj5QCQAq4C/Q3ij4LQeBPEmt6Hr2lQgaQbnLuyO7+SCWyiSkDA2/dZj1+90Ph3xIvLGfwvquu6dNFBJbQNcwxxMVVWVSoUdTjD4weoHJzzUzxdek6dCcetv01PHzOnhE/aRk+aWvkeXeLPBOreD/DUXjm38UacIL+MW2p6Xp5ukuYo5nMwMw2RpL5cgTjzWy6RDBVSa0vFf7Kv9jeZe2Hx78IahHKiXFir22rW1xd28qCWGbZNYqF3xsjjLchhgkEE+7fBb4XeIvi14T/4V38LfgldeKbl5YrDXdY8u4a3VrtzHEHeN1S23ljGGkYKBFwc7mrmfhR8HPiB8LviRffsyfGlLnQdQhtTqPhqS5tlK6nbtNsb7O4YCRdwmOUZ1DRTqxXynK+rRzDEzwcp06abj5NJr1fVddTko0cO5RTbd+1tH21NQfEjTbX9nm08C6Dr32e/nMaajZyXKYDKqxsysWHyMFyOjeqiv0v8A2Mv21f8Agm/+xn+zzpPhvwZ8ftSv7m8tftWpWWq310729y+S8a2yBoYcEkfuxlsZLNxXw9qPw1stAe0htlDxRtIsglJV5EQbfmIZtx3Dnbt65BIGTsL4SsDMTD4D0vYLhgEM10W+WPcVyz9E6jPJP3mYVwQznF4abapxvp3PdqZThcTTinOX4H1v8TP+Cz3wF1Oyv7jwr48e4migd7Kwg0e7zcyAHYhZogoycckgc9RX5w/Er9qn9u74zX9/rOt/EfUwL9pAth/ad7FEsTE4iWKECILg49++TXq/irwSU8PySaV4GtEmMMaiSGzYsh3DgiZgMt949+49KfLeaXpoP2zRrMLhpPPks12lCeTguB82OcgZAHTFZ1OIMdWVmo9e/T5oqlkeBp7OX4f5HyZH8KfGGnyPc60tnbs6Hb9sS4AVvfEJzWf49+B3xZ8PfDq4+LU3hSG88Nx3UFvPrulXQuYdPnl8zyYJxE5+yvJ5UxRZ0RpBGxUMAce46l4n3ak2o2s21ZddinAihBQK8Yz8sd2ABjkfKwzzsk/1lcn8YNTvbSw8Z+E9Oe3jttT8NwNcwRptR5Fms7jIA6YYMR6Z4wDWmX5vWrYuMKsVZ9e39fiLGZNhIYeU6d+Zd9bngOi6xrWq6pZ2MMMTyyzpEmV+8WIA4Bx1NftTD+zV8LviH4R0ix8deDrO6ewWCeyuBEBLbum1htcfMvI5GcEdq/Hz9nrwPqmu/HHwjpJtkaOTxPYJOwuEwga4Qc5P6d6/d3SbJbeCOGTkKuBz04r0M2UIOEYabnj5dTVpOSPQP2bvA8PjHxzc6T9nLpDo7yKCucYliX29aK9F/YU0RZfF+vajsLNDpsUYwOcPJn/2mKK6sswkJYRSkt7mWPxEo4lpPsfzv+Pv2a/2ofgh8VtY+GMXwx17Xv7I1CSGDVNO0Se5ttQgJzHPHJGrAq6FWA3Eru2kAggdZ8Ll/az+CXhe8vfhl8EPH2leJbiR3fUk8IXTKqMuCPmTk7dwxz1PuK/W3w/+wv4sWOKbxh8T9LtWkw0i6fA0+Fzwd0rQ7s47Z4wea3L79mvwP4Kt1ll1C/1K5ZXTyIb2LfgDPmGMouExtbBcfKQc9BXJic1yWo0nO9n0T/4COjC4TNqKbUbJ92v+Cz8yP+Cbfhj4s6r8K9Z8K+ANRt7DVBrOy8k1CyWTyYsxibCOCBJsDbdwIBxxXl37OOhS+LPHN14bS3EzXWqRReUF4clZBj/VyEdccI59jX6y/Dj9lz4UfAS9vrr4P+BYNGvdVuvN1K7vby8ncs4xM2w3AUE5yAmADxjoRZ0/9mX9mnw3KzeAPgZ4Rt70SLJFBaaQsV7IABkhmYNv4YrlsHODjlq8SeKw8nzJO7ld+mll+DPbvVSs9lFL563/AEPyp8PrJ4W+IMkjyzKllrvmRO8e3OyDqGLMOeMMUwCfuZ+Y/TfwTi+LPgn4neJPipomi6peWuv6bqyaTPbBZ0t/3gMqMXtGRwVcEbI7dixyGjOK+09F8B3Wk6hHPpHh/T7QxSeevh+TSkEscIlCCfIBwNrbi5HDLgB8k11Gq+FtRm1NpFTEk9wIWjhsxKANgbdGk8aFQFJJKbjkEfwms4YiNCpzx3W3kE26sORrTqfKGt/Bzx78TfGer+K9T0TVLeXVn1a4llhtdP2Ykto5AEH2eJXBIbG3ZuZSItj5Y/L37RP7C2paz4v1A/DW40K00y7DefaahrRjuJgxDNuggg8q32ybwqxuVMYTAHIP6I+LvFmn+HNau/Dd1a28swuwy+XaI22YjhlBGEk5IbGDnjOTXmurJ4M17V7KDTfBsM17fSM0duu0NOPmDsD8u3a64YHIAyxOFyeXE5vPEVkoR6+ut1t1B5XSnQXtfl0sbX/BOP4VW/wl/Zmg8JPpMcd1b+JdPuNanth4fuYpZmuNk0inU2jkjT7Mluh2gqzwu1wwikCj50/4Kqfswal4s+Hei/tO/DZok8QfDHT5rw3dyvh2KO8ghv5ZJIX+yyjz3jjAnSJt7FBOqRtE6Mv2r8Lvhj4j8BRRT65/YWhWUsVndDSZpop5kW4jLxuy2yTRRuu9VZGZG3SkLvKSbdrw5qngyPTbqGSHXpraeymaKOPS4pJYpDvHkrukDOBIxIMrZG456DPuLO61OhCKhe2mrt/wP1PNWXUk5JS0+8/PH4X2uoftL/CSz+NXw/0lpdPukvftFvFPYSPY3SujNbSLHEj+Z83yqUVpAQ0SBOK7W2/Z4+KHnyQnw+0bfb5Y45StkwZPs3mAhwuwIefnGI9w2j95WD8L5rL/AIJpft3SfssDwje/8Kg+MF3bah4GbWb2+f8AsnVxH5LW8bmEJJ5k5jhZSsjrC9g8kxKPv/R7QLi68L3TaZ8XPhr4o062iXzY/wCzdPWW5AXDD5J2tFZMjactnb0PauPGuFOsnGLcZWaeu3Z6WTvpuduGrVJ07NpSWj2/zPzi1f4Pa3JZRy60NPsi6acfPmvLKHyvPjPMjErsCkfNv4TjzACQx5Dxr4GudF8K3euf2zpjRrp5nMdvqVuzt+/8rZsSTzC+cttALhfnxtwa/TjS/i7od/4SiTx34W1iDV2gANnqFha3MO/IDmOWGZ9yliuQ6jZvBAAA3dN4u8B+Fr65l8PXukaDeBmSJra6s/OS+THzAgRLJMvzK29F2rsZSRgivMjWw9S6itbPrrr5Wud/PWptOW39db2PxS+H/hvVPG9/e2+nwqhtLBb5jcTvCRGkBZgPtOwMccbFO8k9A3ynhbHwDrXxe/aKsfh5olq9xd+I9Phsba1jXOZWjjUEcc/d/Sv21tP2ZPgz4W1S91PwP4B0LQ57+3ew1S/0Oxjs2vYJsD7PuXazIQVj2eY28EAg4Irivh9+xV+yL8F/jJpnx3034dWej+MNAu1bQr1dUuZE80lk5szcFXQBjuYxx4zxhl3VvgsRhMPXhKd/P002+5k4idWrRkordaeuu58e/Bz/AIIdfFv4E+K7L41ajdanNDpWowXeoW11axpH5Syh9wIbIIIB79DxzX2LpYBUBcgDGMV7x8Qf2ofGPjT4ean8Lde8Dabpk2qQmFtbiimgikXfjKW58xwPl67juyDgZArw/S/Cuux3LW+nr9uETKJTDEytEGICFwRxu9ATzkDJBr6bOM2ybF14PDS0S637+Z83leCzKhRl9YWt+lj6T/YR0l1tfEeqYwHe3iDjuQHJ7f7QorX/AGL9d8N+Efhxqa+LtYtNPuZNbdWhvLpImG2NBjDEd80V7GAdJYSNpL7zy8ZGq8TL3X9x5LrWjJDaalefaUub6WxFzLG0rRqCAGWQl2ViGK7WOc84JAo0Lx14E160i0HxV4n/AOEhvWEtzHpVjpDSNJ+5P3ZLiGQhQHG5kUPsJHU5rLm1TWWF/wDbrYyHUI5JLi6mtmt4okCnEMqwhtwCuQBIQec+tQeMR40niPiLwdcjRJ4CC9zaxpc3U5bK/u2kKx/MNgzLtPXLKFyfyb2eyP0DmMTRvBOoT/EHUNR1jxJdCwtLMIfDGnQ2plscMXSOUW0WW+VopFERHJ25cdd2RLPToxHfvo1pcXhK3sxijRXjBbKZw7N/DkFmPP8ACeBFPe+I9U8H28ni/wCI7ldMvkubibXtDgvHuZkaO4Rolhds7WDY2sXRlG0jaDWV8QodCF1YeIPD+tGCTUEuLpYrXQGF3M5j+SSNwmYZBvI3SYB8wBuNytrzWsjJrdnSXPg+Xw5Z3M9x9sFlLcxpbjRo1iDRsQAzKu4yD5vmZjwATtVQWOfpsWk60k9gbuyuF0ZgLK6MBSRZGbMgDRDMbbNq4XazhiCD96sktrWl2T+KPEOlX+kaPbxK6rcXk8TxzFhkmFGxK7SBAA5P8JQZZt2JY6J431PRJdV+EaM4nnZNV/ta7nTy5WQfOqhZstyv8JXBPJwVqXXe2oKnDm6I8S+Pfi7UtO+MWqHQLyKSxiNvIFd5WkhZIV3qRMN6sHVuGGcYGMACuS+Ef7TmpfCjxL/wky6dJdzm0SEpCQpWP7T5pVZCrG3kEixTLKoYgw7CrxyuteqfET9krXPENtE3iXX59D1W7t3R71JVmt0cA7BtaCEsoIJCqiHBOc5DDzqD/gnd8YNG0OP/AITr43aPBqNxJny9N0CV4kTcQmA0wYAgcswVQRjJ5Nb4eth4vmejXk/0uZVqeIasndPzPqLw746Xxp4F03WfDOso1trVpbyJlt9ijRmN38ydVVyS0ZRlMC/vHfIUgBodH1zT7+Q/8Ih5WpMrJBLb2sU729ncIqszvLOg2F32udxAB5CR421lfBLw9cfDD4Q+EP2bfiT4m8F/2/bXN1/whVjqSPpFxrNobxrq4uF3zXP2yeJrxsRQIHVY4i4jVzNXy3+3Z8ctU+Amp/2fo2rG3tJBOk9na6bbtE6zSs7+akp+cM6OSyhgCG3MpkUN6MKDm1Kmrp/L+vuMY+97s9GfTH7Y/wCxPd/th/DyO98d+LPBVrrfhq2ebQU1/wAQWE01nNFC6JCkollubWCWIIoVUCo8cMpT92rjrvhb8T/icvwh0tfE9hpHiHVLV47fXL3wX4stNSsmuo0OHLloWR9kmWXYu1pCqqyYY/lCP2kLfx1rEPiO98P2NvOYAstxe+DEllmBYYBaO3fcMEdGwVU8sSQeNs/jv8TPh18eG8U+CNaf+xtaElnOj6Wl1YWskuxJGWB45Fj3fu1yse4piNQVASvco4DEVcJytWa1V3f1WiW5w1p0KVZS5r9HZW+Z+3PiP4g/Bz+zP+EQnS3fVblY7izmhumErQSxMkhCCNlOy58rY0bhmjaTzNodFHT+C9H8MeFtFOmQ+HZ7xyDc29rqNwkLPMAjJ5ruZJnw6RspJLZMh+RJWI/Nz9ljx5+2b8YtSsfD2i+EbyWOz0lNLsbqWIWU8topX93I4EZkYxoYg8yyDa2dyP8AvD+ovjvxL4f+IXhex0nxXYaDqmo2mhI+v2umanA1sJsrL5CGV0KlEaOcmZgNlzbhSNpZuLF4eOHw/tpJcy0Wnn3699S6U5Tq+zTdn5mG8Xh62v5bDRvDd5K0hVLhr24jka8kighEkzsGZIvNZflUgOEZRt+QuLVz4m0DUfh2NN1TRV0q6mijbS8y2nmPkt+6jjmgWWM52fLsTBBJZcE1y3hfwutz4muNb0bxTP4XWOA/8S3wtqNhcqqtP5UBmghgkUNMIywJ80gEpuQqFPe6pp9vc2L+G9e8P6BqcqpGdQbUwJ9kLvuXzVS2VSBtYJnbnYpycbj89NKdRya3d/TyPRi3GKSOVSwj0uS10rU7lodWk0w3Exlu42uVj3EBZtoJ8oMSS8XygrjIz82Rpuk67q9hrEerXl55lsADplhEsr3zMiNEqLdgKXboHDbd5KsQY3296+m+Fr3VYfE2r+JNJXUJbhbW1vksIIWzvbbApdRLyH2gbzuBBH3/AJs6w8A64vjKPxHceNNR1aK3heW20VNMjtQd3I3S24EgKnBG5SR0AJODFNU+e5U3Pksi18Or1bjSw2qaLf6PfJEitP430JVnnj5wPMgm8mTBHADbkBOR82SV3VjaXcA+wmGbTbrmVTGkmo5ibDENuUmJt7MOOG2nk4+Ur2I1FbQ4HTdzxa/1qTSdG1q5urOzupY1b7ZYDc6+YLZSLT/WyNvIIPywgMHyI8tzwOjT6ncrf61481zWtLfTbDTry/tNQZ7eGzMls0jRNI91IYVjiSQTM8gG+Rv3p3YN/wAFyfELVtG0+X49+AtF8Ey6n+58OaXq3j4azeNeNIsaqY3ghjcbWV8Qzu5BVAAxwtv4seDPC3jixm0rx9p+nSx6Nqcjxa94q8HPFYWrqzRFkutTMkSxvJsjBiDOxdNqld7L5ypO7v8Agdk6jtdL9Cn4P1LwP8ZdavtZ+EvjPwnOmjNGqT+D9TivFgSQguLuO3uNh8wRSpGWDMimQxspG43vDVj4T8f6u9zq17Lremaa72D/AGa3to7fRZwi+bBKxdplkBCKyb2CNy4UBWGp8HfhjrWjRDUvC0/h67s50DD/AIRews2trvYGwJJ4IoAn31ZNhb7xyoGVbotK0vw9p2gS+AdP1GfTLgRNqmq3/i+eW88o+bGWaFbm7cxFZZI2idnZYiijac5ESpNvt2ClWbj7y1IrPwVHfeGbc6L4Z0vVtGu/9K0yxhsle3liOXheNt0kBL8MHJAO8NwTVPw38PjpHjPWvEB8da7eR2srafYaVqVpI0dhIIioZF2LNKhxnzJJQjb2KuAV27AfxLL4Y0u2+LcE+tXGpxSObm3uNINlbmRn8hQ84iaSbySh3Im0neQoB2iRPEnjLw6W1XSofBOkaTJqFvZvPfarcsbm5kljit4llnjiCSlpEVYsHc8qhWLEij2Cihur7ysW9Msl8XXV3b6TpOmxajp1hbySzRalb3K208jymS3KKFmDDyhu8xEBLAKSVbD/AA34di18TavbIYb+MS2yhQJZflwNrOg3bQVDEI5BbcT82a4LUtb/AGefDVxLdeKdctX1NNfOkWEqWmqafLZXUrbSBNEzFYX89EjmUxwMCcSMCWGx8Q/jn8Mo9Kt7XxBeJeaddXNvMl9pqubaUxXMZBEiTA5ikUSbyVG6MbdzgRtnKMU1bQ0U5dT4Z/4Ls/DLUviF+yna/E3SNDgm1TwB42klvzokE1tb2Oj36tbym4SYL5txLcC3ZwgzG00kJWTy3nf8rdS/a9/aN8SaFp/hv4hfFXUvEtppVyZrRPEE5vJFB3FozNKDNsO5srvxyMYIBH7rft6W/gD4lfslfEXwNpHgDUNVv9c8PSw2lqb+WK4uLmCZZYHDl/Nk8qeNZRHnbJtKnIfn+efxHp8+nanNbTIFZHIwOh96+uyKtRr4Z0/5X89f+Dc8jHQqUqiqPr/X+R1U/wAbr83099p3hbSLMzSsxjt4pSq5wMDfISQAoAyTjnHU5jsvjh4m0+7F3p1nZwOImjQxo/y7nV2YZbqSinPtkYNcOznOKEJLd6+iVNJHlus29j334c/tdftI3HinStQ0v4sanpd9pczNpGraVItpfaeZIRBKsF1CFmhSRMCRFkCSYy6sea/d79kLRda+A37IvgrwV8P/AId65e+I2htlv4NfSe2W3eeXzJpHdoSIIkMkj+WV8wc7laQuW/Bz9h34QRfF345eFvBd1Bevb6jrEMV4+nRB54rYupmdNwIysas2SCo25PAr+hXwL8az4g1ibStV0k6ZqUoaeWF9ZglM4zz5aiV3BAA5MajCnHpXz+cxU4RivU9PCzszf8K2PiPVdZ1Xw34j8T3F1q1jaquoXdtpt5bIUmXdHHbm9aZXQgEtJDOdsiYwjKRVGzudU069Ol/EcxaHqGq6hcWunLb2wvbW+QRhYpFkiRPLBDjKSLGxcyKrPhJKyvFdp4r1KO/8IeNL+61PQPEKvbQ21h4eu532lgRE8lhseMBQUzIyq4YDcfnWo9a0rQmGhahfeF9fvLC50+bSm0fU7PUdUvDqlzNDLZtNfQrdMltERepNcJLJDEJYzll2AfNzoWZ6EZo9Ci0LXLT4cS6NZXdxa3UFxFLdWsFmJhIluCFiiSZYw7GItGrOWCmR+WyTWFoFt8Rn1uS8uNThtNMhtoip1jwrO6RujqY1itob0Rl0ZUbcQGHyldwDbcyw8S6ol/p7/F2XTNPtWsGGmaTotnq2sSrLFIVWeS/MMaxNsDo0T2/mBicytgrW22paRJp8AvPG2qMYVH2q50ix1OJ52zlmSELuAye8pPXkmsbNMq90bNt4I8E/FGK5vPiDB4auL2W+aaCS01K6trqKBQI0iPm/vY0BDEoNiM537NxLErR0PxV4IfQ/7S+IfxD0+0jklSGyvdZkWwmk8uNVKlbuGOTJG1iSXDMz42ABaK7YylbR2MORPdHJWNpbDXry41zxPqt3HLCjK8E7wRM20rsCiXcrjAYlFjBJGSzZriNJ8EfEvwTc2uhaX8Z9Q8X6Te6laya6nj9I5biOOGNEZLOSzW2SJ3jjJYSJKpkAkADNK0kHhXwp4b8O6e2g6Z498ZXn+nW073Os+Ir64mMkDiUIsksm0o2NsgUYkUlXDAcQfFbQTZi9+IHh2eSz1K9isrfxDdwv+8n022N00cSFifLaOS7lkDRbHJOd+UVTxqq07J/gdnsIqN7fix2qX/hi7Oi/F34P+CPtD39klxpPiGK3zarE7dWfKy7ypClNy43bSCNyMzxH4g+N/jmCysdRt/D+ntZ6nDdi7jdYxcRI3mNauZorkRoxXD7Qp5CqcDDZ2meJdf0iS3vpdTu9St7K0lXzojDJfQI6cbJJVbfkhGw5+You4kAq17xZ4M+FjaIt7491q9lgmQhGv9Qmgu5gY2fykKgTtMAsjokZV8qAFyDUVJyvu7mcYJ6q1h3xF+InifWvCGr2viLQDoNjZW0v9qa7oeqaXLaw2kVukvmu968KCM7poWEsJVSrNujCpJXBeGvG3i+wsdC8VyW/xP1LQmihfShPd+FLGy1GGSNTEnzXEYnjljwQ28Hbgr13Dr/Cuq6bpkUWneENBv8AVp7N4pD/AGpJaQtN5gVZL5YxsEUhET4AjQZYKFjX7lD4k+I38E6XFa/E74o6NZWeoXSlb3xDqdvZi+kjVSQkMyhIyCqHEZG0nfkNknmlWt7lrs6I0uZcydkN13xB4c/aj8MJY3/w1vtOl0y7mntIvEt7NZz20ihfLliOnzMsyEs3Anj+6W2kYNZtz4d8fI9x4he20rSdTuSH1XUlv5btAu1i0sKyqrcK6piVzGv2dQqBTmustvAPxFuFgsXk1O0aK+N0u10RZQsgEsTnB+RgiqZWyVVwytzWrpHhvWtVuzrF9eRWfh5LZ4UtprOV7w3SujI26NpFERjdw29FKsq4ZxuCcFT29TSnsdcVTj8Z4R480abxH4K1WG9Fprn2eDdr2na9ZxxwPbZfzEYE+ShG1/nO5DjncNpHwn8ff+CWWq/F34k3Unwo0KPwndMjXWraZqOopc2VozhRFFEIYxJBvwZBGxKqMhQqhQf1S8VeFPB99faHc2+geJ7zV7W3aKa98PaxdrpunXV5H5KC6hUqLuHziqLLJY3CW+HmkSFVkdMnTdD/AGSf2avBlr8OvAvirQdM07QtUls7Tw7b+LLkXllLNcIhiBt2luJsXLTM3mKzRiY5ZEiYHswdbGYL36LtJ/P/AID8tOr7a41YUa+lTb7vz1/H89PxyvP+CI37aEEC3FjZeHNT3lfKjsdUnTzAWVSwaa3VMLuBPPTpkkAs8Gf8EV/2xNe1PTW1TS9G0m0vr9YCb+7l89R8zOVh8tXkKokj7RgkRtjoSP2hf4fjwdPdr4/8VazEt7qkkkNz4mlkkhtIriPZ9jguYldAsbCQmZvJlIdQzOoIE+r/AAN8JWHha606b4fXfirXYtYt7jS7DwrqOnJf6TNatKYdRiN/NDHG0cpIILNuEiqY2R5BXt0uIsxslKUXfyt+Z588twnM2otWPmP9ib/gldYfsj6gnjyLxrcapr85MFnqjWaWawwsHE8cVtMGYMyfKSzsWjVmXYGYH7M+Hfgrw5aX15qcWmTXGq2MOySXUJQkuGG7cAH8vYdpVWClgyyAtjIHiPws+IL/AAi+LHxYsv2mv2pLDxGvjDx1Ba+BfCvhaefVpdBiX7Sttp8lvaW5+x3UiIqeXj99LbNtaWQvu988Par4jh1rT9V8QfD/AMS6ba27SRQHVtSs5L0glN8n2a0EqPZ7WG/M32jzEXbarhZBGIzDEVNJyv8AgvO3oEKFK90jL+Gnw7m+B1lfeL9W8VeML7+07thb+H/EHiuXVoraVpHCrDPMpm+eOOM7XaQRrA+0KzzNLufDOSXwBA+nW2k3MNjqOsPIkTajPMsLXNymyOITswijjDHbFEFQ4wqIcBjwl8QPA3xa1RfDdm0505BPM8mlu1pCA77E+5ebi+6N3ClMkDzMoWw/JfFL9oDx74D8ReFNC1f9m/WLiDxT430ewsNVtfEkFslgrTljcH7O7TrHtQO0RTynjkeOWUhvKfhWJlVfK3qzd0eRXR3vxrk+INl8GvE99b32ieEL+z0ctpGv6jM19b2srZTLI8St5nQRjZKCzrlJOYnz/gBb/ELW9J0fxnP4wtvEuk3+hqk7y3KSosoknBkieDSbUb9sC+Ysih1kYxhYgmZ7mmfG39n/AFS2u/ht45+I2hSiG3MWq2FrrhmJKW6DDbUhRR5gUeSF2SLvymGdB4x8V/21fB3hTVb7Q/AEt3cXFlbwjT9NstZnhghtMvGkjxMSgj/csqhI2VtrgMwUmrpU68qKnBXu/n0/AzlOEK3Iz3PTPGNn8T9Pk8dfALWfDPjrTvtjWc50zxTbi1spURHZFeG1l3uQ6MwdyVBTbgMwor4i1H9oz9oTXvGGq+OvAutWGmaleLbW/iQiCSzkmmjRjFHcuE/eSwxsEVAzKkbgAkMDRXYsHXa0X3tk+2prd/cjnp/25PjX4Y8KXel2/hjS/EHiSzsPtMkE0ymQ7mBLiGAxZCITtVSCdqjc7HJ1tO/4KKW99eadpE/hdL2x1i0kXT/EyO3lSaiEkbDWbPv8lVRm2mYvlShCbQ1eL3HhoWXiDT/iJofhjUtMvfNdNQgtNLa4F7FIrZWRLfJ3AhSJCSAUGQcjEniDw14U0jRU0zUR/Y0F9rEV+iXU5i8yWKeO4Kqs3AVmRdyrgfMx4Ylq7pZVCG8GvvMIY2U/hkn9x7TqH7avwyg8Jx6Hd/EK1082epmK8vNC8MOsAkDOptdkwuUXAySoZWBjGMLlTc0X9t/4Wa54o0+HxN4qstXt4IQlvrE2kvFO/m3KRSRBUeIMSSspZVXZHCQElYnHhVr4P0t9eu9d0TxFqltLqFvGl5HHcQSRyqjOVYGZHZRukPyqdozwoOcxXeo+HNL1aB/Et1LLpum2xe6v9UhiiVZicptcqkZ2oXUlOP3mCSwOeZ5XT5rqTf3f5FyxcuWzSt/XmfYvgz9rr4LrcagkviVUs2vIxo08GnxqZYTDbuzAs8kk37zz13OsRG0qsZVVmk8r8B+P/wBll/EGvfETx/8AHS68U6ne3Kx3njDUBbwtPaxIUiiKokUFtsEhTMaKspJlwfMCr52/wv0C+tguqmG6USmUfuQFOfVQcZxnoACSSAOlch4d8AWuhyTXFn8OlN5O0kdxdaGloghjYhRCXm8p5BtA4KY57gjOayqV3y1LfI0eMp8q5oX+Z9Y+CPH/AMHNA8W6Q/w/+O2rtYCwD2+mNrE97B9l8kAeVCbsxRbfMh58ogKxAHzB07C5/ae+E9z4c1TVdL+Lst1bvcS2zafDDEJoZLZdj2kDqy/NuhlyrsHEjON6LgD5S0XwFNJPd30/hOLddIJRA94JguWLGJiQ2xhldpDuDgktyK2dZ8FatPZ2cul6MbvUY5Y3NnHqMlrtCxn5FEXExLkAIxEZ5JYEcpZXO1nU/D/gl/XaVtIfj/wD6T8U/Gr4XeM/hhH4DT4q2tta3cMa3N4ly8kyxgLKsbCJWJ38LIGYFkkckksa5TV/GnwA1C2n8AeKvircMZbCCU2GiWjuyQSF2RySgdd4RlIC/wDLNlG1lYj5z8Kv4S8R6fF4lv7DWZTrwSeO7sZDqNoFECRbo5Ld5UhjKoqhFYK2GYAnea6TTfh/4a8TRm7ukk8mKNg76laSwySBcjZtkVXVc98AYzjsaFk8Ypp1GR/aPNJWgfTPiL9un4ZeOvAa6l8PvEki6dMCqPDby20sjpLj9zNFIHhICH7yOGyoKhWIbzjw1+294T8KNf8Agv4n/DrW7u21mWTztU8Qaymr29xGkCrvkjk8rBZ2VCiqWKomTkfu+HsfDeox3dhpUJhudOgW4acXGsTeZajkRRxxOkgkAI2HLKeARyuxqmra74Smk1PTrfV3+12Dql3HIfIjUOgYorum1gcfMyknI2k5UKNKeT0NE23/AF5Ic8dUs7JG14s+L/inVvit4V+LOh2dpolp4O0q/j0q1sPDNvBeSi4kTdbyGWF2hijtVa3EcSQzYaVhcAvgL44+PfxZ+IGma/8A8J3cQt4efTbmdrYancwx2xwGn3tHMjywoSWWO4DIvmEKUjUxD58X9o34fW9+R4m134bmwgtgY7nSvHEt7crs3O37oWoWVpHVQdoVlVmwGYqBdT9qT4F+LPAlj4b8TE6vPLcJPfaZoi3gsfOJxhhMluJV4DlHQr0+8RmuhZTDRcrdjmeNl3sei6B4/wDFuu+CNMu9E+INvpVr80mnLoMCxQPayTH7QqCIRjlGYIQUCMzHDEFGzfEOm/EfxTrjeI/HWqw+K7OdryO80fX7918lUunls5Y7Zo5hcTSjy97STRLtVHEfzGJcrR/H+o+Kry68Q3fgaHzIomstKMmrmSSeEsWM0rCBXjYfKdod1Ad8Enr5RoH7cGsfDT4j3WpfFjwbb6poOjE2niTwPZxSW97p8QEZ/ta2mE2b0KRKWiPl7ImRvnUSTx9tDKo0mkoJf15amFTHOad23/Xme4azo99odzqOn6TpNkwubaSYa9qTqlrFM0ilvMiUhpECzSbUXaW+zOrPH5iS13Oi/An4o6rqVxouj+B9cgtIbjz7+y1+zitrW5E+6Ndz3MQby4lj5W3G8KN0iyPIN/ofwl+M/wAGNe8A6d8TfgFpum6npclh5MWraTHunSFdu9J2cGbPyIXEvzFsFjnBPzd8fP2+vif8TPH+r/Cr4S32s6bpcV4lpP4ksRbwCGURlpF86XcUiPzZmwpTYGVipzXp/UMPQhzVJfd/wTgeLrVp8sF959T/AA1/Z78AeHbEzfEDxbLaXo8xLaHwkkUaQI0rs+XmhO/zAIXYBEw6sCZPlaivg3wr8IT8YNRu/iH40hsvEDTyPb3WswXiTS+fGEAi3Xkk2UA3HKnr1JorBY3BQ91UvxNHhcVLX2h//9k=\",\n        \"photo_exists\": \"true\",\n        \"pin\": \"PxundUqtIoZjZagX+3VnaEwacJSxHH+89uYiJRm92vE=\",\n        \"pin_exists\": \"true\",\n        \"login_id\": \"admin\",\n        \"password_exists\": \"true\",\n        \"updated_count\": \"5\",\n        \"last_modified\": \"26\",\n        \"idx_last_modified\": \"33\",\n        \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\n        \"expiry_datetime\": \"2037-12-31T23:59:00.00Z\",\n        \"security_level\": \"0\",\n        \"display_duration\": \"20\",\n        \"display_count\": \"3\",\n        \"permission\": {\n            \"id\": \"1\",\n            \"name\": \"Administrator\",\n            \"description\": \"this is a permission for Administrator\",\n            \"filter\": {\n                \"UserGroup\": [\n                    \"1\"\n                ],\n                \"DeviceGroup\": [\n                    \"1\"\n                ],\n                \"DoorGroup\": [\n                    \"1\"\n                ],\n                \"ElevatorGroup\": [\n                    \"1\"\n                ],\n                \"ZoneType\": [\n                    \"-1\"\n                ],\n                \"AccessGroup\": [\n                    \"0\"\n                ],\n                \"GraphicMapGroup\": [\n                    \"1\"\n                ]\n            },\n            \"module\": {\n                \"Dashboard\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"User\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Device\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Door\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Elevator\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Zone\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"AccessControl\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Monitoring\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"TA\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Setting\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Video\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Visitor\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                },\n                \"Report\": {\n                    \"read\": \"true\",\n                    \"write\": \"true\"\n                }\n            }\n        },\n        \"inherited\": \"false\",\n        \"user_group_id\": {\n            \"id\": \"1\",\n            \"name\": \"All Users\"\n        },\n        \"disabled\": \"false\",\n        \"expired\": \"false\",\n        \"idx_user_id\": \"1001\",\n        \"idx_user_id_num\": \"1000\",\n        \"idx_name\": \"2001\",\n        \"idx_phone\": \"1000\",\n        \"idx_email\": \"1000\",\n        \"fingerprint_login\": \"false\",\n        \"fingerprint_template_count\": \"0\",\n        \"face_count\": \"0\",\n        \"visual_face_count\": \"0\",\n        \"card_count\": \"0\",\n        \"qr_count\": \"0\",\n        \"mobile_count\": \"0\",\n        \"need_to_update_pw\": \"false\"\n    },\n    \"version\": {\n        \"dbBiostarVersion\": \"2.9.8.1\",\n        \"biostarVersion\": \"2.9.8.14\",\n        \"isMatchVersion\": \"true\",\n        \"notiPopupOpen\": \"false\"\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"},{"id":"3dc17ec9-64bc-4378-b058-9688cfc9f0ae","name":"Login Failed","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"login_id\": \"admin1\",\r\n        \"password\": \"your-password\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/login"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"400 Bad Request"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"150"},{"key":"Date","value":"Tue, 21 Jan 2025 02:05:37 GMT"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"101\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Failed to login for invalid username or password\"\n    }\n}"}],"_postman_id":"0b54ae8b-6744-44dd-8556-8001ae3139ff"},{"name":"Logout","event":[{"listen":"test","script":{"id":"e56506e5-0e22-484d-a3fe-0b88dfe8e59c","exec":[""],"type":"text/javascript"}}],"id":"f344b4ff-e2c2-4a2b-8c4e-8bb2aef3b448","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"bs-session-id","value":"---","description":"<p>BioStar 2's session id. Generated on successful login.</p>\n"}],"url":"https://127.0.0.1/api/logout","description":"<p>This API is used to Logout from the current session.</p>\n<p>There are no body parameter on this endpoint.</p>\n<p>It is required to have <code>bs-session-id</code> key on the header, the value generated on successful login.</p>\n<p>Known errors:</p>\n<ul>\n<li>Putting \"/\" at the end of the endpoint</li>\n</ul>\n","auth":{"type":"noauth","isInherited":true,"source":{"_postman_id":"86d0578d-a523-4c21-ae01-2657d863a372","id":"86d0578d-a523-4c21-ae01-2657d863a372","name":"Authorization","type":"folder"}},"urlObject":{"path":["api","logout"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"5a7db81d-8e1e-451b-89ea-e1aaf7595f4e","name":"Logout","originalRequest":{"method":"POST","header":[{"key":"bs-session-id","value":"---","description":"BioStar 2's session id. Generated on successful login."}],"url":"https://127.0.0.1/api/logout"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"107"},{"key":"Date","value":"Tue, 21 Jan 2025 07:59:20 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"f344b4ff-e2c2-4a2b-8c4e-8bb2aef3b448"}],"id":"86d0578d-a523-4c21-ae01-2657d863a372","auth":{"type":"noauth","isInherited":false},"event":[{"listen":"prerequest","script":{"id":"bc844921-29b4-4fff-b5de-34e0ba5096c9","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"eba90acb-e462-47ea-8b20-c6481207fa09","type":"text/javascript","exec":["pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});"]}}],"_postman_id":"86d0578d-a523-4c21-ae01-2657d863a372","description":""},{"name":"Access Group","item":[{"name":"Create New Access Group","id":"00237534-7069-48b0-a23d-5a645ed214c8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AccessGroup\": {\r\n        \"name\": \"ac_grp2\",\r\n        \"description\": \"\",\r\n        \"users\": [\r\n            {\r\n                \"user_id\": 1\r\n            }\r\n        ],\r\n        \"user_groups\": [\r\n            {\r\n                \"id\": 1\r\n            }\r\n        ],\r\n        \"access_levels\": [\r\n            {\r\n                \"id\": 2\r\n            }\r\n        ],\r\n        \"floor_levels\": [\r\n            {\r\n                \"id\": \"32769\",\r\n                \"name\": \"floor_test\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/access_groups","description":"<p>This request is used to make a new Access Group (AG)</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>The name of the AG. Must be unique</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>AG's description</td>\n</tr>\n<tr>\n<td>users</td>\n<td>Number</td>\n<td>N</td>\n<td>List of user(s) id of the AG</td>\n</tr>\n<tr>\n<td>user_group</td>\n<td>Number</td>\n<td>N</td>\n<td>List of user group(s) id of the AG</td>\n</tr>\n<tr>\n<td>access_levels</td>\n<td>Number</td>\n<td>N</td>\n<td>List of access level(s) id of the AG</td>\n</tr>\n<tr>\n<td>floor_levels</td>\n<td>Number</td>\n<td>N</td>\n<td>List of floor level(s) id of the AG</td>\n</tr>\n</tbody>\n</table>\n</div><p>If BioStar 2 does not have license for Elevator module, skip the <strong>floor_levels</strong> parameter or put it like this: <strong>\"floor_levels\": \"\"</strong></p>\n<p>For numeric value (such as id's), the value can be put on a quote or not.</p>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>AccessGroup</td>\n<td>Object</td>\n<td>AccessGroup object</td>\n</tr>\n<tr>\n<td>AccessGroup.id</td>\n<td>Number</td>\n<td>ID of the Access Group which was created</td>\n</tr>\n<tr>\n<td>AccessGroup.name</td>\n<td>String</td>\n<td>Name of the Access Group which was created</td>\n</tr>\n<tr>\n<td>DeviceResponse</td>\n<td>Object</td>\n<td>DeviceResponse object</td>\n</tr>\n<tr>\n<td>DeviceResponse.rows</td>\n<td>Array</td>\n<td>List of device responses</td>\n</tr>\n<tr>\n<td>DeviceResponse.id</td>\n<td>Number</td>\n<td>ID of the device which updated it's AG.</td>\n</tr>\n<tr>\n<td>DeviceResponse.code</td>\n<td>Number</td>\n<td>Response code from the device. 0=Success</td>\n</tr>\n<tr>\n<td>DeviceResponse.result</td>\n<td>Boolean</td>\n<td>Summary of device response. True when all devices successfully updated (code=0), False when even one is failed (code != 0).</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"known-errors\">Known errors:</h4>\n<ul>\n<li><p>Putting \"/\" at the end of the endpoint</p>\n</li>\n<li><p>name is a required and unique parameter</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_groups"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"48da2390-9298-4d45-af6c-64ed26b61ed7","name":"Create New Access Group","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AccessGroup\": {\r\n        \"name\": \"Test1\",\r\n        \"description\": \"Test1 AG's description\",\r\n        \"users\": [\r\n            {\r\n                \"user_id\": \"1\"\r\n            },\r\n            {\r\n                \"user_id\": \"2\"\r\n            }\r\n        ],\r\n        \"user_groups\": [\r\n            {\r\n                \"id\": 1005,\r\n                \"name\": \"Administrative\"\r\n            },\r\n            {\r\n                \"id\": 1004,\r\n                \"name\": \"Executive\"\r\n            },\r\n            {\r\n                \"id\": 1015,\r\n                \"name\": \"IT\"\r\n            }\r\n        ],\r\n        \"access_levels\": [\r\n            {\r\n                \"id\": \"1\",\r\n                \"name\": \"Administrative Employee\"\r\n            },\r\n            {\r\n                \"id\": \"3\",\r\n                \"name\": \"All Access\"\r\n            }\r\n        ],\r\n        \"floor_levels\": [\r\n            {\r\n                \"name\": \"FL1\",\r\n                \"id\": \"32769\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/access_groups"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"1644"},{"key":"Date","value":"Mon, 17 Feb 2025 07:52:34 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"AccessGroup\": {\n        \"id\": \"14\",\n        \"name\": \"Test1\"\n    },\n    \"DeviceResponse\": {\n        \"rows\": [\n            {\n                \"id\": \"40059001\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059001\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059002\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059002\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059003\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059003\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059004\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059004\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059005\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059005\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059006\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059006\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059007\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059007\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059008\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059008\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059009\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059009\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059010\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059010\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059011\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059011\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059012\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059012\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059013\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059013\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059014\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059014\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059015\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059015\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059016\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059016\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059017\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059017\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059018\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059018\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059019\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059019\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059020\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059020\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059022\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059022\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059023\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059023\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059025\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059025\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059028\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"40059028\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"542071155\",\n                \"code\": \"0\"\n            },\n            {\n                \"id\": \"542071155\",\n                \"code\": \"0\"\n            }\n        ],\n        \"result\": \"true\"\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"00237534-7069-48b0-a23d-5a645ed214c8"},{"name":"List All Access Group","event":[{"listen":"test","script":{"id":"7985e118-8c4f-44c0-aa58-86f5d7c3a59f","exec":[""],"type":"text/javascript"}}],"id":"cd18426c-c523-45a2-bcdf-be888582b2e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/access_groups","description":"<p>This API is used to view all available Access Groups.</p>\n<p>By default the result will be sorted ascending by id.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_groups"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"d18c151a-3c2b-4d49-b10c-769af2930116","name":"List All Access Group","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/access_groups"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"Set-Cookie","value":"JSESSIONID=BEDFE7BF63ADDBD1A0B5B4E36C9F50D7; Path=/; Secure; HttpOnly"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"4149"},{"key":"Date","value":"Mon, 17 Feb 2025 07:34:09 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"AccessGroupCollection\": {\n        \"total\": \"12\",\n        \"rows\": [\n            {\n                \"id\": \"1\",\n                \"name\": \"Adminstrative\",\n                \"description\": \"\",\n                \"users\": [\n                    {\n                        \"name\": \"RB\",\n                        \"user_id\": \"2\"\n                    },\n                    {\n                        \"name\": \"AM\",\n                        \"user_id\": \"3\"\n                    },\n                    {\n                        \"name\": \"JJ\",\n                        \"user_id\": \"61000\"\n                    }\n                ],\n                \"user_count\": \"3\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1005\",\n                        \"name\": \"Administrative\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"241\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"1\",\n                        \"name\": \"Administrative Employee\",\n                        \"description\": \"Access level for Administrative Employee\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"2\",\n                \"name\": \"Executive\",\n                \"description\": \"\",\n                \"users\": [\n                    {\n                        \"name\": \"Sib Steketee\",\n                        \"user_id\": \"60014\"\n                    },\n                    {\n                        \"name\": \"JJ\",\n                        \"user_id\": \"61000\"\n                    }\n                ],\n                \"user_count\": \"2\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1004\",\n                        \"name\": \"Executive\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"15\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"2\",\n                        \"name\": \"Executive\",\n                        \"description\": \"Access level for Executive\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"3\",\n                \"name\": \"First Shift\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1006\",\n                        \"name\": \"First Shift\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"149\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"6\",\n                        \"name\": \"1st Shift\",\n                        \"description\": \"\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"4\",\n                \"name\": \"IT\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1015\",\n                        \"name\": \"IT\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"5\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"1\",\n                        \"name\": \"Administrative Employee\",\n                        \"description\": \"Access level for Administrative Employee\"\n                    },\n                    {\n                        \"id\": \"4\",\n                        \"name\": \"IT Closets\",\n                        \"description\": \"Access level for IT Closets\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"5\",\n                \"name\": \"Second Shift\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1007\",\n                        \"name\": \"Second Shift\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"149\",\n                        \"user_groups\": [\n                            {\n                                \"id\": \"1014\",\n                                \"name\": \"Security\"\n                            }\n                        ]\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"7\",\n                        \"name\": \"2nd Shift\",\n                        \"description\": \"\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"6\",\n                \"name\": \"Security\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1014\",\n                        \"name\": \"Security\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1007\",\n                            \"name\": \"Second Shift\"\n                        },\n                        \"depth\": \"2\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"15\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"3\",\n                        \"name\": \"All Access\",\n                        \"description\": \"Access level for All Access\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"7\",\n                \"name\": \"Shipping\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1010\",\n                        \"name\": \"Shipping\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"30\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"8\",\n                \"name\": \"Stock\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1009\",\n                        \"name\": \"Stock\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"30\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"9\",\n                \"name\": \"Supervisor\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1011\",\n                        \"name\": \"Supervisor\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"30\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"10\",\n                \"name\": \"Third Shift\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1008\",\n                        \"name\": \"Third Shift\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"149\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"8\",\n                        \"name\": \"3rd Shift\",\n                        \"description\": \"\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"11\",\n                \"name\": \"RnD\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"2018\",\n                        \"name\": \"RnD\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"151\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"5\",\n                        \"name\": \"RnD\",\n                        \"description\": \"\"\n                    }\n                ]\n            },\n            {\n                \"id\": \"12\",\n                \"name\": \"Test1\",\n                \"description\": \"\",\n                \"user_count\": \"0\",\n                \"user_groups\": [\n                    {\n                        \"id\": \"1005\",\n                        \"name\": \"Administrative\",\n                        \"description\": \"\",\n                        \"parent_id\": {\n                            \"id\": \"1\",\n                            \"name\": \"All Users\"\n                        },\n                        \"depth\": \"1\",\n                        \"inherited\": \"true\",\n                        \"face_count\": \"0\",\n                        \"user_count\": \"241\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": \"3\",\n                        \"name\": \"All Access\",\n                        \"description\": \"Access level for All Access\"\n                    }\n                ],\n                \"floor_levels\": [\n                    {\n                        \"id\": \"32769\",\n                        \"name\": \"FL1\",\n                        \"description\": \"\"\n                    }\n                ]\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"cd18426c-c523-45a2-bcdf-be888582b2e2"},{"name":"List All Access Group v2","event":[{"listen":"test","script":{"id":"7177b34d-f2f2-467e-b349-b18f9e352efc","exec":[""],"type":"text/javascript"}}],"id":"18f288c4-0a66-4014-8ce7-03f234c222dd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"limit\": 0,\r\n    \"order_by\": \"id:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/access_groups/search","description":"<p>This API is used to see all Access Groups. It provides more concise response rather than the previous (<code>GET /api/access_groups</code>) and parameters to filter the response.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>To limit result by n record(s), 0 to show all</td>\n</tr>\n<tr>\n<td>order_by</td>\n<td>String</td>\n<td>Y</td>\n<td>To order result(s) by name or id (false is for ascending and true for descending)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"known-errors\">Known errors:</h4>\n<ul>\n<li><p>Empty body</p>\n</li>\n<li><p>Input other than number on limit parameter</p>\n</li>\n<li><p>Input without key:value pair (name:val or id:val) on order_by parameter</p>\n</li>\n</ul>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.9:</p>\n<ul>\n<li>Trailing slashes (<code>/</code>) at the end of this endpoint are <strong>no longer supported</strong>.</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","access_groups","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"5d28a8d1-f965-432f-a4e7-c0c14ec37470","name":"List All Access Group v2","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"limit\": 0,\r\n    \"order_by\": \"id:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/access_groups/search/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Mon, 17 Feb 2025 07:34:24 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"AccessGroupCollection\": {\n        \"total\": 12,\n        \"rows\": [\n            {\n                \"id\": 1,\n                \"name\": \"Adminstrative\",\n                \"users\": [\n                    {\n                        \"user_id\": \"2\",\n                        \"name\": \"RB\"\n                    },\n                    {\n                        \"user_id\": \"3\",\n                        \"name\": \"AM\"\n                    },\n                    {\n                        \"user_id\": \"61000\",\n                        \"name\": \"JJ\"\n                    }\n                ],\n                \"user_groups\": [\n                    {\n                        \"id\": 1005,\n                        \"name\": \"Administrative\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 1,\n                        \"name\": \"Administrative Employee\"\n                    }\n                ],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 2,\n                \"name\": \"Executive\",\n                \"users\": [\n                    {\n                        \"user_id\": \"60014\",\n                        \"name\": \"Sib Steketee\"\n                    },\n                    {\n                        \"user_id\": \"61000\",\n                        \"name\": \"JJ\"\n                    }\n                ],\n                \"user_groups\": [\n                    {\n                        \"id\": 1004,\n                        \"name\": \"Executive\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 2,\n                        \"name\": \"Executive\"\n                    }\n                ],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 3,\n                \"name\": \"First Shift\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1006,\n                        \"name\": \"First Shift\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 6,\n                        \"name\": \"1st Shift\"\n                    }\n                ],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 4,\n                \"name\": \"IT\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1015,\n                        \"name\": \"IT\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 1,\n                        \"name\": \"Administrative Employee\"\n                    },\n                    {\n                        \"id\": 4,\n                        \"name\": \"IT Closets\"\n                    }\n                ],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 5,\n                \"name\": \"Second Shift\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1007,\n                        \"name\": \"Second Shift\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 7,\n                        \"name\": \"2nd Shift\"\n                    }\n                ],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 6,\n                \"name\": \"Security\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1014,\n                        \"name\": \"Security\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 3,\n                        \"name\": \"All Access\"\n                    }\n                ],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 7,\n                \"name\": \"Shipping\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1010,\n                        \"name\": \"Shipping\"\n                    }\n                ],\n                \"access_levels\": [],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 8,\n                \"name\": \"Stock\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1009,\n                        \"name\": \"Stock\"\n                    }\n                ],\n                \"access_levels\": [],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 9,\n                \"name\": \"Supervisor\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1011,\n                        \"name\": \"Supervisor\"\n                    }\n                ],\n                \"access_levels\": [],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 10,\n                \"name\": \"Third Shift\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1008,\n                        \"name\": \"Third Shift\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 8,\n                        \"name\": \"3rd Shift\"\n                    }\n                ],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 11,\n                \"name\": \"RnD\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 2018,\n                        \"name\": \"RnD\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 5,\n                        \"name\": \"RnD\"\n                    }\n                ],\n                \"floor_levels\": []\n            },\n            {\n                \"id\": 12,\n                \"name\": \"Test1\",\n                \"users\": [],\n                \"user_groups\": [\n                    {\n                        \"id\": 1005,\n                        \"name\": \"Administrative\"\n                    }\n                ],\n                \"access_levels\": [\n                    {\n                        \"id\": 3,\n                        \"name\": \"All Access\"\n                    }\n                ],\n                \"floor_levels\": [\n                    {\n                        \"id\": 32769,\n                        \"name\": \"FL1\"\n                    }\n                ]\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\"\n    }\n}"}],"_postman_id":"18f288c4-0a66-4014-8ce7-03f234c222dd"},{"name":"View an Access Group","event":[{"listen":"test","script":{"id":"986a5c32-6935-4516-9e1d-a9332d95ddda","exec":[""],"type":"text/javascript"}}],"id":"c95e24ad-9922-4588-8803-69d7ee8c9ca9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/access_groups/:id","description":"<p>To view an Access Group with id {id} or :id<br />{id} or :id are markers for replacing with the required value.</p>\n<h4 id=\"known-errors\">Known errors:</h4>\n<ul>\n<li><p>Using id which doesn't exist</p>\n</li>\n<li><p>Using value other than number</p>\n</li>\n<li><p>Putting \"/\" at the end of the endpoint</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Access Group which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"1","key":"id"}]}},"response":[{"id":"5faac57e-d261-4b4a-9c17-5f0a28912648","name":"View One AG","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://127.0.0.1/api/access_groups/:id","host":["https://127.0.0.1"],"path":["api","access_groups",":id"],"variable":[{"key":"id","value":"1","description":"ID of the Access Group which will be viewed"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"584"},{"key":"Date","value":"Mon, 17 Feb 2025 07:44:02 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"AccessGroup\": {\n        \"id\": \"1\",\n        \"name\": \"Adminstrative\",\n        \"description\": \"\",\n        \"users\": [\n            {\n                \"name\": \"RB\",\n                \"user_id\": \"2\"\n            },\n            {\n                \"name\": \"AM\",\n                \"user_id\": \"3\"\n            },\n            {\n                \"name\": \"JJ\",\n                \"user_id\": \"61000\"\n            }\n        ],\n        \"user_count\": \"3\",\n        \"user_groups\": [\n            {\n                \"id\": \"1005\",\n                \"name\": \"Administrative\",\n                \"description\": \"\",\n                \"parent_id\": {\n                    \"id\": \"1\",\n                    \"name\": \"All Users\"\n                },\n                \"depth\": \"1\",\n                \"inherited\": \"true\",\n                \"face_count\": \"0\",\n                \"user_count\": \"0\"\n            }\n        ],\n        \"access_levels\": [\n            {\n                \"id\": \"1\",\n                \"name\": \"Administrative Employee\",\n                \"description\": \"Access level for Administrative Employee\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"},{"id":"10e611d1-9307-4ee5-959e-b468204a5911","name":"View One AG (With Floor Levels)","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://127.0.0.1/api/access_groups/:id","host":["https://127.0.0.1"],"path":["api","access_groups",":id"],"variable":[{"key":"id","value":"12","description":"ID of the Access Group which will be viewed"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"515"},{"key":"Date","value":"Mon, 17 Feb 2025 07:43:12 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"AccessGroup\": {\n        \"id\": \"12\",\n        \"name\": \"Test1\",\n        \"description\": \"\",\n        \"user_count\": \"0\",\n        \"user_groups\": [\n            {\n                \"id\": \"1005\",\n                \"name\": \"Administrative\",\n                \"description\": \"\",\n                \"parent_id\": {\n                    \"id\": \"1\",\n                    \"name\": \"All Users\"\n                },\n                \"depth\": \"1\",\n                \"inherited\": \"true\",\n                \"face_count\": \"0\",\n                \"user_count\": \"0\"\n            }\n        ],\n        \"access_levels\": [\n            {\n                \"id\": \"3\",\n                \"name\": \"All Access\",\n                \"description\": \"Access level for All Access\"\n            }\n        ],\n        \"floor_levels\": [\n            {\n                \"id\": \"32769\",\n                \"name\": \"FL1\",\n                \"description\": \"\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"c95e24ad-9922-4588-8803-69d7ee8c9ca9"},{"name":"View List of Users from an Access Group","event":[{"listen":"test","script":{"id":"7014b138-eb2c-4736-83de-32f01b1c0abb","exec":[""],"type":"text/javascript"}}],"id":"c030fcbc-9ba4-4f24-9564-416dfaadc367","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/access_groups/:id/users","description":"<p>To view user information only from AG with id {id}</p>\n<p>Known errors:</p>\n<ul>\n<li>Using id which doesn't exist will return success but show no record</li>\n<li>Using value other than number</li>\n<li>Putting \"/\" at the end of the endpoint</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_groups",":id","users"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Access Group which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"1","key":"id"}]}},"response":[{"id":"11985764-99b9-455c-af72-818aa2a6e277","name":"View List of Users from an Access Group","originalRequest":{"method":"GET","header":[],"url":{"raw":"https://127.0.0.1/api/access_groups/:id/users","host":["https://127.0.0.1"],"path":["api","access_groups",":id","users"],"variable":[{"key":"id","value":"1","description":"ID of the Access Group which will be viewed"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"235"},{"key":"Date","value":"Mon, 17 Feb 2025 07:47:24 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"UserCollection\": {\n        \"total\": \"3\",\n        \"rows\": [\n            {\n                \"user_id\": \"2\",\n                \"name\": \"RB\"\n            },\n            {\n                \"user_id\": \"3\",\n                \"name\": \"AM\"\n            },\n            {\n                \"user_id\": \"61000\",\n                \"name\": \"JJ\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"c030fcbc-9ba4-4f24-9564-416dfaadc367"},{"name":"Update an Access Group","id":"c52a526c-ae24-4306-83da-c9a39067c148","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AccessGroup\": {\r\n        \"name\": \"Meeting Room Name\",\r\n        \"description\": \"MR Description\",\r\n        \"access_levels\": [\r\n            {\r\n                \"id\": 1\r\n            }\r\n        ],\r\n        \"user_groups\": [\r\n            {\r\n                \"id\": 1\r\n            }\r\n        ],\r\n        \"users\": [\r\n            {\r\n                \"user_id\": 17\r\n            },\r\n            {\r\n                \"user_id\": 9932\r\n            },\r\n            {\r\n                \"user_id\": 2\r\n            }\r\n        ],\r\n        \"new_users\": [\r\n            {\r\n                \"user_id\": 1\r\n            }\r\n        ],\r\n        \"delete_users\": [\r\n            {\r\n                \"user_id\": 17\r\n            },\r\n            {\r\n                \"user_id\": 9932\r\n            },\r\n            {\r\n                \"user_id\": 2\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/access_groups/:id","description":"<p>This endpoint is used to replace Access Group with id <code>{id}/:id values</code> with the one specified by parameters below:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>The name of the AG. Must be unique</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>AG's description</td>\n</tr>\n<tr>\n<td>user_group</td>\n<td>Array</td>\n<td>N</td>\n<td>List of user group(s) id of the AG.  <br />To add or delete User Groups, put new ones in this field or remove what you want to delete from the field.</td>\n</tr>\n<tr>\n<td>access_levels</td>\n<td>Array</td>\n<td>N</td>\n<td>List of access level(s) id of the AG</td>\n</tr>\n<tr>\n<td>floor_levels</td>\n<td>Array</td>\n<td>N</td>\n<td>List of floor level(s) id of the AG</td>\n</tr>\n<tr>\n<td>new_users</td>\n<td>Array</td>\n<td>N</td>\n<td>List of user(s) id which will be added to the AG</td>\n</tr>\n<tr>\n<td>delete_users</td>\n<td>Array</td>\n<td>N</td>\n<td>List of user(s) id which will be deleted from the AG</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"notes\">Notes:</h4>\n<ul>\n<li><p>To add/delete multiple, repeat the braces (see users example)</p>\n</li>\n<li><p>When you add/update data, it will remove any previous data and add the one that you input<br />  Ex: If parameter description have value, and on update this parameter value is left empty, then the previous value will be removed.</p>\n</li>\n<li><p>To skip a record from updating, either skip the parameter or fill the current data on the update field.</p>\n</li>\n<li><p>When updating an AG, parameter user_group need to be filled if existing User Group want to be retained. If this parameter is left empty, the existing User Group(s) in the AG that should be still there will not be there.</p>\n</li>\n</ul>\n<h4 id=\"known-errors\">Known Errors:</h4>\n<ul>\n<li>Repeating the same value on parameter with multiple options</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Access Group which will be updated</p>\n","type":"text/plain"},"type":"any","value":"1","key":"id"}]}},"response":[{"id":"45dadc1a-95d5-4c94-855b-6d61b5fdc263","name":"Update an AG","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AccessGroup\": {\r\n        \"name\": \"Meeting Room Name\",\r\n        \"description\": \"MR Description\",\r\n        \"access_levels\": [\r\n            {\r\n                \"id\": 1\r\n            }\r\n        ],\r\n        \"user_groups\": [\r\n            {\r\n                \"id\": 1\r\n            }\r\n        ],\r\n        \"users\": [\r\n            {\r\n                \"user_id\": 17\r\n            },\r\n            {\r\n                \"user_id\": 9932\r\n            },\r\n            {\r\n                \"user_id\": 2\r\n            }\r\n        ],\r\n        \"new_users\": [\r\n            {\r\n                \"user_id\": 1\r\n            }\r\n        ],\r\n        \"delete_users\": [\r\n            {\r\n                \"user_id\": 17\r\n            },\r\n            {\r\n                \"user_id\": 9932\r\n            },\r\n            {\r\n                \"user_id\": 2\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://127.0.0.1/api/access_groups/:id","host":["https://127.0.0.1"],"path":["api","access_groups",":id"],"variable":[{"key":"id","value":"1","description":"ID of the Access Group which will be updated"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"Set-Cookie","value":"JSESSIONID=2FFEDBAE36C395555DECAFA23AA6205D; Path=/; Secure; HttpOnly"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"107"},{"key":"Date","value":"Tue, 04 Feb 2025 08:02:39 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"c52a526c-ae24-4306-83da-c9a39067c148"},{"name":"Delete an Access Group","id":"8eaed861-0c92-4247-b84f-0981068a2737","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/access_groups?id=","description":"<p>To delete Access Group as specified by QUERY parameter <strong>id</strong> (?id=)<br /><strong>id</strong> is a required value.</p>\n<p>To get an Access Group's id, you can use <code>GET /api/access_groups</code> to view all available Access Groups, alternatively you can also use <code>POST /api/v2/access_groups/search</code> for the same result.</p>\n<h4 id=\"known-errors\">Known errors:</h4>\n<ul>\n<li><p>Using id which doesn't exist</p>\n</li>\n<li><p>Using value other than number</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_groups"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the AG which will be deleted</p>\n","type":"text/plain"},"key":"id","value":""}],"variable":[]}},"response":[{"id":"650a9674-3191-4444-87f5-1fcd370f9347","name":"Delete an Access Group","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://127.0.0.1/api/access_groups?id=2","host":["https://127.0.0.1"],"path":["api","access_groups"],"query":[{"key":"id","value":"2","description":"ID of the AG which will be deleted"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"107"},{"key":"Date","value":"Mon, 17 Feb 2025 07:24:47 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"8eaed861-0c92-4247-b84f-0981068a2737"}],"id":"9ead7190-6d0d-48e4-8ff4-cbac6497813c","description":"<p>This section contains all API related to Access Group (AG)</p>\n","event":[{"listen":"prerequest","script":{"id":"e9490b97-2d27-4f1a-a5a0-690ca5348598","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"1353b428-f624-4b08-bec2-ec16e95bacbe","type":"text/javascript","exec":["pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});"]}}],"_postman_id":"9ead7190-6d0d-48e4-8ff4-cbac6497813c","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Access Level","item":[{"name":"Create New AL","event":[{"listen":"test","script":{"id":"135c0428-8658-4846-8ab2-c75154276ea8","exec":[""],"type":"text/javascript"}}],"id":"190638db-f2bf-4999-8989-936c92d1466a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AccessLevel\": {\r\n        \"name\": \"Access Level Name\",\r\n        \"description\": \"Access Level Description\",\r\n        \"access_level_items\": [\r\n            {\r\n                \"doors\": [\r\n                    {\r\n                        \"id\": 75\r\n                    },\r\n                    {\r\n                        \"id\": 80\r\n                    }\r\n                ],\r\n                \"schedule_id\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/access_levels","description":"<p>This request is used to make a new Access Level (AL)</p>\n<p>The parameters are as follows:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>The name of the AL. Must be unique</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>AL's description</td>\n</tr>\n<tr>\n<td>access_level_items</td>\n<td>Array</td>\n<td>N</td>\n<td>This array is linked to two instance, schedule_id and doors, each with key:value parameter pair of id:id_num. doors is also an array, so you can put multiple value here.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Known errors:</p>\n<ul>\n<li>Putting \"/\" at the end of the endpoint</li>\n<li>name is a required and unique parameter</li>\n<li>Duplicate id on doors instance</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_levels"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"190638db-f2bf-4999-8989-936c92d1466a"},{"name":"View All AL","event":[{"listen":"test","script":{"id":"dd6c7c18-6024-4720-979c-822f424280ad","exec":[""],"type":"text/javascript"}}],"id":"266882a7-3db2-4b3b-a1b0-e865ec0ef516","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/access_levels?limit=50&offset=0&order_by=id:false","description":"<p>This request is used to view all Access Level (AL)</p>\n<p>The parameter type is QUERY.</p>\n<p>Known errors</p>\n<ul>\n<li>Duplicate id on doors instance</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_levels"],"host":["https://127.0.0.1"],"query":[{"disabled":true,"description":{"content":"<p>?</p>\n","type":"text/plain"},"key":"filterObject","value":""},{"description":{"content":"<p>Limit response record(s) by the amount specified on this parameter. 0 for show all.</p>\n","type":"text/plain"},"key":"limit","value":"50"},{"description":{"content":"<p>Shift response record(s) by the amount specified on this parameter. default value = 0</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"disabled":true,"description":{"content":"<p>?</p>\n","type":"text/plain"},"key":"SelectAllYN","value":"true"},{"description":{"content":"<p>Order the response record(s) </p>\n","type":"text/plain"},"key":"order_by","value":"id:false"},{"disabled":true,"description":{"content":"<p>?</p>\n","type":"text/plain"},"key":"query","value":""},{"disabled":true,"description":{"content":"<p>?</p>\n","type":"text/plain"},"key":"total","value":""}],"variable":[]}},"response":[],"_postman_id":"266882a7-3db2-4b3b-a1b0-e865ec0ef516"},{"name":"Update an AL","event":[{"listen":"test","script":{"id":"6cd63a5e-25c4-417d-bb91-8f2ec96ffa6e","exec":[""],"type":"text/javascript"}}],"id":"d4b71728-fd23-48ba-b841-fa08ec11ab4a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AccessLevel\": {\r\n        \"name\": \"Test Update\",\r\n        \"description\": \"Update\",\r\n        \"access_level_items\": [\r\n            {\r\n                \"id\": \"126\",\r\n                \"doors\": [\r\n                    {\r\n                        \"id\": \"75\"\r\n                    },\r\n                    {\r\n                        \"id\": \"80\"\r\n                    }\r\n                ],\r\n                \"schedule_id\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            },\r\n            {\r\n                \"id\": \"128\",\r\n                \"doors\": [\r\n                    {\r\n                        \"id\": \"75\"\r\n                    },\r\n                    {\r\n                        \"id\": 79\r\n                    }\r\n                ],\r\n                \"schedule_id\": {\r\n                    \"id\": \"2\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/access_levels/:id","description":"<p>This request is used to update an Access Level (AL)</p>\n<p>Known errors:</p>\n<ul>\n<li>Putting \"/\" at the end of the endpoint</li>\n<li>name is a required and unique parameter</li>\n<li>Duplicate id on doors instance</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_levels",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the AL that will be updated</p>\n","type":"text/plain"},"type":"any","value":"41","key":"id"}]}},"response":[],"_postman_id":"d4b71728-fd23-48ba-b841-fa08ec11ab4a"},{"name":"Delete an AL","event":[{"listen":"test","script":{"id":"cc0cdac1-2b4a-4bd4-bb97-de75499a4a01","exec":[""],"type":"text/javascript"}}],"id":"f5253114-e5d2-4444-ad7e-619244e4330b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/access_levels/:id","description":"<p>This request is used to delete an existing Access Level (AL)</p>\n<p>Known errors:</p>\n<ul>\n<li>Putting \"/\" at the end of the endpoint</li>\n<li>Value other than number on PATH variable</li>\n<li>Non-existent record id on PATH variable will return success but no action.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","access_levels",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the AL that will be deleted</p>\n","type":"text/plain"},"type":"any","value":"12","key":"id"}]}},"response":[],"_postman_id":"f5253114-e5d2-4444-ad7e-619244e4330b"}],"id":"03857e96-dea5-4bb5-9980-684b6059a51d","description":"<p>This section contains all API related to Access Level (AL)</p>\n","event":[{"listen":"prerequest","script":{"id":"3d748b24-e3c6-4eb6-8834-6f8bf602cb52","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"0aeac151-4b53-42e3-8e39-830266ff976f","type":"text/javascript","exec":["pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});"]}}],"_postman_id":"03857e96-dea5-4bb5-9980-684b6059a51d","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Backup","item":[{"name":"View Backup Configuration","id":"87892b2c-8316-44f9-8082-29c5790d3ba4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/getBackupDbConfig","description":"<p>This API is used to view BioStar 2 Backup configuration.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","getBackupDbConfig"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"87892b2c-8316-44f9-8082-29c5790d3ba4"},{"name":"Check Running Schedule","id":"cf78be59-f65e-470b-b8f0-173ccf206c7d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/checkBackupScheduler","description":"<p>This API is used to check if there's any running backup process.</p>\n<p>Message response will be True if there's any, and False if there's no running backup process.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","checkBackupScheduler"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"cf78be59-f65e-470b-b8f0-173ccf206c7d"},{"name":"Update Backup Configuration","id":"e931c48f-b21e-47a2-8f09-3adadb0553ab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"use\": \"true\",\r\n    \"cycle\": \"10\",\r\n    \"path\": \"C:\\\\Backup\",\r\n    \"minute\": \"12\",\r\n    \"hour\": \"0\",\r\n    \"days\": \"*\",\r\n    \"month\": \"*\",\r\n    \"weeks\": \"?\",\r\n    \"userId\": \"1\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/setting/modifyBackupDbConfig","description":"<p>This API is used to modify BioStar 2 backup configuration.</p>\n<p>BODY Parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>use</td>\n<td>String</td>\n<td>Y</td>\n<td>Toggle true to use Shceduled Backup</td>\n</tr>\n<tr>\n<td>cycle</td>\n<td>String</td>\n<td>Y</td>\n<td>Number of backup files to keep (1 to 100)</td>\n</tr>\n<tr>\n<td>path</td>\n<td>String</td>\n<td>Y</td>\n<td>Folder path, make sure that the folder exist</td>\n</tr>\n<tr>\n<td>minute</td>\n<td>String</td>\n<td>Y</td>\n<td>Minute value for Scheduled Backup (0 to 59)</td>\n</tr>\n<tr>\n<td>hour</td>\n<td>String</td>\n<td>Y</td>\n<td>Hour value for Scheduled Backup (0 to 23)</td>\n</tr>\n<tr>\n<td>days</td>\n<td>String</td>\n<td>Y</td>\n<td>Date value for Scheduled Backup</td>\n</tr>\n<tr>\n<td>month</td>\n<td>String</td>\n<td>Y</td>\n<td>Month value for Scheduled Backup. Leave it as * since currently it only support Daily and Weekly.</td>\n</tr>\n<tr>\n<td>weeks</td>\n<td>String</td>\n<td>Y</td>\n<td>Day value for Scheduled Backup. Used when it's configured as Weekly Backup. (mon tue wed thu fri sat sun, default value is ?)</td>\n</tr>\n<tr>\n<td>userId</td>\n<td>String</td>\n<td>Y</td>\n<td>UserId of the user who modify the configuration</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","modifyBackupDbConfig"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"e931c48f-b21e-47a2-8f09-3adadb0553ab"},{"name":"Run Backup","id":"8860e0a7-c3f9-47ee-91e6-93ef1bb45acf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"use\": \"false\",\r\n    \"cycle\": \"5\",\r\n    \"path\": \"C:\\\\Program Files\\\\BioStar 2(x64)\\\\Backup\",\r\n    \"minute\": \"0\",\r\n    \"hour\": \"0\",\r\n    \"days\": \"*\",\r\n    \"month\": \"*\",\r\n    \"weeks\": \"*\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/setting/backupNow","description":"<p>This API is used to run Backup process.</p>\n<p>It is required to have BODY parameters when running this API. Use <code>GET /api/v2/setting/getBackupDbConfig</code> for BODY payload.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","backupNow"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"8860e0a7-c3f9-47ee-91e6-93ef1bb45acf"}],"id":"370566f9-2be5-411c-a4f1-7321e1f05b52","_postman_id":"370566f9-2be5-411c-a4f1-7321e1f05b52","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Cards","item":[{"name":"Update Wiegand Formats","id":"9a031221-3cf6-42b0-b2c5-14d80d10df4e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"WiegandFormat\": {\r\n        \"id\": \"5\",\r\n        \"name\": \"Test\",\r\n        \"description\": \"Test Desc\",\r\n        \"length\": \"32\",\r\n        \"use_facility_code\": \"true\",\r\n        \"id_fields\": [\r\n            \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgAAAA=\",\r\n            \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf///4=\"\r\n        ],\r\n        \"parity_fields\": [\r\n            \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAA=\",\r\n            \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE=\"\r\n        ],\r\n        \"parity_types\": [\r\n            \"1\",\r\n            \"2\"\r\n        ],\r\n        \"parity_positions\": [\r\n            \"0\",\r\n            \"31\"\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards/wiegand_formats/:id","description":"<p>It is possible to use a custom wiegand format.</p>\n<p>To create a custom format, you can edit the provided formats which is between id number 5 to 14.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>N</td>\n<td>ID of the wiegand format.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>N</td>\n<td>Name of the wiegand format.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the wiegand format.</td>\n</tr>\n<tr>\n<td>use_facility_code</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle to use facility code.</td>\n</tr>\n<tr>\n<td>length</td>\n<td>Number</td>\n<td>N</td>\n<td>Total bits of the card.</td>\n</tr>\n<tr>\n<td>id_fields</td>\n<td></td>\n<td>N</td>\n<td>Encoded input of the ID bits. Facility code will also be placed here.  <br />Use comma as separator.</td>\n</tr>\n<tr>\n<td>parity_fields</td>\n<td></td>\n<td>N</td>\n<td>Encoded input of the parity bits.</td>\n</tr>\n<tr>\n<td>parity_types</td>\n<td>Number</td>\n<td>N</td>\n<td>1=Odd, 2=Even</td>\n</tr>\n<tr>\n<td>parity_positions</td>\n<td>Number</td>\n<td>N</td>\n<td>Position of the parity bits. Put it on the same sequence as parity_types.</td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","wiegand_formats",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the wiegand format which will be updated.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"9a031221-3cf6-42b0-b2c5-14d80d10df4e"},{"name":"Delete Smart Card Layout","id":"3c07b8b0-0c55-4e1a-ac58-f7f6e0ad0dfd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/cards/layouts?id","description":"<p>This API is used to delete smart card layout from BioStar 2.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","layouts"],"host":["https://127.0.0.1"],"query":[{"key":"id","value":null}],"variable":[]}},"response":[],"_postman_id":"3c07b8b0-0c55-4e1a-ac58-f7f6e0ad0dfd"},{"name":"View All Card Types","id":"12f91d33-761f-4492-98f8-20a55037048d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards/types","description":"<p>This API is used to view all available card types.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","types"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"12f91d33-761f-4492-98f8-20a55037048d"},{"name":"Check Card Availability","id":"22453195-0290-48e8-92fa-56038f30056e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/cards/registered?card_id=123","description":"<p>This API is used to check whether a card already posted on the system or not.</p>\n<p>If card already posted, then it will show the card's detail on the response.</p>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.9:</p>\n<ul>\n<li>Trailing slashes (<code>/</code>) at the end of this endpoint are <strong>no longer supported</strong>.</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","cards","registered"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the card which will be checked.</p>\n","type":"text/plain"},"key":"card_id","value":"123"}],"variable":[]}},"response":[],"_postman_id":"22453195-0290-48e8-92fa-56038f30056e"},{"name":"List All Cards","id":"b66ba897-8142-4d2f-86d8-7e856ec8b17b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards?limit=50&offset=0&card_type=wiegand","description":"<p>This API is used to view all cards recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":"50"},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"description":{"content":"<p>Filter the response by card type.</p>\n","type":"text/plain"},"key":"card_type","value":"wiegand"}],"variable":[]}},"response":[],"_postman_id":"b66ba897-8142-4d2f-86d8-7e856ec8b17b"},{"name":"View a Card Detail","id":"fb4e3da5-6353-48cf-b63d-1ef8a72ca144","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards?query=1169166509350528","description":"<p>This API is used to find a card by card ID and find out who owns the card.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the card which will be viewed</p>\n","type":"text/plain"},"key":"query","value":"1169166509350528"}],"variable":[]}},"response":[],"_postman_id":"fb4e3da5-6353-48cf-b63d-1ef8a72ca144"},{"name":"List Unassigned Cards","id":"c0a0421d-696a-4eda-8355-d88445048d51","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards/unassigned?card_type=csn&limit&offset&wiegand_format_id=4","description":"<p>This API is used to view all unassigned cards recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","unassigned"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the response to show only the specified type of card. Use plus (+) sign as separator to filter by multiple types.</p>\n","type":"text/plain"},"key":"card_type","value":"csn"},{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":null},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":null},{"description":{"content":"<p>Limit the response to show only the specified wiegand format. Remove this parameter to show all.</p>\n","type":"text/plain"},"key":"wiegand_format_id","value":"4"}],"variable":[]}},"response":[],"_postman_id":"c0a0421d-696a-4eda-8355-d88445048d51"},{"name":"List Assigned Cards","id":"f8512e96-1313-4a7c-992e-1c77ca181737","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards/assigned?card_type=wiegand&offset=0&wiegand_format_id=","description":"<p>This API is used to view all assigned cards recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","assigned"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the response to show only the specified type of card. Use plus (+) sign as separator to filter by multiple types.</p>\n","type":"text/plain"},"key":"card_type","value":"wiegand"},{"disabled":true,"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":""},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"description":{"content":"<p>Limit the response to show only the specified wiegand format. Remove this parameter to show all.</p>\n","type":"text/plain"},"key":"wiegand_format_id","value":""}],"variable":[]}},"response":[],"_postman_id":"f8512e96-1313-4a7c-992e-1c77ca181737"},{"name":"List Blacklisted Cards","id":"849f7f6a-5045-4743-b7c4-f485f646a946","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards/blacklist?limit=1000&offset=0","description":"<p>This API is used to view all blacklisted cards recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","blacklist"],"host":["https://127.0.0.1"],"query":[{"disabled":true,"description":{"content":"<p>Limit the response to show only the specified type of card. Use plus (+) sign as separator to filter by multiple types.</p>\n","type":"text/plain"},"key":"card_type","value":"wiegand"},{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":"1000"},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"disabled":true,"description":{"content":"<p>Limit the response to show only the specified wiegand format. Remove this parameter to show all.</p>\n","type":"text/plain"},"key":"wiegand_format_id","value":""}],"variable":[]}},"response":[],"_postman_id":"849f7f6a-5045-4743-b7c4-f485f646a946"},{"name":"Delete Blacklisted Card","id":"f9ab7749-f593-4d6f-ab1e-f97be405a89e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/cards/blacklist?id=50","description":"<p>This API is used to remove a blacklisted card from the list.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","blacklist"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the blacklisted card which will be removed from the list.</p>\n","type":"text/plain"},"key":"id","value":"50"}],"variable":[]}},"response":[],"_postman_id":"f9ab7749-f593-4d6f-ab1e-f97be405a89e"},{"name":"Blacklist Card","id":"d3bd37f2-cb32-4f09-9e98-db06228abc85","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Blacklist\": {\r\n        \"card_id\": {\r\n            \"id\": \"49\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards/blacklist","description":"<p>This API is used to add a card to blacklist.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the card which will be added to the blacklist.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","blacklist"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"d3bd37f2-cb32-4f09-9e98-db06228abc85"},{"name":"View Wiegand Formats","id":"4726fd15-2ba4-4224-8286-f924b34e8a82","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards/wiegand_formats","description":"<p>This API is used to view all available wiegand format.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","wiegand_formats"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"4726fd15-2ba4-4224-8286-f924b34e8a82"},{"name":"View Wiegand Format Detail","id":"3993c03d-b38a-4d6b-ac51-1cb7c4ea3349","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards/wiegand_formats/:id","description":"<p>This API is used to view a wiegand format detail.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","wiegand_formats",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"1","key":"id"}]}},"response":[],"_postman_id":"3993c03d-b38a-4d6b-ac51-1cb7c4ea3349"},{"name":"View Smart Cards Layout","id":"0f612045-4c2f-40d3-b6cc-1508e48fac13","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards/layouts?limit&offset","description":"<p>This API is used to view all available smart card layouts.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","layouts"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":null},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":null}],"variable":[]}},"response":[],"_postman_id":"0f612045-4c2f-40d3-b6cc-1508e48fac13"},{"name":"View a Smart Card Layout Details","id":"59ff11c7-c32c-49bb-947e-733242b3e4eb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/cards/layouts/:id","description":"<p>This API is used to view a smart card layout details.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","layouts",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the card layout which will be viewed.</p>\n","type":"text/plain"},"type":"any","value":"1","key":"id"}]}},"response":[],"_postman_id":"59ff11c7-c32c-49bb-947e-733242b3e4eb"},{"name":"Create Smart Card Layout","id":"64173396-9fbf-4b4d-a0f8-c89119365795","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CardLayout\": {\r\n        \"name\": \"smart_test\",\r\n        \"use_second_key\": \"false\",\r\n        \"number_of_template\": 2,\r\n        \"template_size\": 300,\r\n        \"mifare_primary_key\": \"\",\r\n        \"mifare_start_block_index\": \"4\",\r\n        \"mifare_second_key\": \"\",\r\n        \"iclass_primary_key\": \"\",\r\n        \"iclass_second_key\": \"\",\r\n        \"iclass_start_block_index\": \"13\",\r\n        \"desfire_primary_key\": \"\",\r\n        \"desfire_second_key\": \"\",\r\n        \"desfire_app_id\": 1,\r\n        \"desfire_file_id\": 1,\r\n        \"desfire_encryption_type\": 0,\r\n        \"desfire_advanced_mode\": 0,\r\n        \"des_adv_app_master_key_index\": \"0\",\r\n        \"des_adv_file_read_access_key_index\": \"1\",\r\n        \"des_adv_file_write_access_key_index\": \"2\",\r\n        \"seos_primary_key\": \"\",\r\n        \"seos_second_key\": \"\",\r\n        \"seos_adf\": \"2A8570811E1000070000020000\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards/layouts","description":"<p>This API is used to create smart card layout.</p>\n<p>Fill the corresponding parameter with the card's specification.</p>\n<p>If the card uses default configuration, then simply fill the name and run the API.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","layouts"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"64173396-9fbf-4b4d-a0f8-c89119365795"},{"name":"Create Card (CSN)","event":[{"listen":"prerequest","script":{"id":"86421670-015e-4ff2-b580-8955969000b8","exec":["if (pm.iterationData.get(\"value\") === undefined) {\r","    pm.collectionVariables.set(\"iterIDVal\", '1234');\r","} else {\r","    val = pm.iterationData.get(\"value\");\r","    pm.collectionVariables.set(\"iterIDVal\", val);\r","}"],"type":"text/javascript","packages":{}}}],"id":"3943f8c7-d70b-458d-89bf-bbd5076bb160","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CardCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"card_id\": \"101\",\r\n                \"card_type\": {\r\n                    \"id\": \"0\",\r\n                    \"type\" : \"1\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards","description":"<p>This API is used to add a card to BioStar 2.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_type:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type card id of the card. See \"View All Card Types\" for all type of cards.  <br />0: CSN card  <br />1: Wiegand Card  <br />2: Secure Credential Card (Smart card)  <br />3: Access on Card (Smart card)  <br />4: Mobile CSN Card  <br />5: Wiegand Mobile  <br />6: QR/Barcode  <br />7: BioStar 2 QR</td>\n</tr>\n<tr>\n<td>card_type:type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type allocation of the card type. View the list using /api/cards/types to determine the correct value.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input value shown/read when scanning the card.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>NOTE:</strong></p>\n<ul>\n<li><p>This API will return error if the card_id is already exist on the database. Use \"Check Card Availability\" API to validate.</p>\n</li>\n<li><p>As per BioStar 2 version 2.9.4, this API will return an error when generating CSN Card with invalid card id.<br />  <code>Error Code: ACB_ERROR_CODE.415</code><br />  Cases of invalid card id:</p>\n<ul>\n<li><p>CSN with card id staring with 0</p>\n</li>\n<li><p>CSN with card id using letters</p>\n</li>\n<li><p>More than 32 characters</p>\n</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"3943f8c7-d70b-458d-89bf-bbd5076bb160"},{"name":"Create Card (CSN Mobile)","id":"88cdf63f-aebf-4188-be68-5157ca88a9e1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CardCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"isUserPhoto\": true,\r\n                \"isDepartment\": true,\r\n                \"isTitle\": true,\r\n                \"start_datetime\": \"2022-04-25T14:36:00.00Z\",\r\n                \"expiry_datetime\": \"2022-04-26T14:36:00.00Z\",\r\n                \"card_type\": {\r\n                    \"id\": \"4\",\r\n                    \"type\" : \"4\"\r\n                },\r\n                \"display_card_id\": \"16508685698911631\",\r\n                \"card_id\": \"16508685698911631\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards","description":"<p>This API is used to add a card to BioStar 2.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_type:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type card id of the card. See \"View All Card Types\" for all type of cards.  <br />0: CSN card  <br />1: Wiegand Card  <br />2: Secure Credential Card (Smart card)  <br />3: Access on Card (Smart card)  <br />4: Mobile CSN Card  <br />5: Wiegand Mobile  <br />6: QR/Barcode  <br />7: BioStar 2 QR</td>\n</tr>\n<tr>\n<td>card_type:type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type allocation of the card type. View the list using /api/cards/types to determine the correct value.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input value recorded on the card.</td>\n</tr>\n<tr>\n<td>display_card_id</td>\n<td>Number</td>\n<td>N</td>\n<td>Input value shown/read when scanning the card.</td>\n</tr>\n<tr>\n<td>isUserPhoto</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle true if the credential will be using the user photo (photo must exist)</td>\n</tr>\n<tr>\n<td>isDepartment</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle true if the credential will be using the user department (department field must be filled)</td>\n</tr>\n<tr>\n<td>isTitle</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle true if the credential will be using the user title (title field must be filled).</td>\n</tr>\n<tr>\n<td>start_datetime</td>\n<td>Date</td>\n<td>Y</td>\n<td>Start datetime for the credential availability.</td>\n</tr>\n<tr>\n<td>expiry_datetime</td>\n<td>Date</td>\n<td>Y</td>\n<td>End datetime for the credential availability.</td>\n</tr>\n</tbody>\n</table>\n</div><p>NOTE:</p>\n<ul>\n<li>This API will return error if the card_id is already exist on the database. Use \"Check Card Availability\" API to validate.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"88cdf63f-aebf-4188-be68-5157ca88a9e1"},{"name":"Create Card (Wiegand without Facility Code)","id":"5fcc1b9b-08a2-4175-9e5a-50156867557a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CardCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"card_id\": \"1000002\",\r\n                \"card_type\": {\r\n                    \"id\": \"1\",\r\n                    \"type\" : \"10\"\r\n                },\r\n                \"wiegand_format_id\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards","description":"<p>For this example, there's no conversion required since the card id already have 35 bit value.</p>\n<p>19044429267 &gt; Decimal<br />100 0110 1111 0010 0010 1110 1101 1101 0011 &gt; Binary (35 Bits)</p>\n<p>Just make sure to use format id which doesn't use facility code.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_type:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type card id of the card. See \"View All Card Types\" for all type of cards.  <br />0: CSN card  <br />1: Wiegand Card  <br />2: Secure Credential Card (Smart card)  <br />3: Access on Card (Smart card)  <br />4: Mobile CSN Card  <br />5: Wiegand Mobile  <br />6: QR/Barcode  <br />7: BioStar 2 QR</td>\n</tr>\n<tr>\n<td>card_type:type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type allocation of the card type. View the list using /api/cards/types to determine the correct value.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input value shown/read when scanning the card.</td>\n</tr>\n<tr>\n<td>wiegand_format_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>If card_type is wiegand, then fill this parameter:  <br />0: 26 bit format  <br />1: HID 37 bit-H10302  <br />2: HID 37 bit-H10304  <br />3: HID Corporate 1000 (35 bit)  <br />4: HID Corporate 1000 (48 bit)  <br />5~14: Custom formats.</td>\n</tr>\n</tbody>\n</table>\n</div><p>NOTE:</p>\n<ul>\n<li>This API will return error if the card_id is already exist on the database. Use \"Check Card Availability\" API to validate.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"5fcc1b9b-08a2-4175-9e5a-50156867557a"},{"name":"Create Card (Wiegand with Facility Code)","id":"b8c64703-b186-41b4-ac54-afea73cfdd8a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CardCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"card_id\": \"23602938391607\",\r\n                \"card_type\": {\r\n                    \"id\": \"1\",\r\n                    \"type\" : \"10\"\r\n                },\r\n                \"wiegand_format_id\": {\r\n                    \"id\": \"4\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards","description":"<p>To input card that is using facility code, there's conversion that needs to be done first.</p>\n<p>The process is:</p>\n<ol>\n<li>Get the Facility Code and Card ID</li>\n<li>Convert it to Binary</li>\n<li>Combine the binary value of the Facility Code and Card ID</li>\n<li>Convert it to Decimal</li>\n<li>Use the converted value on card_id parameter</li>\n<li>Don't forget to select the corresponding wiegand_format_id</li>\n</ol>\n<hr />\n<p><strong>Conversion when The Card is Using Facility Code</strong></p>\n<hr />\n<blockquote>\n<p>E: Even<br />O: Odd<br />C: Facility Code<br />D: ID</p>\n</blockquote>\n<p><strong>26 bit SIA Standard-H10301</strong><br />Position: 0-25</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>E</th>\n<th>CCCCCCCC</th>\n<th>DDDDDDDDDDDDDDDD</th>\n<th>O</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Position</td>\n<td>0</td>\n<td>1-8</td>\n<td>9-24</td>\n<td>25</td>\n</tr>\n</tbody>\n</table>\n</div><p>E&amp;O : Not included on the calculation<br />Bit : 8 bits + 16 bits<br />Byte: 1 byte + 2 bytes<br />Hexa: FF + FFFF</p>\n<p>Example:<br />Facility Code + Card ID<br />20 + 10000 &gt; Decimal<br />14 + 2710 &gt; Hex<br />14 2710 &gt; Combined Hex (CH)<br />1320720 &gt; Converted CH to Decimal. Use this as input</p>\n<p><strong>HID 37 bit-H10304</strong><br />Position: 0-36</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>E</th>\n<th>CCCCCCCCCCCCCCCC</th>\n<th>DDDDDDDDDDDDDDDDDDD</th>\n<th>O</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Position</td>\n<td>0</td>\n<td>1-16</td>\n<td>17-35</td>\n<td>36</td>\n</tr>\n</tbody>\n</table>\n</div><p>E&amp;O : Not included on the calculation<br />Bit : 16 bits + 19 bits</p>\n<p>Example:<br />Facility Code + Card ID<br />43962 + 123456 &gt; Decimal<br />1010 1011 1011 1010 + 001 1110 0010 0100 0000 &gt; Binary (16 + 19 bits)<br />1010 1011 1011 1010 0011 1100 0100 1000 000 &gt; Combined Binary (CB)<br />23048872512 &gt; Converted CB to Decimal. Use this as input</p>\n<p><strong>HID Corporate 1000</strong><br />Position 0-34</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>O</th>\n<th>E</th>\n<th>CCCCCCCCCCCCCCCC</th>\n<th>DDDDDDDDDDDDDDDDDDD</th>\n<th>O</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Position</td>\n<td>0</td>\n<td>1</td>\n<td>2-13</td>\n<td>14-33</td>\n<td>34</td>\n</tr>\n</tbody>\n</table>\n</div><p>E&amp;O : Not included on the calculation<br />Bit : 12 bits + 20 bits</p>\n<p>Example:<br />Facility Code + Card ID<br />2543 + 1005255 &gt; Decimal<br />1001 1110 1111 + 1111 0101 0110 1100 0111 &gt; Binary (12 + 20 bits)<br />1001 1110 1111 1111 0101 0110 1100 0111 &gt; Combined Binary (CB)<br />2667534023 &gt; Converted CB to Decimal. Use this as input</p>\n<p><strong>HID Corporate 1000 (48bit)</strong><br />Position 0-47</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>O</th>\n<th>E</th>\n<th>CCCCCCCCCCCCCCCCCCCCCC</th>\n<th>DDDDDDDDDDDDDDDDDDDDDDD</th>\n<th>O</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Position</td>\n<td>0</td>\n<td>1</td>\n<td>2-23</td>\n<td>24-46</td>\n<td>47</td>\n</tr>\n</tbody>\n</table>\n</div><p>E&amp;O : Not included on the calculation<br />Bit : 22 bits + 23 bits</p>\n<p>Example:<br />Facility Code + Card ID<br />2813689 + 4336695<br />10 1010 1110 1110 1111 1001 + 100 0010 0010 1100 0011 0111 &gt; Binary<br />1010 1011 1011 1011 1110 0110 0001 0001 0110 0001 1011 1 &gt; Combined Binary (CB)<br />23602938391607 &gt; Converted CB to Decimal. Use this as input</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"b8c64703-b186-41b4-ac54-afea73cfdd8a"},{"name":"Create Card (Secure Credential)","id":"61ec6074-738d-4e26-a31e-7917e1f9788a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"SmartCard\": {\r\n        \"user_id\": {\r\n            \"user_id\": \"8\",\r\n            \"fingerprint_templates\": [\r\n                {\r\n                    \"finger_index\": \"0\"\r\n                }\r\n            ],\r\n            \"visual_face_templates\": []\r\n        },\r\n        \"card_id\": {\r\n            \"card_id\": \"898\",\r\n            \"card_type_id\": {\r\n                \"id\": \"2\"\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/:dev_id/write_card","description":"<p>This API is used to create a secure credential card.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>User ID of the user which will be using this card and which the biometric will be linked to.</td>\n</tr>\n<tr>\n<td>fingerprint_templates:finger_index</td>\n<td>Number</td>\n<td>N</td>\n<td>Fingerprint template of the user.</td>\n</tr>\n<tr>\n<td>visual_face_templates</td>\n<td>Number</td>\n<td>N</td>\n<td>Visual face template of the user.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Card ID which will be displayed and used as record's key.</td>\n</tr>\n<tr>\n<td>card_type_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type of the card which will be created.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":dev_id","write_card"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>Device ID with the corresponding layout set which will be used to write the card.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"dev_id"}]}},"response":[],"_postman_id":"61ec6074-738d-4e26-a31e-7917e1f9788a"},{"name":"Create Card (Access on Card)","id":"de0dca6c-1975-4215-bff3-bf0e038f63e8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"SmartCard\": {\r\n        \"user_id\": {\r\n            \"user_id\": \"8\",\r\n            \"fingerprint_templates\": [\r\n                {\r\n                    \"finger_index\": \"0\"\r\n                }\r\n            ],\r\n            \"visual_face_templates\": []\r\n        },\r\n        \"card_id\": {\r\n            \"card_id\": \"8\",\r\n            \"card_type_id\": {\r\n                \"id\": \"3\"\r\n            },\r\n            \"use_alphanumeric_user_id\": \"false\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/:dev_id/write_card","description":"<p>This example shows how to create Access on Card.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>User ID of the user which will be using this card and which the biometric will be linked to.</td>\n</tr>\n<tr>\n<td>fingerprint_templates:finger_index</td>\n<td>Number</td>\n<td>N</td>\n<td>Fingerprint template of the user.</td>\n</tr>\n<tr>\n<td>visual_face_templates</td>\n<td>Number</td>\n<td>N</td>\n<td>Visual face template of the user.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Card ID which will be displayed and recorded on the system. Use the same number as user_id.</td>\n</tr>\n<tr>\n<td>card_type_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type of the card which will be created.</td>\n</tr>\n<tr>\n<td>use_alphanumeric_user_id</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle true if user_id uses alphanumeric setting.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":dev_id","write_card"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>Device ID with the corresponding layout set which will be used to write the card.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"dev_id"}]}},"response":[],"_postman_id":"de0dca6c-1975-4215-bff3-bf0e038f63e8"},{"name":"Create QR/Barcode","id":"af8d17a7-2b03-4c85-a86c-5115dd9090ad","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CardCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"card_id\": \"1000002\",\r\n                \"card_type\": {\r\n                    \"id\": \"6\",\r\n                    \"type\" : \"6\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards","description":"<p>This API is used to add a QR/Barcode to BioStar 2.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_type:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type card id of the card. See \"View All Card Types\" for all type of cards.  <br />0: CSN card  <br />1: Wiegand Card  <br />2: Secure Credential Card (Smart card)  <br />3: Access on Card (Smart card)  <br />4: Mobile CSN Card  <br />5: Wiegand Mobile  <br />6: QR/Barcode  <br />7: BioStar 2 QR</td>\n</tr>\n<tr>\n<td>card_type:type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type allocation of the card type. View the list using /api/cards/types to determine the correct value.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input value shown/read when scanning the card.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"notes\">NOTES:</h4>\n<ul>\n<li><p>This API will return error if the card_id is already exist on the database. Use \"Check Card Availability\" API to validate.</p>\n</li>\n<li><p>When using <code>card_type</code> with ID <code>6</code> (QR), the <code>card_id</code> value must not exceed 32 characters.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"af8d17a7-2b03-4c85-a86c-5115dd9090ad"},{"name":"Create BioStar 2 QR","id":"0e3480c0-05be-4250-9e40-8917988b4257","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CardCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"card_type\": {\r\n                    \"id\": \"7\",\r\n                    \"type\": \"7\"\r\n                },\r\n                \"display_card_id\": \"27744052605381570\",\r\n                \"card_id\": \"27744052605381570\",\r\n                \"user_id\": {\r\n                    \"user_id\": \"13\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards","description":"<p>This API is used to create BioStar 2 QR.</p>\n<h4 id=\"body-parameter-on-this-api\">BODY parameter on this API:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_type:id</td>\n<td>Integer</td>\n<td>Y</td>\n<td>Type card id of the card. See \"View All Card Types\" for all type of cards.  <br />0: CSN card  <br />1: Wiegand Card  <br />2: Secure Credential Card (Smart card)  <br />3: Access on Card (Smart card)  <br />4: Mobile CSN Card  <br />5: Wiegand Mobile  <br />6: QR/Barcode  <br />7: BioStar 2 QR</td>\n</tr>\n<tr>\n<td>card_type:type</td>\n<td>String</td>\n<td>Y</td>\n<td>Type allocation of the card type. View the list using /api/cards/types to determine the correct value.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>Integer</td>\n<td>Y</td>\n<td>Input value shown/read when scanning the card.</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>ID of the user which the QR will be assigned to.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"notes\">NOTES:</h4>\n<ul>\n<li>This API will return error if the card_id is already exist on the database. Use \"Check Card Availability\" API to validate.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"0e3480c0-05be-4250-9e40-8917988b4257"},{"name":"Create Mobile Card","id":"66523848-a30b-4dd4-a26f-e5ed5c8d82e1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"SmartCard\": {\r\n        \"user_id\": {\r\n            \"user_id\": \"1\",\r\n            \"fingerprint_templates\": [\r\n                {\r\n                    \"finger_index\": \"0\"\r\n                }\r\n            ]\r\n        },\r\n        \"card_id\": {\r\n            \"card_id\": \"102\",\r\n            \"card_type_id\": {\r\n                \"id\": \"2\"\r\n            }\r\n        },\r\n        \"card_layout_id\": {\r\n            \"id\": \"4\"\r\n        },\r\n        \"options\": {\r\n            \"is_a_mobile_credential\": true\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/cards/mobile_credentials","description":"<p>This example shows how to create Mobile Card.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>User ID of the user which will be using this card and which the biometric will be linked to.</td>\n</tr>\n<tr>\n<td>fingerprint_templates:finger_index</td>\n<td>Number</td>\n<td>N</td>\n<td>Fingerprint template of the user.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Card ID which will be displayed and recorded on the system. Use the same number as user_id.</td>\n</tr>\n<tr>\n<td>card_type_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type of the card which will be created.</td>\n</tr>\n<tr>\n<td>card_layout_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Layout ID for Mobile Credential which have been created.</td>\n</tr>\n<tr>\n<td>options:is_a_mobile_credential</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle true if the card is Mobile Credential.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","cards","mobile_credentials"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"66523848-a30b-4dd4-a26f-e5ed5c8d82e1"},{"name":"Format Smart Card","id":"032b3449-4800-4493-917a-9f7003f4e801","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://127.0.0.1/api/devices/:dev_id/erase_card","description":"<p>This API is used to remove the written smart card data from a Smart Card.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":dev_id","erase_card"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>Device ID with the corresponding layout set which will be used to write the card.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"dev_id"}]}},"response":[],"_postman_id":"032b3449-4800-4493-917a-9f7003f4e801"},{"name":"Send BioStar 2 QR by Email","id":"a61842b7-a76e-4057-a45f-2bd5236b45e0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"id\": \"1\",\r\n    \"language\": \"en\",\r\n    \"card_collection\": [\r\n        {\r\n            \"id\": \"10072\",\r\n            \"card_id\": \"3045804110617690774352189081668890\",\r\n            \"display_card_id\": \"165113371684849\",\r\n            \"card_type\": {\r\n                \"id\": \"7\",\r\n                \"name\": \"SCQr\",\r\n                \"type\": \"7\"\r\n            }\r\n        }\r\n    ],\r\n    \"total\": 1\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/send_email_qr","description":"<p>This API is used to send BioStar 2 QR by email.</p>\n<p>Before using this API, make sure that:</p>\n<ul>\n<li>SMTP is set</li>\n<li>User email field is filled</li>\n</ul>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the user which the QR code applied to and the email will be sent to.</td>\n</tr>\n<tr>\n<td>language</td>\n<td>String</td>\n<td>Y</td>\n<td>ko=Korean, en=English</td>\n</tr>\n<tr>\n<td>card_collection:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the QR which will be sent to the user email.</td>\n</tr>\n<tr>\n<td>card_collection:card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the card as recorded on BioStar 2 database.</td>\n</tr>\n<tr>\n<td>card_collection:display_card_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID which will be shown when scanning/reading the card.</td>\n</tr>\n<tr>\n<td>card_type:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID for the card type.</td>\n</tr>\n<tr>\n<td>card_type:name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the card type.</td>\n</tr>\n<tr>\n<td>card_type:type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Type code of the card type.</td>\n</tr>\n<tr>\n<td>total</td>\n<td>Number</td>\n<td>Y</td>\n<td>Total of the card.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","send_email_qr"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"a61842b7-a76e-4057-a45f-2bd5236b45e0"},{"name":"Send Visual Face by Email","id":"25df79c2-5a81-4bf5-b637-356107ae24d9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"id\": \"1\",\r\n    \"language\": \"en\",\r\n    \"adv_criteria\": {\r\n        \"user_name\": \"e\",\r\n        \"user_operator_level_id\": \"0\",\r\n        \"user_group_id\": 1,\r\n        \"user_group_ids\": [],\r\n        \"user_custom_field_1\": null,\r\n        \"user_custom_field_2\": null,\r\n        \"user_custom_field_3\": null,\r\n        \"user_custom_field_4\": null,\r\n        \"user_custom_field_5\": null,\r\n        \"user_custom_field_6\": null,\r\n        \"user_custom_field_7\": null,\r\n        \"user_custom_field_8\": null,\r\n        \"user_custom_field_9\": null,\r\n        \"user_custom_field_10\": null\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/send_email","description":"<p>This API is used to send Visual Face mobile enrollment link.</p>\n<h4 id=\"body-parameters\">Body Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>String</td>\n<td>Y</td>\n<td>User ID</td>\n</tr>\n<tr>\n<td>language</td>\n<td>String</td>\n<td>Y</td>\n<td>Language which will be used.  <br />ko : Korean  <br />en : English  <br />ja : Japanese</td>\n</tr>\n<tr>\n<td>adv_criteria</td>\n<td>Object</td>\n<td>Y</td>\n<td>See Batch Edit with Advanced Search for adv_criteria details.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.8:</p>\n<ul>\n<li>Added <code>adv_critera</code> in Body Parameter</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","send_email"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"25df79c2-5a81-4bf5-b637-356107ae24d9"}],"id":"acce23bd-5366-4bd3-9e9b-6413987f7c3e","_postman_id":"acce23bd-5366-4bd3-9e9b-6413987f7c3e","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"User Groups","item":[{"name":"List UG","id":"6cfadb19-3da9-4974-a2a4-eaa5f6b76b56","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/user_groups","description":"<p>This API is used to list all User Groups.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","user_groups"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"6cfadb19-3da9-4974-a2a4-eaa5f6b76b56"},{"name":"List UG by Id","id":"fe95673f-6460-44b3-8277-3519ae062e3a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"user_group_id_list\": [\r\n        \"1004\",\r\n        \"21109\"\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/user_groups/search","description":"<p>This API is used to list User Group(s) which specified on the Body parameter.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_group_id_list</td>\n<td>Array</td>\n<td>N</td>\n<td>Specify User Group ids which will be viewed. Use comma (,) as separator.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","user_groups","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"fe95673f-6460-44b3-8277-3519ae062e3a"},{"name":"Create UG","id":"423f08c5-a320-4918-9302-67508381fc56","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"UserGroup\": {\r\n        \"parent_id\": {\r\n            \"id\": 1\r\n        },\r\n        \"depth\": 1,\r\n        \"name\": \"TestDataXFer3\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/user_groups","description":"<p>This API is used to create a new User Group.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>parent_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Parent ID of the new User Group.</td>\n</tr>\n<tr>\n<td>depth</td>\n<td>Number</td>\n<td>N</td>\n<td>Depth of the User Group based on the parent.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the User Group.</td>\n</tr>\n</tbody>\n</table>\n</div><ul>\n<li>User groups may be created in up to 8 levels.</li>\n<li>Up to 48 characters may be entered for a user group name.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","user_groups"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"423f08c5-a320-4918-9302-67508381fc56"},{"name":"Update UG","id":"84438b8f-00c5-40bb-aa1d-b8face754823","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"UserGroup\": {\r\n        \"name\": \"TestDataXFer3xx\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/user_groups/:id","description":"<p>This API is used to update a User Group.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>UserGroup:name</td>\n<td>String</td>\n<td>Y</td>\n<td>Specify new name of the User Group.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","user_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>Id of the User Group which will be updated.</p>\n","type":"text/plain"},"type":"any","value":"21436","key":"id"}]}},"response":[],"_postman_id":"84438b8f-00c5-40bb-aa1d-b8face754823"},{"name":"Delete UG","id":"ccaf91e8-2a31-4a12-a639-acbbe66b47ef","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/user_groups?id=21436","description":"<p>This API is used to delete a User Group.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","user_groups"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Id of the User Group which will be deleted.</p>\n","type":"text/plain"},"key":"id","value":"21436"}],"variable":[]}},"response":[],"_postman_id":"ccaf91e8-2a31-4a12-a639-acbbe66b47ef"}],"id":"68728792-a42e-4da3-b19d-5b27686df22d","event":[{"listen":"prerequest","script":{"id":"61cbfe2c-68cf-4e3e-b5c9-cebaed2dfd9d","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"3bbf1fdc-7fbf-422e-b336-54f96c72fda9","type":"text/javascript","exec":[""]}}],"_postman_id":"68728792-a42e-4da3-b19d-5b27686df22d","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"User","item":[{"name":"Find Next Available UserID","event":[{"listen":"test","script":{"id":"9e003e5c-2428-408a-82b3-ab3f5d8e98da","exec":["const jsonData = pm.response.json();\r","pm.collectionVariables.set(\"nuid\", jsonData.User.user_id);"],"type":"text/javascript"}}],"id":"5d8320c0-a817-4ce9-948c-c3781e4e34c5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/users/next_user_id","description":"<p>This API returns the next available user ID based on the currently assigned user IDs. If user IDs are numeric, the response will be the next sequential number. If alphanumeric user IDs are enabled, the API will only consider numeric user IDs and return the next available numeric value.</p>\n<ul>\n<li><p>If the currently used user IDs are 1, 2, 3, the API response will be 4.</p>\n</li>\n<li><p>If user ID type is configured to <strong>alphanumeric</strong>, but existing IDs are 1, 2, 3, x4, 4x, the response will still be 4 (since \"x4\" and \"4x\" are ignored).</p>\n</li>\n</ul>\n<h4 id=\"notes\">Notes:</h4>\n<ul>\n<li><p>The API automatically filters out non-numeric user IDs when alphanumeric mode is enabled.</p>\n</li>\n<li><p>This does not create a new user ID, only suggests the next available one.</p>\n</li>\n</ul>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>User.user_id</td>\n<td>String</td>\n<td>The next available user ID.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","next_user_id"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"6c30807f-ab52-490f-9a03-2d0814ad27a1","name":"Find Next Available UserID","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/users/next_user_id"},"status":"OK","code":200,"_postman_previewlanguage":"JSON","header":[{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Date","value":"Tue, 04 Feb 2025 06:09:29 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"User\" : {\r\n    \"user_id\" : \"404\"\r\n  },\r\n  \"Response\" : {\r\n    \"code\" : \"0\"\r\n  }\r\n}"}],"_postman_id":"5d8320c0-a817-4ce9-948c-c3781e4e34c5"},{"name":"Create New User","event":[{"listen":"prerequest","script":{"id":"11ffbb22-8d89-49f0-a6b3-c97e38cc4e78","exec":["const postRequest = {\r","  url: pm.collectionVariables.get('baseUrl')+\"/api/users/next_user_id\",\r","  method: 'GET',\r","  header: {\r","    'bs-session-id': pm.collectionVariables.get('bsid')\r","  },\r","};\r","\r","pm.sendRequest(postRequest, (error, res) => {\r","  console.log(error ? error : res.json());\r","  const jsonData = res.json();\r","  pm.collectionVariables.set(\"nuid\", jsonData.User.user_id);\r","});"],"type":"text/javascript"}},{"listen":"test","script":{"id":"94918b56-bebc-4e1a-acdd-c7fc8d5d2c02","exec":["//Loop Request nLoop times\r","/*\r","pm.environment.set(\"nLoop\", 10);\r","var currentCount = pm.environment.get(\"nLoop\")\r","if (currentCount > 0){\r"," currentCount = currentCount -1 ;\r"," pm.environment.set(\"nLoop\", currentCount);\r"," postman.setNextRequest(\"Create New User\");\r","}*/\r",""],"type":"text/javascript"}}],"id":"92f0d86d-9e06-403b-a738-a20b730c86fa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_id\": \"\",\r\n        \"user_group_id\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n        \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n        \"disabled\": \"\",\r\n        \"name\": \"Asia\",\r\n        \"email\": \"Lewis.Price@gmail.com\",\r\n        \"department\": \"\",\r\n        \"user_title\": \"\",\r\n        \"photo\": \"\",\r\n        \"phone\": \"\",\r\n        \"permission\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"access_groups\": [\r\n            {\r\n                \"id\": \"\"\r\n            }\r\n        ],\r\n        \"login_id\": \"\",\r\n        \"password\": \"hX2tKR4W64IWP0u\",\r\n        \"user_ip\": \"119.22.184.150\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users","description":"<p>This API is used to create a new user.</p>\n<h4 id=\"body-parameters\">BODY parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>ID of the User. Unique.  <br />  <br />When User ID Type in Setting &gt; Server is set to Number, a number between 1 and 4294967295 can be entered. When Alphanumeric is set, a combination of alphabetic characters and numbers can be entered.  <br />Do not use spaces when entering ID.  <br />Numbers or Alphanumeric characters can be set for user_id. For more details, refer to Setting Section of this documentation.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>N</td>\n<td>Name of the user. Up to 48 characters.</td>\n</tr>\n<tr>\n<td>user_group_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the User Group that the user will be under. Refer to User Group Section of this documentation for listing available User Groups.</td>\n</tr>\n<tr>\n<td>disabled</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle User active or not; false for active, true for non-active.</td>\n</tr>\n<tr>\n<td>start_datetime</td>\n<td>Date/Time</td>\n<td>Y</td>\n<td>Start active period for the User.  <br />The earliest allowable value is 2001-01-01 00:00.</td>\n</tr>\n<tr>\n<td>expiry_datetime</td>\n<td>Date/Time</td>\n<td>Y</td>\n<td>End active period for the User.  <br />Value can not exceed 2037-12-31 23:59.</td>\n</tr>\n<tr>\n<td>email</td>\n<td>String</td>\n<td>N</td>\n<td>Email address of the User.</td>\n</tr>\n<tr>\n<td>department</td>\n<td>String</td>\n<td>N</td>\n<td>Department of the User. Up to 64 characters.</td>\n</tr>\n<tr>\n<td>user_title</td>\n<td>String</td>\n<td>N</td>\n<td>Title of the User.</td>\n</tr>\n<tr>\n<td>photo</td>\n<td>Base64</td>\n<td>N</td>\n<td>Photo of the User.</td>\n</tr>\n<tr>\n<td>phone</td>\n<td>String</td>\n<td>N</td>\n<td>Phone number of the User.</td>\n</tr>\n<tr>\n<td>permission</td>\n<td>Number</td>\n<td>N</td>\n<td>Operator Level of the User.  <br />  <br />Use <strong>View User by Account Level</strong> <strong>(GET /api/permissions)</strong> to view the list of available Operator Level and its ID).  <br />  <br /><strong>None</strong>: The user has no operator privilege. To use this Operator Level, remove permission parameter from the API Request.  <br /><strong>Administrator</strong>: The user can use all menus.  <br /><strong>User Operator</strong>: The user can only use the USER and PREFERENCE menus.  <br /><strong>Monitoring Operator</strong>: The user can use the MONITORING and PREFERENCE menus and only view the DASHBOARD, USER, DEVICE, DOOR, ZONE and ACCESS CONTROL menus.  <br /><strong>Video Operator</strong>: The user can only use the VIDEO menu.  <br /><strong>T&amp;A Operator</strong>: The user can only use the TIME ATTENDANCE menu and only view the USER menu.  <br /><strong>User</strong>: The user can only view own information and T&amp;A records.</td>\n</tr>\n<tr>\n<td>access_groups</td>\n<td>Number</td>\n<td>N</td>\n<td>ID of the Access Group that the User will have access. Refer to Access Group Section of this documentation for listing available Access Groups.  <br />Can enter more than 1 Access Group.</td>\n</tr>\n<tr>\n<td>login_id</td>\n<td>String</td>\n<td>N</td>\n<td>Required when permission parameter is not removed.</td>\n</tr>\n<tr>\n<td>password</td>\n<td>String</td>\n<td>N</td>\n<td>Required when permission parameter is not removed.</td>\n</tr>\n<tr>\n<td>user_ip</td>\n<td>String</td>\n<td>N</td>\n<td>Limit the access of the User so he/she can only login from the registered IP Address.  <br />  <br />The user IP can be entered in the format xxx.xxx.xxx.xxx. Each octet can only be entered in numbers between 0 and 255.  <br />Users whose user IP is not registered can log in from any IP.</td>\n</tr>\n<tr>\n<td>pin</td>\n<td>Number</td>\n<td>N</td>\n<td>PIN of the user. Maximum 32 digit.</td>\n</tr>\n</tbody>\n</table>\n</div><p>When Setting &gt; Server is set to Number, you can make use of endpoint /api/users/next_user_id to automatically get the next user_id. Refer to <code>GET</code> Find Next Available UserID for the detail of this endpoint.</p>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th>Type</th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>total</td>\n<td>String</td>\n<td>Total of created user</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Created user's ID</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Created user's name</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"known-errors\">Known errors:</h4>\n<ul>\n<li><p>name is more than 48 characters</p>\n</li>\n<li><p>Using single quote on name</p>\n</li>\n<li><p>Duplicate user_id, email, or login_id</p>\n</li>\n<li><p>Empty user_id, user_group_id, start_datetime, expiry_datetime</p>\n</li>\n<li><p>Using user_group_id:id which doesn't exist</p>\n</li>\n<li><p>Putting \"/\" at the end of the endpoint</p>\n</li>\n<li><p>Password with 3 or more subsequent letter or number</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"71f15377-820a-4ab7-aa9b-a13a2a29848a","name":"New User","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_id\": \"\",\r\n        \"user_group_id\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n        \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n        \"disabled\": \"\",\r\n        \"name\": \"Mossie\",\r\n        \"email\": \"Tina30@hotmail.com\",\r\n        \"department\": \"\",\r\n        \"user_title\": \"\",\r\n        \"photo\": \"\",\r\n        \"phone\": \"\",\r\n        \"permission\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"access_groups\": [\r\n            {\r\n                \"id\": \"\"\r\n            }\r\n        ],\r\n        \"login_id\": \"\",\r\n        \"password\": \"vv2g1YntPWGAoRE\",\r\n        \"user_ip\": \"181.115.220.101\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"181"},{"key":"Date","value":"Tue, 21 Jan 2025 08:15:39 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"UserCollection\": {\n        \"total\": \"1\",\n        \"rows\": [\n            {\n                \"user_id\": \"401\",\n                \"name\": \"401May\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"92f0d86d-9e06-403b-a738-a20b730c86fa"},{"name":"Bulk Add New User","id":"151ce9f9-f9bf-4b09-92a1-e287f3d6bcdd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"UserCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1000,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk0\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1001,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk1\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1002,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk2\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1003,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk3\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1004,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk4\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1005,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk5\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1006,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk6\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1007,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk7\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1008,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk8\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1009,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk9\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            },\r\n            {\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"user_id\": 1010,\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk10\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1,\r\n                    \"name\": \"All Users\",\r\n                    \"depth\": 0\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users","description":"<p>This API can be used starting from BioStar 2 version 2.9.8.</p>\n<p>It is used to create multiple users at once.</p>\n<p>Things to be noted when using this API:</p>\n<ul>\n<li><p>Parameters which can be used is the same as when creating a user (see <code>Create New User</code>)</p>\n</li>\n<li><p>user_id should be unique.</p>\n</li>\n<li><p>To add a user credential using this API, you must create the credential and include the credential ID in the body.</p>\n</li>\n<li><p>Because syncing users to their devices takes time, it is recommended to add less than 30 users at a time.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"7da52b93-91d9-4a52-a06d-2f4ce1dfb8d8","name":"Bulk Add New User","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"UserCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"user_id\": 10014,\r\n\t\t\t\t\"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"name\": \"nameBulk0\",\r\n                \"user_group_id\": {\r\n                    \"id\": 1\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"186"},{"key":"Date","value":"Fri, 07 Mar 2025 08:40:15 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"UserCollection\": {\n        \"total\": \"1\",\n        \"rows\": [\n            {\n                \"user_id\": \"10014\",\n                \"name\": \"nameBulk0\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"151ce9f9-f9bf-4b09-92a1-e287f3d6bcdd"},{"name":"Create New User with File Upload","id":"791e3b79-cbf3-4a7e-9c0d-65b72820229b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"name\": \"Ba - sing\",\r\n        \"email\": \"ba-sing@gmail.com\",\r\n        \"user_id\": \"401\",\r\n        \"user_group_id\": {\r\n            \"id\": 1,\r\n            \"name\": \"All Users\"\r\n        },\r\n        \"disabled\": \"false\",\r\n        \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n        \"expiry_datetime\": \"2037-12-31T23:59:00.00Z\",\r\n        \"user_custom_fields\": [\r\n            {\r\n                \"item\": \"Text Input here\",\r\n                \"custom_field\": {\r\n                    \"id\": \"2\"\r\n                }\r\n            },\r\n            {\r\n                \"custom_field\": {\r\n                    \"id\": \"5\"\r\n                },\r\n                \"item\": \"ACCOUNTS.TXT\",\r\n                \"size\": 5768,\r\n                \"document\": \"U1c1IGlzIHRoZSBiZXN0IGRldmVsb3Blcg==\",\r\n                \"mimetype\": \"text/plain\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users","description":"<p>This API can be used starting from BioStar 2 version 2.9.8.</p>\n<p>This example is to show how to create a new user with File Upload.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>custom_field.id</td>\n<td>Number</td>\n<td>*Y</td>\n<td>ID of the Custom Field which will be inserted.</td>\n</tr>\n<tr>\n<td>item</td>\n<td>String</td>\n<td>*Y</td>\n<td>Filename</td>\n</tr>\n<tr>\n<td>size</td>\n<td>Number</td>\n<td>*Y</td>\n<td>Filesize</td>\n</tr>\n<tr>\n<td>document</td>\n<td>String</td>\n<td>*Y</td>\n<td>File in Base64 format</td>\n</tr>\n<tr>\n<td>mimetype</td>\n<td>String</td>\n<td>*Y</td>\n<td>Mimetype document of a file extension for example, TXT = text/plain, JSON = application/json</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"notes\">Notes:</h4>\n<ul>\n<li><p>*Y: Required if a file needs to be uploaded to the File Upload Custom Field.</p>\n</li>\n<li><p>custom_field.id can be inferred by using <code>List Available Custom Field(s)</code></p>\n</li>\n<li><p>File need to be converted to Base64 format to upload.</p>\n</li>\n</ul>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"UserCollection\": {\n        \"total\": \"1\",\n        \"rows\": [\n            {\n                \"user_id\": \"401\",\n                \"name\": \"Ba - sing\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"791e3b79-cbf3-4a7e-9c0d-65b72820229b"},{"name":"User: Update","event":[{"listen":"prerequest","script":{"id":"11ffbb22-8d89-49f0-a6b3-c97e38cc4e78","exec":["const postRequest = {\r","  url: pm.collectionVariables.get('baseUrl')+\"/api/users/next_user_id\",\r","  method: 'GET',\r","  header: {\r","    'bs-session-id': pm.collectionVariables.get('bsid')\r","  },\r","};\r","\r","pm.sendRequest(postRequest, (error, res) => {\r","  console.log(error ? error : res.json());\r","  const jsonData = res.json();\r","  pm.collectionVariables.set(\"nuid\", jsonData.User.user_id);\r","});"],"type":"text/javascript"}},{"listen":"test","script":{"id":"94918b56-bebc-4e1a-acdd-c7fc8d5d2c02","exec":["//Loop Request nLoop times\r","/*\r","pm.environment.set(\"nLoop\", 10);\r","var currentCount = pm.environment.get(\"nLoop\")\r","if (currentCount > 0){\r"," currentCount = currentCount -1 ;\r"," pm.environment.set(\"nLoop\", currentCount);\r"," postman.setNextRequest(\"Create New User\");\r","}*/\r",""],"type":"text/javascript"}}],"id":"ff25ec8a-3291-4d24-90de-14651b9c5294","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_group_id\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n        \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n        \"disabled\": \"\",\r\n        \"name\": \"\",\r\n        \"email\": \"SW2_00003@gmail.com\",\r\n        \"department\": \"\",\r\n        \"user_title\": \"\",\r\n        \"photo\": \"\",\r\n        \"phone\": \"\",\r\n        \"permission\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"access_groups\": [\r\n            {\r\n                \"id\": \"\"\r\n            }\r\n        ],\r\n        \"login_id\": \"\",\r\n        \"password\": \"S3DLyO0euEwF75K\",\r\n        \"user_ip\": \"0.79.22.250\",\r\n        \"isExludeSyncADUser\": 1\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>This API is used to update a user.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>ID of the User. Unique.  <br />  <br />When User ID Type in Setting &gt; Server is set to Number, a number between 1 and 4294967295 can be entered. When Alphanumeric is set, a combination of alphabetic characters and numbers can be entered.  <br />Do not use spaces when entering ID.  <br />Numbers or Alphanumeric characters can be set for user_id. For more details, refer to Setting Section of this documentation.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>N</td>\n<td>Name of the user. Up to 48 characters.</td>\n</tr>\n<tr>\n<td>user_group_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the User Group that the user will be under. Refer to User Group Section of this documentation for listing available User Groups.</td>\n</tr>\n<tr>\n<td>disabled</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle User active or not; false for active, true for non-active.</td>\n</tr>\n<tr>\n<td>start_datetime</td>\n<td>Date/Time</td>\n<td>Y</td>\n<td>Start active period for the User.</td>\n</tr>\n<tr>\n<td>expiry_datetime</td>\n<td>Date/Time</td>\n<td>Y</td>\n<td>End active period for the User.</td>\n</tr>\n<tr>\n<td>email</td>\n<td>String</td>\n<td>N</td>\n<td>Email address of the User.</td>\n</tr>\n<tr>\n<td>department</td>\n<td>String</td>\n<td>N</td>\n<td>Department of the User. Up to 64 characters.</td>\n</tr>\n<tr>\n<td>user_title</td>\n<td>String</td>\n<td>N</td>\n<td>Title of the User.</td>\n</tr>\n<tr>\n<td>photo</td>\n<td>Base64</td>\n<td>N</td>\n<td>Photo of the User.</td>\n</tr>\n<tr>\n<td>phone</td>\n<td>String</td>\n<td>N</td>\n<td>Phone number of the User.</td>\n</tr>\n<tr>\n<td>permission</td>\n<td>Number</td>\n<td>N</td>\n<td>Operator Level of the User.  <br />  <br />Use <strong>View User by Account Level</strong> <strong>(GET /api/permissions)</strong> to view the list of available Operator Level and its ID).  <br />  <br /><strong>None</strong>: The user has no operator privilege. To use this Operator Level, remove permission parameter from the API Request.  <br /><strong>Administrator</strong>: The user can use all menus.  <br /><strong>User Operator</strong>: The user can only use the USER and PREFERENCE menus.  <br /><strong>Monitoring Operator</strong>: The user can use the MONITORING and PREFERENCE menus and only view the DASHBOARD, USER, DEVICE, DOOR, ZONE and ACCESS CONTROL menus.  <br /><strong>Video Operator</strong>: The user can only use the VIDEO menu.  <br /><strong>T&amp;A Operator</strong>: The user can only use the TIME ATTENDANCE menu and only view the USER menu.  <br /><strong>User</strong>: The user can only view own information and T&amp;A records.</td>\n</tr>\n<tr>\n<td>access_groups</td>\n<td>Number</td>\n<td>N</td>\n<td>ID of the Access Group that the User will have access. Refer to Access Group Section of this documentation for listing available Access Groups.  <br />Can enter more than 1 Access Group.</td>\n</tr>\n<tr>\n<td>login_id</td>\n<td>String</td>\n<td>N</td>\n<td>Required when permission parameter is not removed.</td>\n</tr>\n<tr>\n<td>password</td>\n<td>String</td>\n<td>N</td>\n<td>Required when permission parameter is not removed.</td>\n</tr>\n<tr>\n<td>user_ip</td>\n<td>String</td>\n<td>N</td>\n<td>Limit the access of the User so he/she can only login from the registered IP Address.  <br />  <br />The user IP can be entered in the format xxx.xxx.xxx.xxx. Each octet can only be entered in numbers between 0 and 255.  <br />Users whose user IP is not registered can log in from any IP.</td>\n</tr>\n<tr>\n<td>pin</td>\n<td>Number</td>\n<td>N</td>\n<td>PIN of the user. Maximum 32 digit.</td>\n</tr>\n<tr>\n<td>isExludeSyncADUser</td>\n<td>Number</td>\n<td>N</td>\n<td>1: User will be excluded from AD or EntraID sync.</td>\n</tr>\n</tbody>\n</table>\n</div><p>When <strong>Setting &gt; Server</strong> is set to <strong>Number</strong>, you can make use of endpoint <code>/api/users/next_user_id</code> to automatically get the next user_id. Refer to <code>GET Find Next Available UserID</code> for the detail of this endpoint.</p>\n<h4 id=\"known-errors\">Known errors:</h4>\n<ul>\n<li><p>name is more than 48 characters</p>\n</li>\n<li><p>Using single quote on name</p>\n</li>\n<li><p>Duplicate user_id, email, or login_id</p>\n</li>\n<li><p>Empty user_id, user_group_id, start_datetime, expiry_datetime</p>\n</li>\n<li><p>Using user_group_id:id which doesn't exist</p>\n</li>\n<li><p>Putting \"/\" at the end of the endpoint</p>\n</li>\n<li><p>Password with 3 or more subsequent letter or number</p>\n</li>\n<li><p>Start and expiry date difference is more than 30 years</p>\n</li>\n</ul>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.9:</p>\n<ul>\n<li>Added 'isExludeSyncADUser' parameter</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"2","key":"id"}]}},"response":[],"_postman_id":"ff25ec8a-3291-4d24-90de-14651b9c5294"},{"name":"User: Bulk Update","id":"aef3856a-2591-4e76-bb66-1560cc5d0ac7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"UserCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"user_id\": \"9\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"1\"\r\n                },\r\n                \"user_ip\": \"191.59.135.73\"\r\n            },\r\n            {\r\n                \"user_id\": \"99\",\r\n                \"login_id\": \"myloginid\",\r\n                \"password\": \"zlwRzi7Kcpi1kiQ\",\r\n                \"user_ip\": \"191.59.135.73\"\r\n            },\r\n            {\r\n                \"user_id\": \"999\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"1\"\r\n                },\r\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n                \"disabled\": \"\",\r\n                \"name\": \"\",\r\n                \"email\": \"SW1_00003@gmail.com\",\r\n                \"department\": \"\",\r\n                \"user_title\": \"\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/bulk","description":"<p>This API is used for updating user information in bulk.</p>\n<p>This API can be used from BioStar 2 version 2.9.6 onwards.</p>\n<p>The difference of this API and <code>/api/users?id=1+2+3</code> is that this API can update different data of many users at the same time.</p>\n<p><strong>Warning:</strong> The maximum number of users that can be modified in a single API call is <strong>100</strong>.</p>\n<h4 id=\"body-parameter-on-this-api\">BODY Parameter on this API:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>User ID of the user. This will be used as the update target.</td>\n</tr>\n</tbody>\n</table>\n</div><p>All user information parameters in <code>/api/users</code> are included.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"UserCollection\": {\n        \"rows\": [\n            {\n                \"user_id\": \"3\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"2\",\n                \"ret_code\": \"224\"\n            },\n            {\n                \"user_id\": \"1\",\n                \"ret_code\": \"0\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"1\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Request is successful, but partially\"\n    }\n}\n\n</code></pre>\n<h4 id=\"response-code\"><strong>Response Code:</strong></h4>\n<p><strong>ret_code</strong> presents BioStar 2 response code for modifying each user. The meaning on each code is explained on <code>[BioStar 2 Install Path]\\nginx\\html\\resources\\messages_en</code>.</p>\n<p>For example <code>ret_code 224</code>, find the number in the properties file: <code>ACB_ERROR_CODE.224 = Cannot use the same previous PW</code>.</p>\n<p>\"Response.code\" could be 0, 1, 8.</p>\n<ul>\n<li><p>0 : Overall success.</p>\n</li>\n<li><p>1 : Partial success</p>\n</li>\n<li><p>8 : Overall failed.</p>\n</li>\n</ul>\n<h5 id=\"http-response-code\"><strong>HTTP Response Code:</strong></h5>\n<ul>\n<li><p><code>200 OK</code> : Overall success, partial success or overall failed.</p>\n</li>\n<li><p><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","bulk"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"f1c0b5f3-a3c3-4b7e-bb28-39c243b0f5a8","name":"User: Bulk Update (Success update 100 users)","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"UserCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"user_id\": \"50\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"51\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"52\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"53\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"54\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"55\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"56\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"57\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"58\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"59\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"60\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"61\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"62\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"63\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"64\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"65\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"66\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"67\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"68\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"69\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"70\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"71\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"72\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"73\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"74\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"75\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"76\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"77\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"78\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"79\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"80\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"81\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"82\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"83\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"84\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"85\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"86\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"87\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"88\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"89\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"90\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"91\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"92\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"93\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"94\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"95\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"96\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"97\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"98\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"99\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"100\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"101\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"102\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"103\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"104\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"105\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"106\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"107\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"108\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"109\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"110\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"111\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"112\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"113\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"114\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"115\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"116\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"117\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"118\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"119\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"120\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"121\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"122\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"123\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"124\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"125\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"126\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"127\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"128\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"129\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"130\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"131\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"132\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"133\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"134\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"135\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"136\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"137\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"138\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"139\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"140\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"141\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"142\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"143\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"144\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"145\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"146\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"147\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"148\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"149\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/bulk"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"3385"},{"key":"Date","value":"Tue, 25 Feb 2025 03:50:05 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"UserCollection\": {\n        \"rows\": [\n            {\n                \"user_id\": \"50\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"51\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"52\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"53\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"54\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"55\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"56\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"57\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"58\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"59\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"60\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"61\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"62\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"63\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"64\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"65\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"66\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"67\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"68\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"69\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"70\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"71\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"72\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"73\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"74\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"75\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"76\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"77\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"78\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"79\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"80\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"81\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"82\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"83\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"84\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"85\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"86\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"87\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"88\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"89\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"90\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"91\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"92\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"93\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"94\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"95\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"96\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"97\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"98\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"99\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"100\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"101\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"102\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"103\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"104\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"105\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"106\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"107\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"108\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"109\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"110\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"111\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"112\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"113\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"114\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"115\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"116\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"117\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"118\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"119\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"120\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"121\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"122\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"123\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"124\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"125\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"126\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"127\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"128\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"129\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"130\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"131\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"132\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"133\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"134\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"135\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"136\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"137\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"138\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"139\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"140\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"141\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"142\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"143\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"144\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"145\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"146\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"147\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"148\",\n                \"ret_code\": \"0\"\n            },\n            {\n                \"user_id\": \"149\",\n                \"ret_code\": \"0\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"},{"id":"53f5165d-e2b9-4aa2-88f5-1cf467c274ec","name":"User: Bulk Update (Error when user is more than 100)","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"UserCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"user_id\": \"50\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"51\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"52\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"53\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"54\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"55\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"56\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"57\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"58\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"59\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"60\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"61\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"62\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"63\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"64\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"65\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"66\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"67\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"68\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"69\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"70\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"71\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"72\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"73\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"74\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"75\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"76\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"77\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"78\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"79\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"80\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"81\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"82\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"83\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"84\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"85\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"86\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"87\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"88\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"89\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"90\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"91\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"92\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"93\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"94\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"95\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"96\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"97\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"98\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"99\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"100\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"101\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"102\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"103\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"104\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"105\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"106\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"107\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"108\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"109\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"110\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"111\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"112\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"113\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"114\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"115\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"116\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"117\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"118\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"119\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"120\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"121\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"122\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"123\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"124\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"125\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"126\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"127\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"128\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"129\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"130\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"131\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"132\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"133\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"134\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"135\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"136\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"137\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"138\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"139\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"140\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"141\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"142\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"143\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"144\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"145\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"146\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"147\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"148\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"149\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"150\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            },\r\n            {\r\n                \"user_id\": \"151\",\r\n                \"user_group_id\": {\r\n                    \"id\": \"11027\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/bulk"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"400 Bad Request"},{"key":"Set-Cookie","value":"JSESSIONID=F61AB7ED1956FEFEDEE65A820BF075EC; Path=/; Secure; HttpOnly"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"128"},{"key":"Date","value":"Tue, 25 Feb 2025 03:41:02 GMT"},{"key":"Connection","value":"close"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"700\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Failed to parse json data.\"\n    }\n}"}],"_postman_id":"aef3856a-2591-4e76-bb66-1560cc5d0ac7"},{"name":"User: Fill Custom Field","event":[{"listen":"prerequest","script":{"id":"8d98be47-f88b-41c7-b763-b73c0f51e4a0","exec":[""],"type":"text/javascript"}}],"id":"18dad3f6-6d63-408e-9717-5d655f53d810","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_custom_fields\": [\r\n            {\r\n                \"item\": \"Combo option 1\",\r\n                \"custom_field\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            },\r\n            {\r\n                \"item\": \"Text input here\",\r\n                \"custom_field\": {\r\n                    \"id\": \"2\"\r\n                }\r\n            },\r\n            {\r\n                \"item\": \"134669\",\r\n                \"custom_field\": {\r\n                    \"id\": \"3\"\r\n                }\r\n            },\r\n            {\r\n                \"custom_field\": {\r\n                    \"id\": \"5\"\r\n                },\r\n                \"item\": \"ACCOUNTS.TXT\",\r\n                \"size\": 5768,\r\n                \"document\": \"U1c1IGlzIHRoZSBiZXN0IGRldmVsb3Blcg==\",\r\n                \"mimetype\": \"text/plain\"\r\n            }            \r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>Use <code>GET /api/setting/custom_fields</code> (<a href=\"https://bs2api.biostar2.com/#864660d4-fafd-46f0-8489-f3fb371faae6\">here</a>) to view available Custom Fields.</p>\n<p>There are 4 types of Custom Fields: Text Input, Number Input, Combo Box and File Upload. Text Input and Combo Box will accept any value, and Number Input will only receive number.</p>\n<h4 id=\"body-parameter\">Body Parameter:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>item</td>\n<td>String</td>\n<td>N</td>\n<td>Content of the Custom Field</td>\n</tr>\n<tr>\n<td>custom_field:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the Custom Field (This does NOT represent the Custom Field's type)</td>\n</tr>\n<tr>\n<td>item</td>\n<td>String</td>\n<td>*Y</td>\n<td>Filename</td>\n</tr>\n<tr>\n<td>size</td>\n<td>Number</td>\n<td>*Y</td>\n<td>Filesize</td>\n</tr>\n<tr>\n<td>document</td>\n<td>String</td>\n<td>*Y</td>\n<td>File in Base64 format</td>\n</tr>\n<tr>\n<td>mimetype</td>\n<td>String</td>\n<td>*Y</td>\n<td>Mimetype document of a file extension for example, TXT = text/plain, JSON = application/json</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"notes\">Notes:</h4>\n<ul>\n<li><p>If an API request using the <strong>PUT</strong> method does not include a <strong>Custom Field</strong> in the Body, its value will be removed.</p>\n</li>\n<li><p>To delete a file from a <strong>File Upload Custom Field</strong>, trigger the API using <strong>PUT</strong> and omit the respective <strong>File Upload Custom Field's ID</strong> from the request body. Do note this will also remove the file from the system permanently.</p>\n</li>\n</ul>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}\n\n</code></pre>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.8:</p>\n<ul>\n<li>Added Custom Field File Upload</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the user which will be updated</p>\n","type":"text/plain"},"type":"any","value":"3","key":"id"}]}},"response":[{"id":"86d94ce8-50b8-43aa-a9d6-2e36a280debf","name":"User: Fill Custom Field (Text Input Box)","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_custom_fields\": [\r\n            {\r\n                \"item\": \"Your input here\",\r\n                \"custom_field\": {\r\n                    \"id\": \"2\"\r\n                }\r\n            }        \r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://127.0.0.1/api/users/:id","host":["https://127.0.0.1"],"path":["api","users",":id"],"variable":[{"key":"id","value":"4","description":"ID of the user which will be updated"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"107"},{"key":"Date","value":"Mon, 17 Feb 2025 06:25:24 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"},{"id":"92d97455-6b0c-4172-9e28-8013671bc8b1","name":"User: Fill Custom Field (Number Input)","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_custom_fields\": [\r\n            {\r\n                \"item\": \"123456\",\r\n                \"custom_field\": {\r\n                    \"id\": \"3\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://127.0.0.1/api/users/:id","host":["https://127.0.0.1"],"path":["api","users",":id"],"variable":[{"key":"id","value":"4","description":"ID of the user which will be updated"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"107"},{"key":"Date","value":"Mon, 17 Feb 2025 06:32:38 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"},{"id":"0d8c42dc-0e7b-43c4-932a-0c0414507d78","name":"User: Fill Custom Field (Combo Box)","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_custom_fields\": [\r\n            {\r\n                \"item\": \"Option 2\",\r\n                \"custom_field\": {\r\n                    \"id\": \"4\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://127.0.0.1/api/users/:id","host":["https://127.0.0.1"],"path":["api","users",":id"],"variable":[{"key":"id","value":"4","description":"ID of the user which will be updated"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"107"},{"key":"Date","value":"Mon, 17 Feb 2025 06:36:37 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"},{"id":"1c4cf88f-a429-4fd3-b7bf-2046975bc59a","name":"User: Fill Custom Field (File Upload)","originalRequest":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_custom_fields\": [\r\n            {\r\n                \"custom_field\": {\r\n                    \"id\": \"5\"\r\n                },\r\n                \"item\": \"ACCOUNTS.TXT\",\r\n                \"size\": 5768,\r\n                \"document\": \"U1c1IGlzIHRoZSBiZXN0IGRldmVsb3Blcg==\",\r\n                \"mimetype\": \"text/plain\"\r\n            }            \r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":{"raw":"https://127.0.0.1/api/users/:id","host":["https://127.0.0.1"],"path":["api","users",":id"],"variable":[{"key":"id","value":"4","description":"ID of the user which will be updated"}]}},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"107"},{"key":"Date","value":"Mon, 17 Feb 2025 06:39:38 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"18dad3f6-6d63-408e-9717-5d655f53d810"},{"name":"User Credential: Misc (Include Device Default Authentication Mode)","event":[{"listen":"prerequest","script":{"id":"70b51861-f9d6-46b0-b97b-34b1b9e74d47","exec":[""],"type":"text/javascript"}}],"id":"e650d38e-5a14-4a65-a6d2-39e61405ab70","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"pin\": \"\",\r\n        \"security_level\": 0,\r\n        \"private_operation_modes\": [\r\n            {\r\n                \"operation_method\": 2,\r\n                \"operation_mode\": 0,\r\n                \"exclude\": false\r\n            },\r\n            {\r\n                \"operation_method\": 2,\r\n                \"operation_mode\": 1,\r\n                \"exclude\": false\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>On this example you can see how to use stated parameters to adjust misc. credential values.</p>\n<p>Parameters on this example:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>pin</td>\n<td>Number</td>\n<td>N</td>\n<td>PIN of the User</td>\n</tr>\n<tr>\n<td>security_level</td>\n<td>Number</td>\n<td>N</td>\n<td>To set the security level of the credential. The higher the security level is set, the false rejection rate (FRR) gets higher, but the false acceptance rate (FAR) gets lower. Acceptable value: 0 to 5</td>\n</tr>\n<tr>\n<td>private_operation_modes</td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td>:operation_method</td>\n<td>Number</td>\n<td></td>\n<td>The first credential of an Authentication Mode (0: ID, 1: Card, 2: Fingerprint/Biometric (Standard), 3: Face)  <br /></td>\n</tr>\n<tr>\n<td>:operation_mode</td>\n<td>Number</td>\n<td></td>\n<td>Authentication Mode combination (see below for reference, \"-1\" = do not use)</td>\n</tr>\n<tr>\n<td>:exclude</td>\n<td>Boolean</td>\n<td></td>\n<td>If Include Device Default Authentication Mode option is on, so when you want to also follow the Auth Modes that the devices have, “private_operation_modes” will have same number of elements that you actually configured. But if Exclude Device Default Authentication Mode is on, you need to add four or more elements because all the values of “operation_method” should be included to override device’s Auth Modes.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Authentication Mode Combination Table:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Value</strong></th>\n<th><strong>Code</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>0</td>\n<td>BS2_AUTH_MODE_BIOMETRIC_ONLY</td>\n<td>Biometric only</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>1</td>\n<td>BS2_AUTH_MODE_BIOMETRIC_PIN</td>\n<td>Biometric + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>2</td>\n<td>BS2_AUTH_MODE_CARD_ONLY</td>\n<td>Card only</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>3</td>\n<td>BS2_AUTH_MODE_CARD_BIOMETRIC</td>\n<td>Card + Biometric</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>4</td>\n<td>BS2_AUTH_MODE_CARD_PIN</td>\n<td>Card + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>5</td>\n<td>BS2_AUTH_MODE_CARD_BIOMETRIC_OR_PIN</td>\n<td>Card + Biometric or PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>6</td>\n<td>BS2_AUTH_MODE_CARD_BIOMETRIC_PIN</td>\n<td>Card + Biometric + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>7</td>\n<td>BS2_AUTH_MODE_ID_BIOMETRIC</td>\n<td>ID + Biometric</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>8</td>\n<td>BS2_AUTH_MODE_ID_PIN</td>\n<td>ID + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>9</td>\n<td>BS2_AUTH_MODE_ID_BIOMETRIC_OR_PIN</td>\n<td>ID + Biometric or PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>10</td>\n<td>BS2_AUTH_MODE_ID_BIOMETRIC_PIN</td>\n<td>ID + Biometric + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>11</td>\n<td>BS2_EXT_AUTH_MODE_FACE_ONLY</td>\n<td>Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>12</td>\n<td>BS2_EXT_AUTH_MODE_FACE_FINGERPRINT</td>\n<td>Face + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>13</td>\n<td>BS2_EXT_AUTH_MODE_FACE_PIN</td>\n<td>Face + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>14</td>\n<td>BS2_EXT_AUTH_MODE_FACE_FINGERPRINT_OR_PIN</td>\n<td>Face + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>15</td>\n<td>BS2_EXT_AUTH_MODE_FACE_FINGERPRINT_PIN</td>\n<td>Face + Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>16</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_ONLY</td>\n<td>Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>17</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_FACE</td>\n<td>Fingerprint + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>18</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_PIN</td>\n<td>Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>19</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_FACE_OR_PIN</td>\n<td>Fingerprint + Face/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>20</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_FACE_PIN</td>\n<td>Fingerprint + Face + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>21</td>\n<td>BS2_EXT_AUTH_MODE_CARD_ONLY</td>\n<td>Card</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>22</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE</td>\n<td>Cardn + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>23</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT</td>\n<td>Card + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>24</td>\n<td>BS2_EXT_AUTH_MODE_CARD_PIN</td>\n<td>Card + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>25</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT</td>\n<td>Card + Face/Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>26</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_OR_PIN</td>\n<td>Card + Face/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>27</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_OR_PIN</td>\n<td>Card + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>28</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT_OR_PIN</td>\n<td>Card + Face/Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>29</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_FINGERPRINT</td>\n<td>Card + Face + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>30</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_PIN</td>\n<td>Card + Face + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>31</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_FACE</td>\n<td>Card + Fingerprint + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>32</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_PIN</td>\n<td>Card + Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>33</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT_PIN</td>\n<td>Card + Face/Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>34</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_FINGERPRINT_OR_PIN</td>\n<td>Card + Face + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>35</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_FACE_OR_PIN</td>\n<td>Card + Fingerprint + Face/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>36</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE</td>\n<td>ID + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>37</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT</td>\n<td>ID + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>38</td>\n<td>BS2_EXT_AUTH_MODE_ID_PIN</td>\n<td>ID + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>39</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT</td>\n<td>ID + Face/Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>40</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_OR_PIN</td>\n<td>ID + Face/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>41</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT_OR_PIN</td>\n<td>ID + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>42</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT_OR_PIN</td>\n<td>ID + Face/Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>43</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_FINGERPRINT</td>\n<td>ID + Face + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>44</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_PIN</td>\n<td>ID + Face + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>45</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT_FACE</td>\n<td>ID + Fingerprint + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>46</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT_PIN</td>\n<td>ID + Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>47</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT_PIN</td>\n<td>ID + Face/Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>48</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_FINGERPRINT_OR_PIN</td>\n<td>ID + Face + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>49</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT_FACE_OR_PIN</td>\n<td>ID + Fingerprint + Face/PIN</td>\n<td>Extended</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"101","key":"id"}]}},"response":[],"_postman_id":"e650d38e-5a14-4a65-a6d2-39e61405ab70"},{"name":"User Credential: Misc (Exclude Device Default Authentication Mode)","event":[{"listen":"prerequest","script":{"id":"b9571059-b07c-462e-8ded-91a6e6ac57e8","exec":[""],"type":"text/javascript"}}],"id":"0f3989f0-1d98-46c2-a6f5-bcbd5d1b90da","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"pin\": \"\",\r\n        \"security_level\": 0,\r\n        \"private_operation_modes\": [\r\n            {\r\n                \"operation_method\": 2,\r\n                \"operation_mode\": 0,\r\n                \"exclude\": false\r\n            },\r\n            {\r\n                \"operation_method\": 0,\r\n                \"operation_mode\": -1,\r\n                \"exclude\": true\r\n            },\r\n            {\r\n                \"operation_method\": 1,\r\n                \"operation_mode\": -1,\r\n                \"exclude\": true\r\n            },\r\n            {\r\n                \"operation_method\": 3,\r\n                \"operation_mode\": -1,\r\n                \"exclude\": true\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>As stated on previous example (User Credential: Misc (Include Device Default Authentication Mode)), when you want to use Exclude Device Default Authentication Mode then you need to state all values of the Authentication Method.</p>\n<p>On this example, the Authentication Mode that's being used is Biometric (operation_method: 2) only (operation_mode: 0) and the other Authentication Method: ID (0), Card (1), and Face (3) are set as do not use (operation_mode: -1) and hidden (exclude: true)</p>\n<p>To use Extended Auth Mode simply use code that starts from 11 (refer to Authentication Mode Combination Table on User Credential: Misc (Include Device Default Authentication Mode)), do note that this mode only supported by FaceStation F2.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"101","key":"id"}]}},"response":[],"_postman_id":"0f3989f0-1d98-46c2-a6f5-bcbd5d1b90da"},{"name":"User Credential: Card","event":[{"listen":"prerequest","script":{"id":"444ebbf2-a422-471c-ae92-9a9d316d5dfc","exec":["//Get Value from external dataset\r","val = pm.iterationData.get(\"value\");\r","val1 = pm.iterationData.get(\"id\");\r","//Assign value to global variable\r","pm.collectionVariables.set(\"iterIDVal\", val)\r","pm.collectionVariables.set(\"iterIDVal1\", val1)"],"type":"text/javascript"}}],"id":"f3f5c3d3-e561-4929-8966-532514baa88e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"cards\": [\r\n            {\r\n                \"id\": \"101\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>This example shows how to assign a card to a User, which is applicable to CSN, Wiegand, Smart, Mobile, and QR/Barcode.</p>\n<p>First the card must be enrolled to the database by using <code>POST /api/cards</code>.</p>\n<p>After enrolled, use <code>GET /api/cards</code> to view all Cards or <code>GET /api/cards/unassigned</code> to view all Cards which are unassigned.</p>\n<p>Select a card from the response and apply it on the body as shown on the example to assign it to the selected user.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"102","key":"id"}]}},"response":[],"_postman_id":"f3f5c3d3-e561-4929-8966-532514baa88e"},{"name":"User Credential: Fingerprint","event":[{"listen":"prerequest","script":{"id":"ba16e12e-8b2b-4fa3-9cb6-3fcfa95a2d26","exec":[""],"type":"text/javascript"}}],"id":"141918c4-8044-43c8-8352-f9394f019d4b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"fingerprint_templates\": [\r\n            {\r\n                \"finger_mask\": \"false\",\r\n                \"template0\": \"RSoQFLAAVUYMBEBvBBlEsWSLFITAEIUGBgEYBA/G0W0IAwcgdgEbh2ANixfIMGUKEshwF4QOCbBzhjXEsaCFJITQAYohRSBViCSGoUsRLAcQooYoh6GlCDpIgZ2GKMkARgkyCXCehDhJgEIDG0sxYJsOy0BziBaMcGmPG4ywUaAVTdBokwxOEXgHEE6AeIIVT0FoERfPYBsxGg9gK9EK0QB4jRxSYRqFEhNAbxkXk1AUChiTUHSHL8zwl4EmDiE3CCHPADWKK5DAOo8nUZAqDS5SIUKXK9JhOZj////g/////////eAB///////d4AEi/////N3gASM////M3eABIzT/+7zd4BIzRE+7u83gEjNET7u7zeASNERFu7vN4BI0REW6u8zgIzRERaqqvOAjRERFqqq84TREREWqqrziNFVUT6mqvOJFVVVfqqq9BFVVVU/5qrqHd2ZU//+qqZiIdkT///qqqZh1T///+6qqqYX/////u6uqj///\",\r\n                \"template1\": \"RSgQFK8AVUYRBDBvhxqEgBGFHsSRZwsIhRF1BQtGIRuEFsZxawgJRwB5AR4H4GULGYgQF4UUyYB0hyqEsAOJJsTRWIgrRkBKjyKG4QoLMsbwooQvB3GkBi9I0EYHOUnBnQMJSgF4ghXK8HWKHYwQZ5EIzQAfhRPN4XsEHA4BbBYXzhB5hRzO8WaYB89AdoQeT0AdsQgQAHiJDlFQdoIiSvFfHCLMcE4iNszwmAIszkE2hihO8DQJIM9QKkMxEJA3CC4RwCeOIlKBHAMxEsBFIv///d3////////M3eD/////+8zd4BL///+7zN3gEj//+rvM3eASM/+qu8zd4BIzT6q7vM3gEjRFqqq7zeASNESqqrvN4CNERaqqq7zhI0RFqqqrvOE0REWqqqq84jRFVaqqqrwDRFVVqqmavQRVVVWqqqq9JVVVVvq7qqmHdmZv/6qqqZiHZm//+qqqmZhV////u6qqmFT///+7uqqoT/8=\"\r\n            },\r\n            {\r\n                \"finger_mask\": \"true\",\r\n                \"isNew\": true,\r\n                \"template0\": \"RDMQFLMAVUYqCxCIFCyhiDMthws5MBAMIzEcBRE5ngYwQIwND02jBWUP6AV2I18FcTfjBFE5ZQpeROADPVWCmzxhCfw+ZERIOXK1JzVzsykxdLUjIngqgih+rhAlfyaNPoAZGiGFqwwqhpuMTFbqj0NZXBxfXNeCUV1Ri2BkVgJvaVwGUWtGilZsTopmbtQDSm9GCkNyKpNbdlGIa3hahUh6NgxBfB6eRH6zFHSC2RBSgzYPZYvXDVONHEVNjbKlV45N4WKO25hVlJWkYpT0lWyV6Q////7gASL/////3eABIj////zd4AEjM///vN3gASMz//+83e4BIzRPq7zN4BEjRESrvM3gEjNERLu7zOASM0REu7vM4BM0RESru7zQE0RERKu7vNAjREREqqq7wDRVVET6qqqnZlVURPqqmZh2ZVVF+qqZmYdmVVb/qrvLmHZVV//6vMuodlX////MzLl0X////8zMy+FP////vMzL4P//\",\r\n                \"template1\": \"RDQQFLMAVUYkEBKGDzKihS4yj4o2NAmKHzYeBgw/nwQrR4wOYRToBXIoXQZtPOEFTEFpiVxJ4YMJVKMEOVyCmD9gXBs4Zwn4OWpEUjVqOEI3bTkjM3e7JT93JZM0e66hHX0vhi5+pJskg64SQIOyHCCEKI0niZkQR1zqklxf3AJNY1KLW2lYg2tuXAZLcUoJUnJPimNz1wJ7c98PRnRECld7UIlofFuFYX3UBWR9VgdEfzYOcYXdD02HOw5iitcIR4spimOLYghNkbsLT5FED2eS5Alfkt2T///+4BH//////97gESL/////3uASIz///8ze4BIjNP/7zN7gEiM0/7u83uASM0RFu7zd4BIzRES7vM3hEjNERLu7zQEjNEREu7vN4SM0RES7u83hI0RERLu7vOE0RERFqqq84kVVREWqqqqWZlVERfqqmph2ZVRF//mruodmVF///7y6h2ZU////vLuYZU/////MvLo0T////8y8z////w==\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>This example shows how to update fingerprint data on a User.</p>\n<p>The BODY parameters as follows:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>fingerprint_templates</td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td>:finger_mask</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Set to True to mark the fingerprint as a duress fingerprint. When threatened by someone to open the door, the user can authenticate using this fingerprint to send an alarm signal to BioStar 2.</td>\n</tr>\n<tr>\n<td>:template0</td>\n<td>Raw</td>\n<td>Y</td>\n<td>First scan template of the fingerprint</td>\n</tr>\n<tr>\n<td>:template1</td>\n<td>Raw</td>\n<td>Y</td>\n<td>Second scan template of the fingerprint</td>\n</tr>\n<tr>\n<td>:isNew</td>\n<td>Boolean</td>\n<td>N</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div><p>Use POST /api/devices/:dev_id/scan_fingerprint to enroll fingerprint<br />Use POST /api/server_matching/identify_finger to check whether the fingerprint already recorded or not.</p>\n<ul>\n<li><p>Raw data for template0 and template1 available after enrolling a fingerprint.</p>\n</li>\n<li><p>Fingerprint(s) used for regular access should not be registered as duress fingerprint.</p>\n</li>\n<li><p>If the fingerprint authentication rate is low, delete the existing fingerprint information and add a new fingerprint.</p>\n</li>\n<li><p>Use an adequate security level. If 1:1 Security Level is too high, the fingerprint authentication rate may be too low or the false rejection rate (FRR) may be too high.</p>\n</li>\n<li><p>For best fingerprint scanning quality, make sure to cover the entire surface of the fingerprint sensor with the finger.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"14","key":"id"}]}},"response":[],"_postman_id":"141918c4-8044-43c8-8352-f9394f019d4b"},{"name":"User Credential: Face","event":[{"listen":"prerequest","script":{"id":"5fe5b456-32c7-4cfc-a6ed-97d9ed85bbbb","exec":[""],"type":"text/javascript"}}],"id":"cafe96b4-04a0-4817-8454-33c5f710a7df","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"credentials\": {\r\n            \"faces\": [\r\n                {\r\n                    \"raw_image\": \"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/ This is a truncated RAW Data\",\r\n                    \"templates\": [\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABq83b11/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACs9nf9Ov5vAxz64gF2/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABY+AP9VfxIB1T5zANF/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABr9I79d/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADM+FX9O/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACZ90T6E/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAp+eAAtv4QBOz7MgJ5/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAm+OMHjP9OBZ/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADZ9Un40fkJCKDzsv/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACC9ET98/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADv9jv6m/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACL8834ZPf5B7XxmgLw+1kBifoSEMrp5PIDCx8acwKeCJ7a5gYSA5oDKAkB9UT6Ae17F18EWP1gAlDxW/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAh+Y8EXvwlAGD6+wOy/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADU8nL8pvcyA6H1lP9P+AABqPw1Du/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAB09TD+u/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADZ/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABi+U78LPkEAUH7LgPs/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAM/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAD69iL9v/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAH+jcCd/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAl+f0ERADdBj/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAb+9MHIgKaBe36dwFm/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAB6+HYH2P+QBYb42gA2/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABG+gsHjQLuBaX7pf86/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADE96kF5Pz4Bsb4Cv6S/ Truncated\"\r\n                        }\r\n                    ]\r\n                },\r\n                {\r\n                    \"raw_image\": \"/9j/4AAQSkZJRgABAQAAAQABAAD/ Truncated\",\r\n                    \"templates\": [\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABu8qP+lPvSCAj2eQXHAnkBPfqWD/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAA+9R733fQfCmn3UwVfAC0B4fgaEBPsWPJQB3IYmP+jB9ndMgcPCBAJvgp/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACN93D/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAB7+Y/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACS8Qb9mf2vCnL2QgU5AV8Bifq3D3vn4PMdClcYyf8nCtnbKgWg9igF0Bff+VP5p/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABO+Cv/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADn8j36PvezBVj1WAA491D/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAA19ar5EfSCCev5TQWJA6YAYPhUE97ppPLKB3Igs/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACb9Pz9EPzQBlv3bwJKAPf/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADy95n9o/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAa8lX8MvVkCQ7yDQIN+4ABtfp4DfvnC/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACU8t747PMICNDz9AAcAFEB6/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADl+en+if33BEL4oP7T+24EYvyfEmHpKfRrB/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACe/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADU+Pn/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAD49sL9HP5EA3j5NP7F+wYA1vl4ENnoJfbRCvES3v1ZCuDZrQWP/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADd+TsJu/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAy8DgAn/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACY+noFNvzsBDP+mQLp+sP9LvxsFjflI/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACX9cL9evw0BET1Sv5G/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADW+ZIG2v2PAxj8nQHx+yb8xvq/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAA79hL9qPxvAyX5wQA8+F7+pvfXDIPlkPOpB2EUVP8RBmvW7gF3+9oFfxEa9br1K/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABU+/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADg+74DUvxrBPL+NgSM+hX/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACW+10JkwElBy79hwNj/ Truncated\"\r\n                        }\r\n                    ]\r\n                }\r\n            ]\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>This example shows how to add a Face Credential on a User.</p>\n<p>You can add the user's faces if the device supports face authentication.</p>\n<ul>\n<li>When registering a face, maintain a distance of 40cm to 80cm between the device and the face.</li>\n<li>Be careful not to change the facial expression. (smiling face, drawn face, wink, etc.)</li>\n<li>If you do not follow the instructions on the screen, the face registration may take longer or may fail.</li>\n<li>Be careful not to cover the eyes or eyebrows.</li>\n<li>Do not wear hats, masks, sunglasses or eyeglasses.</li>\n<li>Be careful not to display two faces on the screen. Register one person at a time.</li>\n<li>It is recommended for a user wearing glasses to register both faces with and without glasses.</li>\n</ul>\n<p>Parameters on this example:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>faces</td>\n<td>Array</td>\n<td>Y</td>\n<td>Main container of the credential</td>\n</tr>\n<tr>\n<td>:raw_image</td>\n<td>Raw</td>\n<td>Y</td>\n<td>Raw image of the face scan</td>\n</tr>\n<tr>\n<td>:templates</td>\n<td>Array</td>\n<td>Y</td>\n<td>Container of the face templates</td>\n</tr>\n<tr>\n<td>::template</td>\n<td>Raw</td>\n<td>Y</td>\n<td>Face template of the User</td>\n</tr>\n</tbody>\n</table>\n</div><p>To get data for parameter raw_image and template, use GET /api/devices/:device_id/credentials/face</p>\n<p>Use POST /api/v2/devices/search to list all device which can support the selected credentials. See API documentation for details on the usage of the API.</p>\n<p>When updating a User, it is required to put the credential data as acquired from GET /api/users/:id<br />This is done so the data won't be lost after update.</p>\n<p>To delete a Face, skip the parameters on using this API.</p>\n<p>You can use raw_image value as value on photo parameter of a User.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"102","key":"id"}]}},"response":[],"_postman_id":"cafe96b4-04a0-4817-8454-33c5f710a7df"},{"name":"User Credential: Visual Face","event":[{"listen":"prerequest","script":{"id":"593621bc-1f86-4e6d-8f5c-5bda84dba87b","exec":[""],"type":"text/javascript"}}],"id":"5226b114-47df-41cf-96de-65dfc6e29679","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"credentials\": {\r\n            \"visualFaces\": [\r\n                {\r\n                    \"template_ex_normalized_image\": \"/9j/4AAQSkZJRgABAQEASABIAAD/ Truncated\",\r\n                    \"templates\": [\r\n                        {\r\n                            \"credential_bin_type\": \"5\",\r\n                            \"template_ex\": \"AAABAAEAKgHyAaUA1wBj8vP2XEpVQSt0dQAAhQApwwBkcAAAOQAAAIR9eH6CiHmDeIJ+hHp/fX54eoOMdol5f4d9fYGHfoSAfHiAenuJgYZ8g3yAfXmBg36CgoGGhn6Ce3eDeXp3eIWGbnqGfJF4hIl4cX54gX+Ceod8cIJ9g32CgH+AhoeBgH12go57h4F4iXh6g31+gX+BdnyKhYKCfXqLeX2AgomMfYR/foKDgXt7hHp/fXh6g315dnp/f4N8f3h9g3Z+c3J7hH9/gYaFfoGKd3yHeXl/d3+AeXd+fYR8fn2Dd4OGfoF8hIGCgn+DfH+HhXp/e4V9fHiAhXeBgX94f3F6hIeBent8fYCAg4J1hnl+c4F6doZ9g32JhnuDg3l4fXyEg3uEfYmEh3yCf4Z2gH2BgoZ/g3p2hXuIhIOCfYKBfXd8hIeDdYSFfHSDg3R+d4eBeY98gXp1dH59fHyBhXl4hG+Aen2De4OCgIGKhXmFgnuHfH98hIl6fIZ0gIB2homJgHuFf4OKhYZ8hHqFgoB9jYeGgX57iYGCfIV6f4aBfnqAhoV9e4KBgYmDgH55g4Z8hoCDhIR8gIOHfniChIB5hXl/gIV4f4l+g3V5hn5/f45/fHmAgIB5gIR8fYiGeoKBdXZ+eIB+gneDenl+fIGBgIeEf4CCjIJ3eYKCiX13gHh9eIeChX6FdYGFfYSFhn6EhYCGf4h5e4OLfYl9gIN3fYR8\"\r\n                        },\r\n                        {\r\n                            \"credential_bin_type\": \"9\",\r\n                            \"template_ex\": \"AAABAAEAVgHZAa8A4wAAAAAAWFVLREUAAAAAdVANMQFkcAAAOQAAAIWEdn+Din+Ed4GCg3eAhHl4gX6OdI56foZ7e3yGe4d7d4OIfnaFgYJ/goB7eniCgXx8gYSEhHqBfXp/eoJ2f4GFcYCAfYV7gYZ3d3l4hHqEfI94cYCDg3+Bf397iYyAgHx7gIp4hol2gnx7hYGAe4KGf4J+gYR+fneJd319gouMf4CAgoWKe3p/hH1/g3pygH57eYGCfop/eoCAi3l6c3d7hIaAiICCfnyIc3qCdXx9en2AeH6DgXp9e4CDe4yGfIKEfoKGgXiCgYOEhnl4foCDf3uFg3qBgIF2g3J8foSBeXh7gYOCgYB6iIR9enx7dYR/fX6AgoCCgXh8fXyAeXuAfYmGiXd9f4p2gXqBgoh7hXl8hXuCgoGCgYZ+e3p/hYSBgomLgnOBf3uCe4WEhIx6fnt4eYZ8gnt7hnp7gHqFfoF/fYCAhIKCgnaDenyJf3t+goh4hYV2goN7g4eNfYOBd4KLgoSBh3qAhn5/joGDgYF6gH6HfYlzhop9hH6AeYGAgH9/gIt/iYJ+god9jYOCgoR/g4WCg3WCg4B4hXl8fYR5iYGAg353g3R6fYd7d3WHgX1xf3t4gYWIeYKEe3h8eoOBf3WGdYCChIR7foiDgX56hYh+eX6AiXuBfXiAdomAeoB+doSCf4aFgXmDgX2AfYp9fH2KfIR6foJwfIOB\"\r\n                        }\r\n                    ]\r\n                },\r\n                {\r\n                    \"template_ex_normalized_image\": \"/9j/4AAQSkZJRgABAQEASABIAAD/ Truncated\",\r\n                    \"templates\": [\r\n                        {\r\n                            \"template_ex\": \"AAABAAEAgwFoAbgA6gBl8vryXUdWNip7hwAAnKA+uQBkcAAAOQAAAIZ7eX5/iX2CeH59iXuAgH1vfoWNdop8gIqAfoCIe4iAdYGFenmHgId7fH5+fHN/g3+GgICCgHmCe3mEc3tze4uGdH+IgYt5hIR4dYN4gn+AeoV8b4B8g3qAh4GFiId/f391gYp3foJ2iHp6gXuAg3uBgH+Jg4F8fneHgICEg4aMfH9/fISEgH17iHh4fnp1hIF/fXyBeYaAfn96hXZ8e3R+gX98hYOAf32GeX+Ie3x9d314fHyBgIR6fYKDeIWHf4KDiICFhnuAeoB7gXeEe4B8fnl/h3d5hIJ6fXR5f4aFfXyBe4B+hIRziYN6eYR7eH9/gYCEgHuCgHp4fYOHgoN/eomGh3Z7e4Vzf3qAjYt+gH16gX2Dgn6DfIOAfnZ6hYuAfISKgXiFgHV9d4uBf4iFgHZ5d3x9gXx5gn55hHSCfn6AfYSBhIKIhnSFhYGMen58gYd7gIN2fnl5h4SLgnmHfX2HgYV7gH2Fe4F7h4GBfn98iH+DfYl5gIJ9g319gIV/g4J8gYV/fHt5hIN9i4KEg35+h4eJg4B8fHp7gXl+hYJzf4V6gntxhn9+eoR/fHuDfHx7gIJ4f4SBfH9+doB9d4F/fXaFdHl9eoOEfoWEf3uEhoV0doCCjHt0hXl+coOAg4ODdYSGgIOHh3yBioCEeYx7eXyMf4l/hYF1foWD\",\r\n                            \"credential_bin_type\": \"5\"\r\n                        }\r\n                    ]\r\n                }\r\n            ]\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>Visual Face is a credential that captures the user's face with a visual camera. It is different from face information captured with an infrared camera and is only available on devices that support Visual Face.</p>\n<p>There are two ways to input a Visual Face: by scanning through a enrollment device, or by uploading an image.</p>\n<p>Up to 2 visual faces can be added.<br />Use <code>GET /api/devices/:device_id/credentials/face</code> to scan Visual Face using an enrollment device.</p>\n<p>You can enroll a visual face using FaceStation F2.<br />Use <code>POST /api/v2/devices/search</code> to list compatible devices.</p>\n<p>To upload image as a Visual Face: image file size is up to 10MB and supported file formats are JPG, JPEG and PNG.<br />Use <code>PUT /api/users/check/upload_picture</code> to check whether the image is suitable for use or not.<br />BODY example on using Upload Picture:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n\"User\": {\n \"credentials\": {\n  \"visualFaces\": [{\n   \"template_ex_picture\": \"/9j/4AAQSkZJRgABAQAAAQABAAD/ Truncated\"\n  }]\n }}\n}\n\n</code></pre>\n<p>Parameters on this example:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>visualFaces</td>\n<td>Array</td>\n<td>Y</td>\n<td>Main container of Visual Face credential</td>\n</tr>\n<tr>\n<td>:template_ex_normalized_image</td>\n<td>Base64</td>\n<td>Y</td>\n<td>Cropped image ready for visual face extraction.</td>\n</tr>\n<tr>\n<td>:templates</td>\n<td>Array</td>\n<td>Y</td>\n<td>Container of the templates</td>\n</tr>\n<tr>\n<td>::credential_bin_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>UNKNOWN = -1  <br />FACE_TEMPLATE = 0  <br />FACE_TEMPLATE_IMAGE = 1  <br />FACE_RAW_IMAGE = 2  <br />FACE_TEMPLATE_EX_VER_2 = 5 (For FaceStation F2)  <br />FACE_TEMPLATE_EX_VER_3 = 9 (For BioStation 3 and W3)  <br />FACE_TEMPLATE_EX_NORMALIZED = 7  <br />FACE_TEMPLATE_EX_PICTURE = 8</td>\n</tr>\n<tr>\n<td>::template_ex</td>\n<td>Raw</td>\n<td>Y</td>\n<td>Visual Face template data which includes FaceStation F2 and the new BioStation 3.</td>\n</tr>\n<tr>\n<td>:template_ex_picture</td>\n<td>Base64</td>\n<td>Y</td>\n<td>Parameter for Upload Picture raw data</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.6:</p>\n<ul>\n<li><p>templateEx changed to template_ex</p>\n</li>\n<li><p>templateExIr removed since it's not used anymore</p>\n</li>\n<li><p>Added credential_bin_type: FACE_TEMPLATE_EX_VER2 and FACE_TEMPLATE_EX_VER_3</p>\n</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"102","key":"id"}]}},"response":[],"_postman_id":"5226b114-47df-41cf-96de-65dfc6e29679"},{"name":"Check Picture Specification","id":"f159c7c2-b9aa-41c8-b7e0-09d97e15c718","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"template_ex_picture\": \"/9j/4AAQSkZJRgABAQEASABIAAD/ Truncated\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/check/upload_picture","description":"<p>This API is used to check whether the image that will be uploaded on Visual Face credential is according to specification or not.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>template_ex_picture</td>\n<td>Base64</td>\n<td>Y</td>\n<td>Image that will be checked</td>\n</tr>\n</tbody>\n</table>\n</div><ul>\n<li>Supported image file size is up to 10MB.</li>\n<li>Supported image file formats are JPG, JPEG and PNG.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","check","upload_picture"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"f159c7c2-b9aa-41c8-b7e0-09d97e15c718"},{"name":"Delete User(s)","event":[{"listen":"prerequest","script":{"id":"27bffb83-4043-49fa-ab21-001635f145b8","exec":["//batch delete\r","/*\r","var currentCount = pm.collectionVariables.get('nLoop');\r","if (currentCount > 203){\r"," currentCount = parseInt(currentCount)-1;\r"," pm.collectionVariables.set('nLoop', currentCount);\r"," }*/\r","\r","/* batch delete subsequent users\r","var text =\"\";\r","var i = 9001;\r","for (; i <= 9973; i++) {\r","  text += i + \"+\";\r","}\r","text = text.slice(0, -1); \r","pm.collectionVariables.set('nLoop',text);\r","*/\r","\r","pm.iterationData.get(\"iterIDVal\")"],"type":"text/javascript"}},{"listen":"test","script":{"id":"014f0771-1909-4b0e-9a34-e26854e306a8","exec":[""],"type":"text/javascript"}}],"id":"df2f5868-efb3-4eeb-9eef-2aa07c01797f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/users?id=101","description":"<p>This API is used to delete user(s) from BioStar 2 database.</p>\n<p>Known errors:</p>\n<ul>\n<li>Empty parameter id</li>\n<li>Using id which doesn't exist</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the User which will be deleted. To delete multiple Users, use plus (+) sign as separator of each User ID. Ex: 1001+1002+1003+1004\nUse GET /api/users to list available users</p>\n","type":"text/plain"},"key":"id","value":"101"}],"variable":[]}},"response":[],"_postman_id":"df2f5868-efb3-4eeb-9eef-2aa07c01797f"},{"name":"Delete User(s) with Advanced Search","event":[{"listen":"prerequest","script":{"id":"27bffb83-4043-49fa-ab21-001635f145b8","exec":["//batch delete\r","/*\r","var currentCount = pm.collectionVariables.get('nLoop');\r","if (currentCount > 203){\r"," currentCount = parseInt(currentCount)-1;\r"," pm.collectionVariables.set('nLoop', currentCount);\r"," }*/\r","\r","/* batch delete subsequent users\r","var text =\"\";\r","var i = 9001;\r","for (; i <= 9973; i++) {\r","  text += i + \"+\";\r","}\r","text = text.slice(0, -1); \r","pm.collectionVariables.set('nLoop',text);\r","*/\r","\r","pm.iterationData.get(\"iterIDVal\")"],"type":"text/javascript","packages":{}}},{"listen":"test","script":{"id":"014f0771-1909-4b0e-9a34-e26854e306a8","exec":[""],"type":"text/javascript","packages":{}}}],"id":"5709adb8-cc2a-4c60-b1f0-c4387fcc0e8c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"adv_criteria\": {\r\n        \"limit\": 50,\r\n        \"order_by\": \"user_id:false\",\r\n        \"user_group_ids\": [\r\n            1121\r\n        ],\r\n        \"user_id\": \"11\",\r\n        \"user_email\": \"abc@gmail.com\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/advance_search/delete?adv=mode1","description":"<p>This API is used to delete user(s) which is collected from Advanced Search query.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>adv_criteria</td>\n<td>Object</td>\n<td>Y</td>\n<td>See Batch Edit with Advanced Search for adv_criteria details.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Response\" : {\n    \"code\" : \"0\",\n    \"link\" : \"https://support.supremainc.com/en/support/home\",\n    \"message\" : \"Success\"\n  }\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","advance_search","delete"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Use this to enable Advanced Search query result.</p>\n","type":"text/plain"},"key":"adv","value":"mode1"}],"variable":[]}},"response":[],"_postman_id":"5709adb8-cc2a-4c60-b1f0-c4387fcc0e8c"},{"name":"Send User Data to Device","event":[{"listen":"prerequest","script":{"id":"ddd345d0-77d9-450c-891c-2e1f5209e810","exec":[""],"type":"text/javascript"}}],"id":"8c455d14-9445-4930-ac33-aca9fd8a6cb6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"DeviceCollection\": {\r\n    \"rows\": [\r\n      {\r\n        \"id\": \"543720368\"\r\n      }\r\n    ]\r\n  }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/export?overwrite=true&id=15&adv=mode1","description":"<p>This API is used to send user data to a device.</p>\n<p>For example when you want to send user John data after credential update to FaceStation F2.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"DeviceResponse\" : {\n    \"rows\" : [ {\n      \"id\" : \"50362288\",\n      \"code\" : \"0\"\n    } ],\n    \"result\" : \"true\"\n  },\n  \"Response\" : {\n    \"code\" : \"0\",\n    \"link\" : \"https://support.supremainc.com/en/support/home\",\n    \"message\" : \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>DeviceResponse</td>\n<td>Object</td>\n<td>Response from device</td>\n</tr>\n<tr>\n<td>DeviceResponse.rows</td>\n<td>Array</td>\n<td>List of device ID</td>\n</tr>\n<tr>\n<td>DeviceResponse.result</td>\n<td>Boolean</td>\n<td>Indicate success or fail</td>\n</tr>\n<tr>\n<td>Response</td>\n<td>Object</td>\n<td>Indicate success or fail</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.8:</p>\n<ul>\n<li><p>Added <code>adv=mode1</code> on Query Parameter to enabled advanced search compatibility. This parameter is optional. When not used, it will use the previous capability.</p>\n</li>\n<li><p>Request Body with Advanced Search example (see <code>Batch Edit with Advanced Search</code> for <code>adv_criteria</code> details) :</p>\n</li>\n</ul>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"DeviceCollection\" : {\n    \"rows\" : [ {\n      \"id\" : \"50362288\"\n    } ]\n  },\n  \"adv_criteria\" : {\n    \"limit\" : 50,\n    \"order_by\" : \"user_id:false\",\n    \"user_group_ids\" : [ 1014 ],\n    \"user_id\" : \"8\",\n    \"user_email\" : \"support@supremainc.com\"\n  }\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","export"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Toggle to overwrite the data on the device. True to overwrite (default value)</p>\n","type":"text/plain"},"key":"overwrite","value":"true"},{"description":{"content":"<p>ID of the User that will be sent to the Device. To send multiple users, use plus (+) sign as separator of each User ID. Ex: 1001+1002+1003+1004</p>\n","type":"text/plain"},"key":"id","value":"15"},{"description":{"content":"<p>Use this to enable Advanced Search query result.</p>\n","type":"text/plain"},"key":"adv","value":"mode1"}],"variable":[]}},"response":[],"_postman_id":"8c455d14-9445-4930-ac33-aca9fd8a6cb6"},{"name":"Delete User(s) From Device (Advanced Search)","event":[{"listen":"prerequest","script":{"id":"27bffb83-4043-49fa-ab21-001635f145b8","exec":["//batch delete\r","/*\r","var currentCount = pm.collectionVariables.get('nLoop');\r","if (currentCount > 203){\r"," currentCount = parseInt(currentCount)-1;\r"," pm.collectionVariables.set('nLoop', currentCount);\r"," }*/\r","\r","/* batch delete subsequent users\r","var text =\"\";\r","var i = 9001;\r","for (; i <= 9973; i++) {\r","  text += i + \"+\";\r","}\r","text = text.slice(0, -1); \r","pm.collectionVariables.set('nLoop',text);\r","*/\r","\r","pm.iterationData.get(\"iterIDVal\")"],"type":"text/javascript","packages":{}}},{"listen":"test","script":{"id":"014f0771-1909-4b0e-9a34-e26854e306a8","exec":[""],"type":"text/javascript","packages":{}}}],"id":"f0944e10-2418-4e94-8ca0-f99f32d9f12b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DeviceCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"40000701\"\r\n            }\r\n        ]\r\n    },\r\n    \"adv_criteria\": {\r\n        \"limit\": 50,\r\n        \"order_by\": \"user_id:false\",\r\n        \"user_name\": \"a\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/remove?adv=mode1","description":"<p>This example shows how to delete users in device(s) in concurrence with Advanced Search query result.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>DeviceCollection</td>\n<td>Object</td>\n<td>Y</td>\n<td>Device collection.</td>\n</tr>\n<tr>\n<td>DeviceCollection.rows</td>\n<td>Array</td>\n<td>Y</td>\n<td>Device ID(s) which user data will be deleted.</td>\n</tr>\n<tr>\n<td>adv_criteria</td>\n<td>Object</td>\n<td>Y</td>\n<td>See Batch Edit with Advanced Search for adv_criteria details.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"DeviceResponse\" : {\n    \"rows\" : [ {\n      \"id\" : \"50362313\",\n      \"code\" : \"0\"\n    } ],\n    \"result\" : \"true\"\n  },\n  \"Response\" : {\n    \"code\" : \"0\",\n    \"link\" : \"https://support.supremainc.com/en/support/home\",\n    \"message\" : \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>DeviceResponse</td>\n<td>Object</td>\n<td>Response from device</td>\n</tr>\n<tr>\n<td>DeviceResponse.rows</td>\n<td>Array</td>\n<td>List of device ID</td>\n</tr>\n<tr>\n<td>DeviceResponse.result</td>\n<td>Boolean</td>\n<td>Indicate success or fail</td>\n</tr>\n<tr>\n<td>Response</td>\n<td>Object</td>\n<td>Indicate success or fail</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","remove"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Use this to enable Advanced Search query result.</p>\n","type":"text/plain"},"key":"adv","value":"mode1"}],"variable":[]}},"response":[],"_postman_id":"f0944e10-2418-4e94-8ca0-f99f32d9f12b"},{"name":"List Idle Users","event":[{"listen":"prerequest","script":{"id":"988182ba-efeb-4d3f-881f-ca57d8a9947c","exec":[""],"type":"text/javascript"}}],"id":"6f4e8ac2-d67a-4264-a3d8-bc90375a0e51","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"offset\": 0,\r\n        \"limit\": 0,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"user_group_id.id\",\r\n                \"operator\": 2,\r\n                \"values\": [\r\n                    2\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"user_id\",\r\n                \"descending\": false\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/absence?search_month=1&last_modified=0","description":"<p>Show user(s) which do not have any activity on the last n month(s).</p>\n<p>n = search_month parameter</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>Y</td>\n<td>Default: 0. Shift the response record(s) according to the specified value</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>Default: 0. Limit the response record(s) shown by the specified value.</td>\n</tr>\n<tr>\n<td>conditions:column</td>\n<td>String</td>\n<td></td>\n<td>Column/field which the condition will be based on.</td>\n</tr>\n<tr>\n<td>conditions:operator</td>\n<td>Number</td>\n<td></td>\n<td>0 = EQUAL  <br />1 = NOT_EQUAL  <br />2 = CONTAINS  <br />3 = BETWEEN (values[0], values[1])</td>\n</tr>\n<tr>\n<td>conditions:values</td>\n<td>Number</td>\n<td></td>\n<td>Value of the condition according to the operator and column.</td>\n</tr>\n<tr>\n<td>orders:column</td>\n<td>String</td>\n<td>N</td>\n<td>Column/field which the order will be based on.</td>\n</tr>\n<tr>\n<td>orders:descending</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle false to set the response's order as ascending.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"error-codes\">Error Codes:</h4>\n<ul>\n<li><p>400: Invalid query parameters</p>\n</li>\n<li><p>405: Method not allowed (only POST supported)</p>\n</li>\n<li><p>500: Internal server/database error</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","absence"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Number of months to look back. Users with no activity within this range are returned. Optional (default = 0)</p>\n","type":"text/plain"},"key":"search_month","value":"1"},{"description":{"content":"<p>UNIX timestamp. Only returns users modified after this time. (Unused if 0)</p>\n","type":"text/plain"},"key":"last_modified","value":"0"}],"variable":[]}},"response":[],"_postman_id":"6f4e8ac2-d67a-4264-a3d8-bc90375a0e51"},{"name":"List Idle Users - Multiple ID","event":[{"listen":"prerequest","script":{"id":"988182ba-efeb-4d3f-881f-ca57d8a9947c","exec":[""],"type":"text/javascript"}}],"id":"c234cd32-88b0-4684-9cd5-b9f110711872","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"offset\": 0,\r\n        \"limit\": 0,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"user_id\",\r\n                \"operator\": 2,\r\n                \"values\": [\r\n                    1,2,4\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"user_id\",\r\n                \"descending\": false\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/absence","description":"<p>This example shows a workaround using this API to get multiple users data by adjusting the parameters.</p>\n<p>The advantage of this workaround is that the API response can be adjusted to only show only the required users directly.</p>\n<ul>\n<li>Query parameter search_month value is set to 0 or removed</li>\n<li>Body parameter conditions:column value set to user_id, :operator value to 2 (contains), and :value can specify multiple user id which uses comma as separator.</li>\n</ul>\n<p>For BODY Parameter details refer to POST List Idle Users.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","absence"],"host":["https://127.0.0.1"],"query":[{"disabled":true,"description":{"content":"<p>Filter user(s) which idle for the last n month(s).</p>\n","type":"text/plain"},"key":"search_month","value":"9"}],"variable":[]}},"response":[],"_postman_id":"c234cd32-88b0-4684-9cd5-b9f110711872"},{"name":"Delete Idle Users","event":[{"listen":"prerequest","script":{"id":"988182ba-efeb-4d3f-881f-ca57d8a9947c","exec":[""],"type":"text/javascript"}}],"id":"939c108c-59ec-41a9-ad05-cc04608e71b8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"offset\": 0,\r\n        \"limit\": 0,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"user_group_id.id\",\r\n                \"operator\": 2,\r\n                \"values\": [\r\n                    2\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"user_id\",\r\n                \"descending\": false\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/absence/delete?search_month=1&id=10 11","description":"<p>This API is used to delete idle users.</p>\n<p>For BODY parameter refer to POST List Idle Users.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","absence","delete"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Filter user(s) which idle for the last n month(s).</p>\n","type":"text/plain"},"key":"search_month","value":"1"},{"description":{"content":"<p>ID of the idle users which will be deleted. Use space as separator to delete multiple users.</p>\n","type":"text/plain"},"key":"id","value":"10 11"}],"variable":[]}},"response":[],"_postman_id":"939c108c-59ec-41a9-ad05-cc04608e71b8"},{"name":"Advanced Search","id":"90801371-c02f-41b7-9b1d-0e2a8ae18fb4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"limit\": 50,\r\n    \"order_by\": \"user_id:false\",\r\n    \"user_group_ids\": [\r\n        1004\r\n    ],\r\n    \"user_id\": \"45\",\r\n    \"user_name\": \"Riz\",\r\n    \"user_email\": \"@gmail.com\",\r\n    \"user_department\": \"oddBit\",\r\n    \"user_title\": \"Mister\",\r\n    \"user_card\": \"12\",\r\n    \"user_operator_level_id\": \"255\",\r\n    \"user_access_group_ids\": \"1\",\r\n    \"user_custom_field_1\": \"custom field 1\",\r\n    \"user_custom_field_2\": \"123\",\r\n    \"user_custom_field_3\": \"test1\",\r\n    \"user_custom_field_4\": \"custom field 4\",\r\n    \"user_custom_field_5\": \"456\",\r\n    \"user_custom_field_6\": \"test4\",\r\n    \"user_custom_field_7\": \"custom field 7\",\r\n    \"user_custom_field_8\": \"789\",\r\n    \"user_custom_field_9\": \"test5\",\r\n    \"user_custom_field_10\": \"custom field 10\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/users/advance_search","description":"<p>This API is used to fetch user information via advanced search. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>The maximum number of users to return. Default is 50.</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>String</td>\n<td>N</td>\n<td>The number of users to skip before starting to return results. Default is 0.</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>N</td>\n<td>The User ID to search, supports like search</td>\n</tr>\n<tr>\n<td>user_group_id</td>\n<td>String</td>\n<td>N</td>\n<td>Group ID for search user. Also gets the child user group</td>\n</tr>\n<tr>\n<td>user_group_ids</td>\n<td>String</td>\n<td>N</td>\n<td>Array of Group IDs for advanced search parameter</td>\n</tr>\n<tr>\n<td>user_name</td>\n<td>String</td>\n<td>N</td>\n<td>User name for Advance Search parameter, supports like search both encrypted and unencrypted</td>\n</tr>\n<tr>\n<td>user_email</td>\n<td>String</td>\n<td>N</td>\n<td>User email, supports like search both encrypted and unencrypted</td>\n</tr>\n<tr>\n<td>user_phone</td>\n<td>String</td>\n<td>N</td>\n<td>User Phone for Advance Search parameter, supports like search both encrypted and unencrypted</td>\n</tr>\n<tr>\n<td>user_department</td>\n<td>String</td>\n<td>N</td>\n<td>User Department for Advance Search parameter, supports like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_access_group_ids</td>\n<td>String</td>\n<td>N</td>\n<td>User access group id for advance search parameter, supports multiple value with format String with Delimiter , i.e 1,2,3</td>\n</tr>\n<tr>\n<td>user_title</td>\n<td>String</td>\n<td>N</td>\n<td>User title for advance search parameter, supports like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_card</td>\n<td>String</td>\n<td>N</td>\n<td>User card ID</td>\n</tr>\n<tr>\n<td>user_status</td>\n<td>Boolean</td>\n<td>N</td>\n<td>User status for advance search parameter</td>\n</tr>\n<tr>\n<td>user_operator_level_id</td>\n<td>String</td>\n<td>Y</td>\n<td>User operator level id for Advance Search parameter</td>\n</tr>\n<tr>\n<td>user_custom_field_1</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_2</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_3</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_4</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_5</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_6</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_7</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_8</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_9</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>user_custom_field_10</td>\n<td>String</td>\n<td>N</td>\n<td>Custom fields for advance search parameter support like search on unencrypted and exact search on encrypted</td>\n</tr>\n<tr>\n<td>order_by</td>\n<td>String</td>\n<td>N</td>\n<td>Order, will accept with format properties:false, for example if we want to order by name, it will be user_name:false. false = ASCENDING and true = DESCENDING</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"UserCollection\" : {\n    \"total\" : 1,\n    \"rows\" : [ {\n      \"user_id\" : \"45\",\n      \"name\" : \"Suprema\",\n      \"email\" : \"one@suprema.com\",\n      \"department\" : \"Your Dept\",\n      \"user_title\" : \"Your Title\",\n      \"phone\" : \"085697068105\",\n      \"user_group_id\" : {\n        \"id\" : 1004,\n        \"name\" : \"user group1\"\n      },\n      \"operator_level\" : \"User\",\n      \"fingerprint_template_count\" : 0,\n      \"face_count\" : 0,\n      \"visual_face_count\" : 0,\n      \"mobile_count\" : 0,\n      \"qr_count\" : 0,\n      \"card_count\" : 1,\n      \"start_datetime\" : \"2001-01-01T00:00:00\",\n      \"expiry_datetime\" : \"2037-12-31T23:59:00\",\n      \"last_modified\" : 5,\n      \"updated_count\" : 0,\n      \"login_id\" : \"Abrar\",\n      \"disabled\" : false,\n      \"have_pin\" : true,\n      \"access_groups\" : [ {\n        \"id\" : 1,\n        \"name\" : \"access group 3\",\n        \"users\" : [ ],\n        \"user_groups\" : [ ],\n        \"access_levels\" : [ ],\n        \"floor_levels\" : [ ]\n      } ],\n      \"user_custom_fields\" : [ {\n        \"custom_field\" : {\n          \"id\" : 1,\n          \"name\" : \"CF1\",\n          \"type\" : 0,\n          \"order\" : 1\n        },\n        \"item\" : \"custom field 1\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 2,\n          \"name\" : \"CF2\",\n          \"type\" : 1,\n          \"order\" : 2\n        },\n        \"item\" : \"123\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 3,\n          \"name\" : \"CF3\",\n          \"type\" : 2,\n          \"order\" : 3\n        },\n        \"item\" : \"test1\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 4,\n          \"name\" : \"CF4\",\n          \"type\" : 0,\n          \"order\" : 4\n        },\n        \"item\" : \"custom field 4\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 5,\n          \"name\" : \"CF5\",\n          \"type\" : 1,\n          \"order\" : 5\n        },\n        \"item\" : \"456\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 6,\n          \"name\" : \"CF6\",\n          \"type\" : 2,\n          \"order\" : 6\n        },\n        \"item\" : \"test4\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 7,\n          \"name\" : \"CF7\",\n          \"type\" : 0,\n          \"order\" : 7\n        },\n        \"item\" : \"custom field 7\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 8,\n          \"name\" : \"CF8\",\n          \"type\" : 1,\n          \"order\" : 8\n        },\n        \"item\" : \"789\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 9,\n          \"name\" : \"CF9\",\n          \"type\" : 2,\n          \"order\" : 9\n        },\n        \"item\" : \"test5\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      }, {\n        \"custom_field\" : {\n          \"id\" : 10,\n          \"name\" : \"File Upload\",\n          \"type\" : 3,\n          \"order\" : 10\n        },\n        \"item\" : \"1\",\n        \"user_id\" : {\n          \"user_id\" : \"45\",\n          \"name\" : \"Suprema\"\n        }\n      } ]\n    } ]\n  },\n  \"Response\" : {\n    \"code\" : \"0\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- UserCollection : The user collection.\n    - total : total number of users\n    - rows : list of users\n        - user_id : user ID\n        - name : user name\n        - email : user email\n        - department : user department\n        - user_title : user title\n        - phone : user phone number\n        - user_group_id : user group data\n        - operator_level : operator level/permission\n        - fingerprint_template_count : count of fingerprint template\n        - face_count : face count\n        - visual_face_count : count of visual face\n        - mobile_count : count of mobile credentials\n        - qr_count : count of QR credentials\n        - card_count: count of card\n        - start_datetime : start datetime of user\n        - expiry_datetime : expiry datetime of user\n        - last_modified : last modified\n        - updated_count : updated count of user\n        - login_id : user’s login ID\n        - disabled : is user enabled or disabled\n        - have_pin : does user have pin\n        - access_groups : list of access groups\n        - user_custom_fields : user’s custom fields\n- Response : The response\n    - code : success/fail code\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<p>This API uses the following error codes:</p>\n<ul>\n<li><p><code>400 Bad Request</code>: The request was malformed or missing required parameters.</p>\n</li>\n<li><p><code>401 Unauthorized</code>: The API key provided was invalid or missing.</p>\n</li>\n<li><p><code>404 Not Found</code>: The requested resource was not found.</p>\n</li>\n<li><p><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</p>\n</li>\n</ul>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.8:</p>\n<ul>\n<li><p>Updated Response Example to display File Upload Custom Field.</p>\n</li>\n<li><p>Modified response value for user_custom_fields parameter. Added key \"item\" with value 0 or 1 for custom field type File Upload. 0 = user does not have a file and 1 = user have a file.</p>\n</li>\n<li><p>To search user who does not have a document, search custom_field order with the value \"No\" (<code>\"user_custom_field_#\": \"No\")</code>. Then the API will specify user who does not have a document by specific custom field.<br />  Conversely, fill value with \"Yes\" to find user who have a document by specific custom field.</p>\n</li>\n<li><p>In previous version, <code>user_operator_level_id</code> is not mandatory, for version 2.9.8 this is mandatory. <code>user_operator_level_id</code> value now can be -1 (None) or 0 (All) or an ID to differentiate user without Operator Level.</p>\n</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","users","advance_search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"90801371-c02f-41b7-9b1d-0e2a8ae18fb4"},{"name":"Batch Edit with Advanced Search","id":"8cda0518-0211-4fe9-8054-62255181b033","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"start_datetime\": \"2001-01-02T00:00:00.00Z\",\r\n        \"expiry_datetime\": \"2035-12-31T23:59:00.00Z\",\r\n        \"disabled\": \"true\",\r\n        \"user_group_id\": {\r\n            \"name\": \"test 2\",\r\n            \"id\": 242894,\r\n            \"parent_id\": {\r\n                \"id\": 1\r\n            }\r\n        },\r\n        \"permission\": {\r\n            \"id\": 2\r\n        },\r\n        \"access_groups\": [\r\n            {\r\n                \"id\": \"14\"\r\n            }\r\n        ]\r\n    },\r\n    \"adv_criteria\": {\r\n        \"limit\": 50,\r\n        \"order_by\": \"user_id:false\",\r\n        \"user_group_ids\": [\r\n            242790\r\n        ],\r\n        \"user_id\": \"12\",\r\n        \"user_email\": \"rizki12@gmail.com\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users?adv=mode1","description":"<p>This example is applicable starting from BioStar 2 version 2.9.8.</p>\n<p>By adding <code>adv=mode1</code> on Query Parameter, Batch Edit feature can works with Advanced Search result.</p>\n<p>The API works by query users based on adv_criteria object, then apply new value based on input in User object.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>User</td>\n<td>Object</td>\n<td>Y</td>\n<td>User data to change, existing payload</td>\n</tr>\n<tr>\n<td>adv_criteria</td>\n<td>Object</td>\n<td>Y</td>\n<td>Advanced Search criteria, this is required for searching user data that want to be changed</td>\n</tr>\n<tr>\n<td>adv_criteria.limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>Advanced Search search result limit</td>\n</tr>\n<tr>\n<td>adv_criteria.order_by</td>\n<td>String</td>\n<td>Y</td>\n<td>Advanced Search search result order</td>\n</tr>\n<tr>\n<td>adv_criteria.user_group_id</td>\n<td>Number</td>\n<td>N</td>\n<td>User Group ID to search, this is specifically for when clicking leftmost user group and do Advanced Search</td>\n</tr>\n<tr>\n<td>adv_criteria.user_group_ids</td>\n<td>Array</td>\n<td>N</td>\n<td>List of User Group IDs to search, this field value is from Advanced Search's search form</td>\n</tr>\n<tr>\n<td>adv_criteria.user_id</td>\n<td>String</td>\n<td>N</td>\n<td>User ID to search</td>\n</tr>\n<tr>\n<td>adv_criteria.user_email</td>\n<td>String</td>\n<td>N</td>\n<td>Email to search</td>\n</tr>\n<tr>\n<td>adv_criteria.user_access_group_ids</td>\n<td>String</td>\n<td>N</td>\n<td>List of access groups to search (format : 17,18)</td>\n</tr>\n<tr>\n<td>adv_criteria.user_operator_level_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Operator Level ID to search. Value : 0 = user with all operator level, -1 = user with no operator level, else ID of operator level</td>\n</tr>\n<tr>\n<td>adv_criteria.user_department</td>\n<td>String</td>\n<td>N</td>\n<td>Department of user to search</td>\n</tr>\n<tr>\n<td>adv_criteria.user_title</td>\n<td>String</td>\n<td>N</td>\n<td>Title of user to search</td>\n</tr>\n<tr>\n<td>adv_criteria.user_card</td>\n<td>String</td>\n<td>N</td>\n<td>User card ID to search</td>\n</tr>\n<tr>\n<td>adv_criteria.user_custom_field_1 until adv_criteria.user_custom_field_10</td>\n<td>String</td>\n<td>N</td>\n<td>User custom fields to search</td>\n</tr>\n<tr>\n<td>adv_criteria.user_status</td>\n<td>String</td>\n<td>N</td>\n<td>User status to search. false = Active, true = Inactive</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"FailedUserCollection\": {\n        \"total\": \"0\",\n        \"rows\": \"\"\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https:\\/\\/support.supremainc.com\\/en\\/support\\/home\",\n        \"message\": \"Success\"\n    }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>FailedUserCollection</td>\n<td>Object</td>\n<td>List of failed user to edit</td>\n</tr>\n<tr>\n<td>Response</td>\n<td>Object</td>\n<td>Response from backend</td>\n</tr>\n<tr>\n<td>Response.code</td>\n<td>String</td>\n<td>Indicate that the request is failed or not (0 is success, other is failed)</td>\n</tr>\n<tr>\n<td>Response.link</td>\n<td>String</td>\n<td>Suprema link</td>\n</tr>\n<tr>\n<td>Response.message</td>\n<td>String</td>\n<td>Success or failed message from backend</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Use this to enable Advanced Search query result.</p>\n","type":"text/plain"},"key":"adv","value":"mode1"}],"variable":[]}},"response":[],"_postman_id":"8cda0518-0211-4fe9-8054-62255181b033"},{"name":"List All User v2","event":[{"listen":"prerequest","script":{"id":"57c937b1-88de-48a5-b21c-42ba5bb3bb4d","exec":[""],"type":"text/javascript"}}],"id":"dfebfb50-d685-416d-9630-d84a33acd86c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"limit\": 0,\r\n    \"search_text\": null,\r\n    \"user_group_id\": \"1\",\r\n    \"order_by\": \"user_id:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/users/search","description":"<p>This API is used to list all users recorded on Bio Star 2 database.</p>\n<p>The BODY Parameters are as follows:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>Limit response record(s) by the value specified on this parameter</td>\n</tr>\n<tr>\n<td>search_text</td>\n<td>String</td>\n<td>N</td>\n<td>Search record(s) with the text specified on this parameter. Default value: null</td>\n</tr>\n<tr>\n<td>user_group_id</td>\n<td>Number</td>\n<td>N</td>\n<td>Filter response record(s) according to user_group_id specified on this parameter</td>\n</tr>\n<tr>\n<td>order_by</td>\n<td>String</td>\n<td>N</td>\n<td>Order the response record(s) by the User parameter such as user_id or name. False for ascending, True for descending.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Known errors:</p>\n<ul>\n<li>At least one parameter must exist</li>\n<li>Using unavailable user_group_id will show empty response</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","users","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"dfebfb50-d685-416d-9630-d84a33acd86c"},{"name":"List All User","id":"97152ab7-85d1-40fa-9d3d-f53bfb41ae06","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/users?group_id=1&limit=0&offset=0&order_by=user_id:false&last_modified=0","description":"<p>This API is used to list users which is recorded on BioStar 2 database.</p>\n<p>Known errors:</p>\n<ul>\n<li>Putting \"/\" at the end of the endpoint</li>\n<li>Using group_id which doesn't exist will return success but no records</li>\n</ul>\n<p>Note: This API is deprecated in BioStar 2 v2.8.12, please use <code>/api/v2/users/search</code> instead.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Filter response record(s) according to the group_id specified on this parameter. Use GET /api/user_groups to list all User Groups. Default value: 1 to show all.</p>\n","type":"text/plain"},"key":"group_id","value":"1"},{"description":{"content":"<p>Limit response record(s) by the amount specified on this parameter. 0 for show all.</p>\n","type":"text/plain"},"key":"limit","value":"0"},{"description":{"content":"<p>Shift response record(s) by the amount specified on this parameter. default value = 0. Ex: If you have 10 records, put value 5 on limit, and when you put value 5 on offset, you will get record 6 to 10 on the result.</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"description":{"content":"<p>Order the response record(s) by the User parameter such as user_id or name. False for ascending, True for descending.</p>\n","type":"text/plain"},"key":"order_by","value":"user_id:false"},{"description":{"content":"<p>Show response record(s) with User last_modified value which is equal or greater than this parameter value.</p>\n","type":"text/plain"},"key":"last_modified","value":"0"}],"variable":[]}},"response":[],"_postman_id":"97152ab7-85d1-40fa-9d3d-f53bfb41ae06"},{"name":"View a User's Details","event":[{"listen":"prerequest","script":{"id":"f86d116b-9ce9-4218-b671-8ec99228fbae","exec":["if (pm.iterationData.get(\"iterIDVal\") === undefined) {\r","    pm.collectionVariables.set(\"iterIDVal\", 2);\r","} else {\r","    val = pm.iterationData.get(\"iterIDVal\");\r","    pm.collectionVariables.set(\"iterIDVal\", val);\r","}"],"type":"text/javascript"}}],"id":"f8b59a1c-9103-4161-9ca1-246be74cb130","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/users/:id","description":"<p>This API is used to view a user's details which is recorded on BioStar 2 database.</p>\n<h4 id=\"known-errors\">Known errors:</h4>\n<ul>\n<li><p>Putting \"/\" at the end of the endpoint</p>\n</li>\n<li><p>Using User ID which doesn't exist</p>\n</li>\n</ul>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.9:</p>\n<ul>\n<li>Added 'isExludeSyncADUser' parameter on the response. If this parameter value is 1, the AD or EntraID sync will exclude the user from synchronization.</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the User</p>\n","type":"text/plain"},"type":"any","value":"101","key":"id"}]}},"response":[],"_postman_id":"f8b59a1c-9103-4161-9ca1-246be74cb130"},{"name":"List All Operator Level","id":"343f705d-8385-47a4-86e0-b76014b4583a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/permissions","description":"<p>This API is used to view all operator level as recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","permissions"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"343f705d-8385-47a4-86e0-b76014b4583a"},{"name":"List User Fields","id":"e3401ea3-f6df-46bb-9f8b-2871c13010ad","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/users/csv_option","description":"<p>This API is used to list user fields which can be processed as CSV.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","csv_option"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"e3401ea3-f6df-46bb-9f8b-2871c13010ad"},{"name":"Download CSV File","id":"fe11289f-ec21-4aa0-b5d6-f7440c47300a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/download/:csv_filename","description":"<p>This API is used to get the content of exported .csv file.<br />File content will be shown on the response of the API.</p>\n<p>Usage:<br />After POST /api/users/csv_export, get the URI from the response and use it as PATH parameter as shown on the example.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["download",":csv_filename"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"User_Import_Error_20220124T143708.csv","key":"csv_filename"}]}},"response":[],"_postman_id":"fe11289f-ec21-4aa0-b5d6-f7440c47300a"},{"name":"Upload User File (CSV/TGZ) to BioStar 2 Server","id":"ec21d6e6-301c-4b1f-b48f-803a9794d914","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"formdata","formdata":[{"key":"file","type":"file","src":"/C:/Users/user/Desktop/BioStar2_20220124_173247.tgz"}]},"url":"https://127.0.0.1/api/attachments","description":"<p>This API is used to upload a file to BioStar 2 Server.</p>\n<p>Usage of this API is to upload a .csv or .tgz file to BioStar 2 Server Installation path, which after the file can be further processed for importing User Data to the database through POST /api/users/csv_import or POST /api/users/data_import.</p>\n<p>Uploaded file will be located on: {{BioStar 2 Installation Path}}\\nginx\\html\\download</p>\n<p>Do note that if there's any file with the same name, it will be overwritten.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","attachments"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"ec21d6e6-301c-4b1f-b48f-803a9794d914"},{"name":"Export User Data as CSV","id":"9b0b5ac9-0eed-4abc-bc83-c7c314d6075f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"Query\": {}\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/csv_export?id=1+2+3","description":"<p>This API is used to export User Data as .csv file.  </p>\n<p>This feature is useful when you create users in bulk or when you transfer users to another 3rd party systems.</p>\n<p>The location of the exported file is on: {{BioStar 2 Installation Folder}}\\nginx\\html\\download</p>\n<p>There is no input required on the BODY parameter. But it is required to put Query parameter to run the API correctly.</p>\n<p>Result will be sorted by ID.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","csv_export"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the Users to export. Use * to export all users. To select multiple users use plus sign (+)  or space ( ) as separator, ex: 1001+1002+1009.</p>\n","type":"text/plain"},"key":"id","value":"1+2+3"}],"variable":[]}},"response":[],"_postman_id":"9b0b5ac9-0eed-4abc-bc83-c7c314d6075f"},{"name":"Export User Data as CSV (File Upload Example)","id":"2e6b5b22-d28a-4873-af5d-06a9cfb9311c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"offset\": 0,\r\n        \"group_by\": 1,\r\n        \"columns\": [\r\n            \"user_id\",\r\n            \"name\",\r\n            \"email\",\r\n            \"user_group_id\",\r\n            \"access_groups\",\r\n            \"start_datetime\",\r\n            \"expiry_datetime\",\r\n            \"operator_level\",\r\n            \"fingerprint_template_count\",\r\n            \"face_count\",\r\n            \"visual_face_count\",\r\n            \"card_count\",\r\n            \"have_pin\",\r\n            \"qr_count\",\r\n            \"mobile_count\",\r\n            \"disabled\"\r\n        ],\r\n        \"headers\": [\r\n            \"ID\",\r\n            \"Name\",\r\n            \"Email\",\r\n            \"Group\",\r\n            \"Access Group\",\r\n            \"Start datetime\",\r\n            \"End datetime\",\r\n            \"Operator Level\",\r\n            \"Fingerprint\",\r\n            \"Face\",\r\n            \"Visual Face\",\r\n            \"Card\",\r\n            \"PIN\",\r\n            \"QR/Barcode\",\r\n            \"Mobile Access Card\",\r\n            \"Status\"\r\n        ]\r\n    },\r\n    \"adv_criteria\": {\r\n        \"user_group_ids\": [],\r\n        \"user_group_id\": \"1\",\r\n        \"user_operator_level_id\": \"0\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/csv_export?id=1+2+3&adv=mode1","description":"<p>This example shows how to use this API to show File Upload Custom Field information on CSV Export.</p>\n<h4 id=\"body-parameter\">BODY Parameter:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Query</td>\n<td>Object</td>\n<td>Y</td>\n<td>Data criteria to search</td>\n</tr>\n<tr>\n<td>Query.offset</td>\n<td>Number</td>\n<td>Y</td>\n<td>Data offset</td>\n</tr>\n<tr>\n<td>Query.group_by</td>\n<td>Number</td>\n<td>Y</td>\n<td>Group by what column</td>\n</tr>\n<tr>\n<td>Query.columns</td>\n<td>String</td>\n<td>Y</td>\n<td>Object to retrieve data</td>\n</tr>\n<tr>\n<td>Query.headers</td>\n<td>String</td>\n<td>Y</td>\n<td>Column name to show in CSV/PDF</td>\n</tr>\n<tr>\n<td>adv_criteria</td>\n<td>Object</td>\n<td>Y</td>\n<td>See <code>Batch Edit with Advanced Search</code> for details</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"File\" : {\n    \"uri\" : \"User_20241030_7f554f6983034c8eb1b42076f68e488b.csv\"\n  },\n  \"Response\" : {\n    \"code\" : \"0\",\n    \"link\" : \"https://support.supremainc.com/en/support/home\",\n    \"message\" : \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>File</td>\n<td>Object</td>\n<td>File object</td>\n</tr>\n<tr>\n<td>File.uri</td>\n<td>String</td>\n<td>Exported file name</td>\n</tr>\n<tr>\n<td>Response</td>\n<td>Object</td>\n<td>Response object</td>\n</tr>\n<tr>\n<td>Response.code</td>\n<td>Number</td>\n<td>Indicate success or fail</td>\n</tr>\n<tr>\n<td>Response.link</td>\n<td>String</td>\n<td>Suprema link</td>\n</tr>\n<tr>\n<td>Response.message</td>\n<td>String</td>\n<td>Success / error message</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","csv_export"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the Users to export. Use * to export all users. To select multiple users use plus sign (+)  or space ( ) as separator, ex: 1001+1002+1009.</p>\n","type":"text/plain"},"key":"id","value":"1+2+3"},{"description":{"content":"<p>Use this to enable Advanced Search query result.</p>\n","type":"text/plain"},"key":"adv","value":"mode1"}],"variable":[]}},"response":[],"_postman_id":"2e6b5b22-d28a-4873-af5d-06a9cfb9311c"},{"name":"Import User Data from CSV","id":"46f5c3a4-1a9b-43d4-b9ca-d9dda9249146","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"File\": {\r\n        \"uri\": \"User_Test.csv\",\r\n        \"fileName\": \"User_Test.csv\"\r\n    },\r\n    \"CsvOption\": {\r\n        \"start_line\": 2,\r\n        \"import_option\": 1\r\n    },\r\n\"Query\": {\r\n        \"headers\": [\r\n            \"user_id\",\r\n            \"name\",\r\n            \"department\",\r\n            \"user_title\",\r\n            \"phone\",\r\n            \"email\",\r\n            \"user_group\",\r\n            \"start_datetime\",\r\n            \"expiry_datetime\",\r\n            \"csn\",\r\n            \"\",\r\n            \"\",\r\n            \"\",\r\n            \"qr\",\r\n            \"26 bit SIA Standard-H10301\",\r\n            \"HID 37 bit-H10302\",\r\n            \"\",\r\n            \"\",\r\n            \"\",\r\n            \"Purpose\",\r\n            \"License Plate Number\",\r\n            \"Hello\",\r\n            \"Hair Color\",\r\n            \"Hair Color 2\",\r\n            \"\",\r\n            \"\",\r\n            \"\"\r\n        ],\r\n        \"columns\": [\r\n            \"user_id\",\r\n            \"name\",\r\n            \"department\",\r\n            \"user_title\",\r\n            \"phone\",\r\n            \"email\",\r\n            \"user_group\",\r\n            \"start_datetime\",\r\n            \"expiry_datetime\",\r\n            \"csn\",\r\n            \"mobile_start_datetime\",\r\n            \"mobile_expiry_datetime\",\r\n            \"csn_mobile\",\r\n            \"qr\",\r\n            \"26 bit SIA Standard-H10301\",\r\n            \"HID 37 bit-H10302\",\r\n            \"HID 37 bit-H10304\",\r\n            \"HID Corporate 1000\",\r\n            \"HID Corporate 1000 48bit\",\r\n            \"Purpose\",\r\n            \"License Plate Number\",\r\n            \"Hello\",\r\n            \"Hair Color\",\r\n            \"Hair Color 2\",\r\n            \"face_image_file1\",\r\n            \"face_image_file2\",\r\n            \"pin\"\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/csv_import","description":"<p>This API is used to import User Data from a .csv file to the BioStar 2 database.</p>\n<p>To run this API successfully, it is imperative to run POST /api/attachments first to upload the .csv file to the server install path.</p>\n<p>After .csv file got uploaded to the server, put the filename value from the above API to the uri and fileName parameter on this API.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>File:uri</td>\n<td>String</td>\n<td>Y</td>\n<td>Path of the .csv file</td>\n</tr>\n<tr>\n<td>File:fileName</td>\n<td>String</td>\n<td>Y</td>\n<td>File Name of the .csv file</td>\n</tr>\n<tr>\n<td>CsvOption</td>\n<td></td>\n<td>Y</td>\n<td>Container for available importing options</td>\n</tr>\n<tr>\n<td>:start_line</td>\n<td>Number</td>\n<td>Y</td>\n<td>Specify row number to start data import</td>\n</tr>\n<tr>\n<td>:import_option</td>\n<td>Number</td>\n<td>Y</td>\n<td>Options when same ID exist in BioStar 2: 1=Preserve Data, 2=Overwrite Data</td>\n</tr>\n<tr>\n<td>Query:headers</td>\n<td>Array</td>\n<td>Y</td>\n<td>List of fields on .csv file. Number of fields should match with system. Use GET /api/users/csv_option to see system fields.  <br />Use GET /download/:csv_filename to see the content of the intended .csv file.</td>\n</tr>\n<tr>\n<td>Query:columns</td>\n<td>Array</td>\n<td>Y</td>\n<td>List of fields on the BioStar 2. Use GET /api/users/csv_option to get this list.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Fields listed on Query parameter are also used for field mapping between .csv file and BioStar 2 database.</p>\n<p>For example field user_id on Query:headers (.csv) will be matched with the first field of Query:columns (BioStar 2). To change this mapping, adjust the sequence on Query:headers as desired (eg. exchange field department with user_id so the value of department will be used on user_id on BioStar 2).</p>\n<p>To skip a field from mapping, put empty string (\"\") on the intended field.</p>\n<p>If there's no issue on the import process, the API will shows \"Success\" response.<br />If there's issue (duplicate email, etc.), the response will show that the \"Request is successful but partially\" and will include a filename which contain records that caused the errors which can be downloaded by using GET /download/:csv_filename</p>\n<p>If the CSV file to import contains data for custom user fields and the fields do not exist on the server, then the data for the fields will be ignored during the import process.</p>\n<p>To enter user information in a language other than English or Korean, save the CSV file in UTF-8 format.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","csv_import"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"46f5c3a4-1a9b-43d4-b9ca-d9dda9249146"},{"name":"Data File Export","id":"c08594f5-85e3-4fbf-9d41-3ba38bfb924b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"adv_criteria\": {\r\n        \"limit\": 50,\r\n        \"order_by\": \"user_id:false\",\r\n        \"user_group_ids\": [\r\n            1121\r\n        ]\r\n    },\r\n    \"device_type\": 35,\r\n    \"group_id\": 1\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/data_export?id=14&adv=mode1","description":"<p>You can store the data file on external storage (USB) and import to BioStar 2 or device. Up to 500,000 users can be moved from server to device or from device to device.</p>\n<ul>\n<li><p>The exported data file from devices using older firmware version cannot be imported into BioStar 2. Make sure always use the latest version of firmware.</p>\n</li>\n<li><p>If you use BioStar 2.8.10 or later, data exported from the previous version of BioStar 2 cannot be imported.</p>\n</li>\n<li><p>If you use BioStar 2.8.10 or later, it is impossible to read data from a device that are using older firmware version. Upgrade the device’s firmware to a compatible version. Compatible devices and firmware versions are as follows:</p>\n<ul>\n<li><p>BioStation 2 FW 1.9.0 or later &gt; device_type: 8</p>\n</li>\n<li><p>BioStation A2 FW 1.8.0 or later &gt; device_type: 9</p>\n</li>\n<li><p>FaceStation 2 FW 1.4.0 or later &gt; device_type: 10</p>\n</li>\n<li><p>FaceStation F2 FW 1.0.0 or later &gt; device_type: 29</p>\n</li>\n<li><p>X-Station 2 FW 1.0.0 or later &gt; device_type: 32</p>\n</li>\n</ul>\n</li>\n<li><p>If the fingerprint template format is different, the data file cannot be imported. For example, the data file exported from a device which uses the Suprema fingerprint template format cannot be imported into a device which uses the ISO fingerprint template format.</p>\n</li>\n<li><p>When importing user data with visual faces enrolled from FaceStation F2, the existing data will be retained if there are already visual face data enrolled on BioStar 2 via Upload Image or a mobile device.</p>\n</li>\n</ul>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>device_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Device type which the exported data will be applied to</td>\n</tr>\n<tr>\n<td>group_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Group ID of the device. Default value=1</td>\n</tr>\n<tr>\n<td>adv_criteria</td>\n<td>Object</td>\n<td>Y</td>\n<td>See Batch Edit with Advanced Search for adv_criteria details.</td>\n</tr>\n</tbody>\n</table>\n</div><ul>\n<li><p>The exported data file includes the profile photo, user ID, name, period, access group, PIN, auth. mode, credentials (face, fingerprint, card, mobile access card, visual face, BioStar 2 QR, QR/Barcode), 1:1 security level.</p>\n</li>\n<li><p>You can export visual face data directly registered from the device only. It is not possible to export the data registered with the other methods, such as image file upload, CSV import, and mobile devices.</p>\n</li>\n<li><p>Be sure that the device is selected correctly. Otherwise, the device cannot recognize the data file.</p>\n</li>\n</ul>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"File\" : {\n    \"uri\" : \"BioStar2_20241030_093821.tgz\"\n  },\n  \"Response\" : {\n    \"code\" : \"0\",\n    \"link\" : \"https://support.supremainc.com/en/support/home\",\n    \"message\" : \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>File</td>\n<td>Object</td>\n<td>File object</td>\n</tr>\n<tr>\n<td>File.uri</td>\n<td>String</td>\n<td>Exported file name</td>\n</tr>\n<tr>\n<td>Response</td>\n<td>Object</td>\n<td>Response object</td>\n</tr>\n<tr>\n<td>Response.code</td>\n<td>Number</td>\n<td>Indicates success or failure</td>\n</tr>\n<tr>\n<td>Response.link</td>\n<td>String</td>\n<td>Suprema link</td>\n</tr>\n<tr>\n<td>Response.message</td>\n<td>String</td>\n<td>Success or error message</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.8:</p>\n<ul>\n<li><p>Added <code>adv</code> Query Parameter for enabling Advanced Search query capability.</p>\n</li>\n<li><p>Added <code>adv_criteria</code> on Body Parameter as example on how to use Advanced Search query.</p>\n</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","data_export"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the user which will be exported. Use space as separator between IDs when exporting multiple user.</p>\n","type":"text/plain"},"key":"id","value":"14"},{"description":{"content":"<p>Use this to enable Advanced Search query result.</p>\n","type":"text/plain"},"key":"adv","value":"mode1"}],"variable":[]}},"response":[],"_postman_id":"c08594f5-85e3-4fbf-9d41-3ba38bfb924b"},{"name":"Data File Import","id":"9d871d7c-7b34-4e93-8831-ddc27f0966fa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"file\": {\r\n        \"originalName\": \"BioStar2_20220124_173247.tgz\",\r\n        \"name\": \"BioStar2_20220124_173247.tgz\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/data_import","description":"<p>You can store the data file on external storage (USB) and import to BioStar 2 or device. Up to 500,000 users can be moved from server to device or from device to device.</p>\n<ul>\n<li>The exported data file from devices using older firmware version cannot be imported into BioStar 2. Make sure always use the latest version of firmware.</li>\n<li>If you use BioStar 2.8.10 or later, data exported from the previous version of BioStar 2 cannot be imported.</li>\n<li>If you use BioStar 2.8.10 or later, it is impossible to read data from a device that are using older firmware version. Upgrade the device’s firmware to a compatible version. Compatible devices and firmware versions are as follows:<ul>\n<li>BioStation 2 FW 1.9.0 or later &gt; device_type: 8</li>\n<li>BioStation A2 FW 1.8.0 or later &gt; device_type: 9</li>\n<li>FaceStation 2 FW 1.4.0 or later &gt; device_type: 10</li>\n<li>FaceStation F2 FW 1.0.0 or later &gt; device_type: 29</li>\n<li>X-Station 2 FW 1.0.0 or later &gt; device_type: 32</li>\n</ul>\n</li>\n<li>If the fingerprint template format is different, the data file cannot be imported. For example, the data file exported from a device which uses the Suprema fingerprint template format cannot be imported into a device which uses the ISO fingerprint template format.</li>\n<li>When importing user data with visual faces enrolled from FaceStation F2, the existing data will be retained if there are already visual face data enrolled on BioStar 2 via Upload Image or a mobile device.</li>\n</ul>\n<p>Select the desired file (*.tgz) and then click Open.<br />A success message will appear on the screen when import successfully.</p>\n<p>Use POST /api/attachments to upload the file (.tgz) to the BioStar 2 server.<br />Use the resulting filename on the response as value on the BODY parameter.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>file:originalName</td>\n<td>String</td>\n<td>Y</td>\n<td>Original filename of the file</td>\n</tr>\n<tr>\n<td>file:name</td>\n<td>String</td>\n<td>Y</td>\n<td>Current filename of the file</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","data_import"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"9d871d7c-7b34-4e93-8831-ddc27f0966fa"},{"name":"Export User(s) as SVG with Advanced Search","id":"7d79606e-3e54-4edd-9028-9c7b53006192","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"View\": {\r\n        \"Query\": {\r\n            \"collection_name\": \"UserCollection\",\r\n            \"object\": \"query\",\r\n            \"orders\": [\r\n                {\r\n                    \"column\": \"user_id\",\r\n                    \"descending\": \"false\"\r\n                }\r\n            ]\r\n        },\r\n        \"display_fields\": [\r\n            {\r\n                \"name\": \"user_id\",\r\n                \"display_name\": \"ID\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 5\r\n            },\r\n            {\r\n                \"name\": \"name\",\r\n                \"display_name\": \"Name\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 9\r\n            },\r\n            {\r\n                \"name\": \"email\",\r\n                \"display_name\": \"Email\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 12\r\n            },\r\n            {\r\n                \"name\": \"user_group_id.name\",\r\n                \"display_name\": \"Group\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 9\r\n            },\r\n            {\r\n                \"name\": \"access_groups\",\r\n                \"display_name\": \"Access Group\",\r\n                \"display_type\": \"objects\",\r\n                \"width\": 9\r\n            },\r\n            {\r\n                \"name\": \"start_datetime\",\r\n                \"display_name\": \"Start datetime\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 7\r\n            },\r\n            {\r\n                \"name\": \"expiry_datetime\",\r\n                \"display_name\": \"End datetime\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 7\r\n            },\r\n            {\r\n                \"name\": \"operator_level\",\r\n                \"display_name\": \"Operator Level\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 9\r\n            },\r\n            {\r\n                \"name\": \"fingerprint_template_count\",\r\n                \"display_name\": \"Fingerprint\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"face_count\",\r\n                \"display_name\": \"Face\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"visual_face_count\",\r\n                \"display_name\": \"Visual Face\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"card_count\",\r\n                \"display_name\": \"Card\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"have_pin\",\r\n                \"display_name\": \"PIN\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"qr_count\",\r\n                \"display_name\": \"QR/Barcode\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"mobile_count\",\r\n                \"display_name\": \"Mobile Access Card\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"disabled\",\r\n                \"display_name\": \"Status\",\r\n                \"display_type\": \"enum\",\r\n                \"width\": 2,\r\n                \"enum\": [\r\n                    \"false=\",\r\n                    \"true=Inactive\"\r\n                ]\r\n            }\r\n        ],\r\n        \"name\": \"All Users\",\r\n        \"show_title_every_page\": false,\r\n        \"group_by_page_break\": \"false\",\r\n        \"footer_report_date\": true,\r\n        \"footer_comment\": \"Created by Administrator\",\r\n        \"footer_display_page_number\": \"true\",\r\n        \"content_type\": \"SVG\",\r\n        \"page_size\": \"A4\",\r\n        \"page_portrait\": \"false\"\r\n    },\r\n    \"adv_criteria\": {\r\n        \"user_group_ids\": [],\r\n        \"user_group_id\": \"1\",\r\n        \"user_operator_level_id\": \"0\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/report?use_centigrade=true&adv=mode1","description":"<p>This API is used to export user data as SVG which was collected using Advanced Search query.</p>\n<h4 id=\"body-parameter\">BODY Parameter:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>View</td>\n<td>Object</td>\n<td>Yes</td>\n<td>Parent object</td>\n</tr>\n<tr>\n<td>Query</td>\n<td>Object</td>\n<td>Yes</td>\n<td>User data criteria to query (not used; only mandatory fields are supplied)</td>\n</tr>\n<tr>\n<td>display_fields</td>\n<td>Array</td>\n<td>Yes</td>\n<td>List of columns to show in SVG/PDF file</td>\n</tr>\n<tr>\n<td>display_fields.name</td>\n<td>String</td>\n<td>Yes</td>\n<td>Object name to retrieve data</td>\n</tr>\n<tr>\n<td>display_fields.display_name</td>\n<td>String</td>\n<td>Yes</td>\n<td>Column name to show in SVG/PDF file</td>\n</tr>\n<tr>\n<td>display_fields.display_type</td>\n<td>String</td>\n<td>Yes</td>\n<td>Display as this data type</td>\n</tr>\n<tr>\n<td>display_fields.width</td>\n<td>String</td>\n<td>Yes</td>\n<td>Column width in SVG/PDF file</td>\n</tr>\n<tr>\n<td>display_fields.enum</td>\n<td>Array</td>\n<td>No</td>\n<td>Enum list</td>\n</tr>\n<tr>\n<td>View.name</td>\n<td>String</td>\n<td>Yes</td>\n<td>Report name</td>\n</tr>\n<tr>\n<td>View.show_title_every_page</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Indicates if the report will show title on every page</td>\n</tr>\n<tr>\n<td>View.group_by_page_break</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Indicates if the report will group by page break</td>\n</tr>\n<tr>\n<td>View.footer_report_date</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Indicates whether to show the date in the report footer</td>\n</tr>\n<tr>\n<td>View.footer_comment</td>\n<td>String</td>\n<td>Yes</td>\n<td>Footer comment</td>\n</tr>\n<tr>\n<td>View.footer_display_page_number</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Indicates if the report will show page numbers</td>\n</tr>\n<tr>\n<td>View.content_type</td>\n<td>String</td>\n<td>Yes</td>\n<td>Report file type (e.g., SVG or PDF)</td>\n</tr>\n<tr>\n<td>View.page_size</td>\n<td>String</td>\n<td>Yes</td>\n<td>Report page size (e.g., A4 or Letter)</td>\n</tr>\n<tr>\n<td>View.page_portrait</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Report page orientation (true = portrait, false = landscape)</td>\n</tr>\n<tr>\n<td>View.adv_criteria</td>\n<td>Object</td>\n<td>Yes</td>\n<td>See Batch Edit with Advanced Search for adv_criteria details.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"FileCollection\" : {\n    \"total\" : \"4\",\n    \"rows\" : [ {\n      \"uri\" : \"/report/list_20241030093818_2566_p1.svg\",\n      \"type\" : \"image/svg+xml\"\n    }, {\n      \"uri\" : \"/report/list_20241030093818_2566_p2.svg\",\n      \"type\" : \"image/svg+xml\"\n    }, {\n      \"uri\" : \"/report/list_20241030093818_2566_p3.svg\",\n      \"type\" : \"image/svg+xml\"\n    }, {\n      \"uri\" : \"/report/list_20241030093818_2566_p4.svg\",\n      \"type\" : \"image/svg+xml\"\n    } ]\n  },\n  \"Response\" : {\n    \"code\" : \"0\",\n    \"link\" : \"https://support.supremainc.com/en/support/home\",\n    \"message\" : \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>FileCollection</td>\n<td>Object</td>\n<td>File collection</td>\n</tr>\n<tr>\n<td>FileCollection.total</td>\n<td>Number</td>\n<td>Total number of files</td>\n</tr>\n<tr>\n<td>FileCollection.rows</td>\n<td>Array</td>\n<td>List of files</td>\n</tr>\n<tr>\n<td>FileCollection.rows.uri</td>\n<td>String</td>\n<td>File location</td>\n</tr>\n<tr>\n<td>FileCollection.rows.type</td>\n<td>String</td>\n<td>File MIME type</td>\n</tr>\n<tr>\n<td>Response</td>\n<td>Object</td>\n<td>Response object</td>\n</tr>\n<tr>\n<td>Response.code</td>\n<td>Number</td>\n<td>Indicates success or failure</td>\n</tr>\n<tr>\n<td>Response.link</td>\n<td>String</td>\n<td>Suprema link</td>\n</tr>\n<tr>\n<td>Response.message</td>\n<td>String</td>\n<td>Success or error message</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","report"],"host":["https://127.0.0.1"],"query":[{"key":"use_centigrade","value":"true"},{"description":{"content":"<p>Use this to enable Advanced Search query result.</p>\n","type":"text/plain"},"key":"adv","value":"mode1"}],"variable":[]}},"response":[],"_postman_id":"7d79606e-3e54-4edd-9028-9c7b53006192"},{"name":"Export User(s) as PDF with Advanced Search","id":"620fcc32-869e-4237-bc74-1ae164cf10e5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"View\": {\r\n        \"Query\": {\r\n            \"collection_name\": \"UserCollection\",\r\n            \"object\": \"query\",\r\n            \"orders\": [\r\n                {\r\n                    \"column\": \"user_id\",\r\n                    \"descending\": \"false\"\r\n                }\r\n            ]\r\n        },\r\n        \"display_fields\": [\r\n            {\r\n                \"name\": \"user_id\",\r\n                \"display_name\": \"ID\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 5\r\n            },\r\n            {\r\n                \"name\": \"name\",\r\n                \"display_name\": \"Name\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 9\r\n            },\r\n            {\r\n                \"name\": \"email\",\r\n                \"display_name\": \"Email\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 12\r\n            },\r\n            {\r\n                \"name\": \"user_group_id.name\",\r\n                \"display_name\": \"Group\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 9\r\n            },\r\n            {\r\n                \"name\": \"access_groups\",\r\n                \"display_name\": \"Access Group\",\r\n                \"display_type\": \"objects\",\r\n                \"width\": 9\r\n            },\r\n            {\r\n                \"name\": \"start_datetime\",\r\n                \"display_name\": \"Start datetime\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 7\r\n            },\r\n            {\r\n                \"name\": \"expiry_datetime\",\r\n                \"display_name\": \"End datetime\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 7\r\n            },\r\n            {\r\n                \"name\": \"operator_level\",\r\n                \"display_name\": \"Operator Level\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 9\r\n            },\r\n            {\r\n                \"name\": \"fingerprint_template_count\",\r\n                \"display_name\": \"Fingerprint\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"face_count\",\r\n                \"display_name\": \"Face\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"visual_face_count\",\r\n                \"display_name\": \"Visual Face\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"card_count\",\r\n                \"display_name\": \"Card\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"have_pin\",\r\n                \"display_name\": \"PIN\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"qr_count\",\r\n                \"display_name\": \"QR/Barcode\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"mobile_count\",\r\n                \"display_name\": \"Mobile Access Card\",\r\n                \"display_type\": \"string\",\r\n                \"width\": 4\r\n            },\r\n            {\r\n                \"name\": \"disabled\",\r\n                \"display_name\": \"Status\",\r\n                \"display_type\": \"enum\",\r\n                \"width\": 2,\r\n                \"enum\": [\r\n                    \"false=\",\r\n                    \"true=Inactive\"\r\n                ]\r\n            }\r\n        ],\r\n        \"name\": \"All Users\",\r\n        \"show_title_every_page\": false,\r\n        \"group_by_page_break\": \"false\",\r\n        \"footer_report_date\": true,\r\n        \"footer_comment\": \"Created by Administrator\",\r\n        \"footer_display_page_number\": \"true\",\r\n        \"content_type\": \"PDF\",\r\n        \"page_size\": \"A4\",\r\n        \"page_portrait\": \"false\"\r\n    },\r\n    \"adv_criteria\": {\r\n        \"user_group_ids\": [],\r\n        \"user_group_id\": \"1\",\r\n        \"user_operator_level_id\": \"0\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/report?use_centigrade=true&adv=mode1","description":"<p>This API is used to export user data as SVG which was collected using Advanced Search query.</p>\n<h4 id=\"body-parameter\">BODY Parameter:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>View</td>\n<td>Object</td>\n<td>Yes</td>\n<td>Parent object</td>\n</tr>\n<tr>\n<td>Query</td>\n<td>Object</td>\n<td>Yes</td>\n<td>User data criteria to query (not used; only mandatory fields are supplied)</td>\n</tr>\n<tr>\n<td>display_fields</td>\n<td>Array</td>\n<td>Yes</td>\n<td>List of columns to show in SVG/PDF file</td>\n</tr>\n<tr>\n<td>display_fields.name</td>\n<td>String</td>\n<td>Yes</td>\n<td>Object name to retrieve data</td>\n</tr>\n<tr>\n<td>display_fields.display_name</td>\n<td>String</td>\n<td>Yes</td>\n<td>Column name to show in SVG/PDF file</td>\n</tr>\n<tr>\n<td>display_fields.display_type</td>\n<td>String</td>\n<td>Yes</td>\n<td>Display as this data type</td>\n</tr>\n<tr>\n<td>display_fields.width</td>\n<td>String</td>\n<td>Yes</td>\n<td>Column width in SVG/PDF file</td>\n</tr>\n<tr>\n<td>display_fields.enum</td>\n<td>Array</td>\n<td>No</td>\n<td>Enum list</td>\n</tr>\n<tr>\n<td>View.name</td>\n<td>String</td>\n<td>Yes</td>\n<td>Report name</td>\n</tr>\n<tr>\n<td>View.show_title_every_page</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Indicates if the report will show title on every page</td>\n</tr>\n<tr>\n<td>View.group_by_page_break</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Indicates if the report will group by page break</td>\n</tr>\n<tr>\n<td>View.footer_report_date</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Indicates whether to show the date in the report footer</td>\n</tr>\n<tr>\n<td>View.footer_comment</td>\n<td>String</td>\n<td>Yes</td>\n<td>Footer comment</td>\n</tr>\n<tr>\n<td>View.footer_display_page_number</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Indicates if the report will show page numbers</td>\n</tr>\n<tr>\n<td>View.content_type</td>\n<td>String</td>\n<td>Yes</td>\n<td>Report file type (e.g., SVG or PDF)</td>\n</tr>\n<tr>\n<td>View.page_size</td>\n<td>String</td>\n<td>Yes</td>\n<td>Report page size (e.g., A4 or Letter)</td>\n</tr>\n<tr>\n<td>View.page_portrait</td>\n<td>Boolean</td>\n<td>Yes</td>\n<td>Report page orientation (true = portrait, false = landscape)</td>\n</tr>\n<tr>\n<td>View.adv_criteria</td>\n<td>Object</td>\n<td>Yes</td>\n<td>See Batch Edit with Advanced Search for adv_criteria details.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"FileCollection\" : {\n    \"total\" : \"1\",\n    \"rows\" : [ {\n      \"uri\" : \"/report/list_20241030093819_7596.pdf\",\n      \"type\" : \"image/svg+xml\"\n    } ]\n  },\n  \"Response\" : {\n    \"code\" : \"0\",\n    \"link\" : \"https://support.supremainc.com/en/support/home\",\n    \"message\" : \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>FileCollection</td>\n<td>Object</td>\n<td>File collection</td>\n</tr>\n<tr>\n<td>FileCollection.total</td>\n<td>Number</td>\n<td>Total number of files</td>\n</tr>\n<tr>\n<td>FileCollection.rows</td>\n<td>Array</td>\n<td>List of files</td>\n</tr>\n<tr>\n<td>FileCollection.rows.uri</td>\n<td>String</td>\n<td>File location</td>\n</tr>\n<tr>\n<td>FileCollection.rows.type</td>\n<td>String</td>\n<td>File MIME type</td>\n</tr>\n<tr>\n<td>Response</td>\n<td>Object</td>\n<td>Response object</td>\n</tr>\n<tr>\n<td>Response.code</td>\n<td>Number</td>\n<td>Indicates success or failure</td>\n</tr>\n<tr>\n<td>Response.link</td>\n<td>String</td>\n<td>Suprema link</td>\n</tr>\n<tr>\n<td>Response.message</td>\n<td>String</td>\n<td>Success or error message</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","report"],"host":["https://127.0.0.1"],"query":[{"key":"use_centigrade","value":"true"},{"description":{"content":"<p>Use this to enable Advanced Search query result.</p>\n","type":"text/plain"},"key":"adv","value":"mode1"}],"variable":[]}},"response":[],"_postman_id":"620fcc32-869e-4237-bc74-1ae164cf10e5"},{"name":"View User by Account Level","id":"ecd47cd9-f046-4280-a71f-8bb6e72582ab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/permissions","description":"<p>This API is used to view all user permission grouped by user account level.</p>\n<p>1: Administrator<br />2: User Operator<br />3: Monitoring Operator<br />4-252: Custom Account Level<br />253: Video<br />254: TA<br />255: User<br />100000: Visitor</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","permissions"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"ecd47cd9-f046-4280-a71f-8bb6e72582ab"},{"name":"Download User Data File","id":"40152929-5744-443d-82e3-aa403a649776","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/download/:exported_file","description":"<p>This API is used to download User Data File from BioStar 2 Server.</p>\n<p>Use the filename which resulted from POST /api/users/data_export</p>\n<p>Put the filename to download on the PATH of the API.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["download",":exported_file"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>Filename of the data file which will be downloaded.</p>\n","type":"text/plain"},"type":"any","value":"BioStar2_20220124_152253.tgz","key":"exported_file"}]}},"response":[],"_postman_id":"40152929-5744-443d-82e3-aa403a649776"},{"name":"Audit User Tracks","id":"2215960c-88a7-4339-900d-d154bfd4e88c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"offset\": 0,\r\n        \"limit\": 101,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"DATE\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2022-06-15T15:00:00.000Z\",\"2022-07-17T15:00:00.000Z\"\r\n                ]\r\n            },\r\n            {\r\n                \"column\": \"IP\",\r\n                \"operator\": 0,\r\n                \"values\": [\r\n                    \"192.168.1.5\"\r\n                ]\r\n            },\r\n            {\r\n                \"column\": \"USRID\",\r\n                \"operator\": 0,\r\n                \"values\": [\r\n                    \"Administrator(1)\"\r\n                ]\r\n            }\r\n        ],\r\n        \"total\": false\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/audit/search","description":"<p>Audit trail tracks user access information as well as all the information changed in the system.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Shift the response records by the specified number.</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>Limit the number of response records by the specified number.</td>\n</tr>\n<tr>\n<td>conditions:column</td>\n<td>String</td>\n<td>N</td>\n<td>Column name which being used for filtering response records.</td>\n</tr>\n<tr>\n<td>conditions:operator</td>\n<td>Number</td>\n<td>N</td>\n<td>Condition Operator  <br />EQUAL : 0  <br />NOT_EQUAL : 1  <br />CONTAINS : 2  <br />BETWEEN : 3 (\"from\",\"until\"),  <br />LIKE : 4</td>\n</tr>\n<tr>\n<td>conditions:values</td>\n<td>String</td>\n<td>N</td>\n<td>Condition value</td>\n</tr>\n<tr>\n<td>total</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle true to only show the total number of records</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","audit","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2215960c-88a7-4339-900d-d154bfd4e88c"},{"name":"Create/Update User Private Message","id":"e200e13f-ec32-46cf-a734-e3dcc36d017c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"phrase\": \"Good morning. Set private message here.\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/users/phrase/:userId","description":"<p>This API is used to create or update User Private Message.</p>\n<p>This API is available starting from BioStar 2 version 2.9.8.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>phrase</td>\n<td>String</td>\n<td>Y</td>\n<td>Phrase which will be set as User Private Message. This has a 128-byte limit. Any phrase exceeding this will be truncated.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"code\": \"0\",\n    \"message\": \"Successful\"\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","users","phrase",":userId"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>User ID of the user to whom the private message will be configured.</p>\n","type":"text/plain"},"type":"any","value":"12","key":"userId"}]}},"response":[],"_postman_id":"e200e13f-ec32-46cf-a734-e3dcc36d017c"},{"name":"Delete User Private Message","id":"90d7c485-260f-4e8b-87dc-7132b483a971","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/v2/users/phrase/:userId","description":"<p>This API is used to delete User Private Message.</p>\n<p>This API is available starting from BioStar 2 version 2.9.8.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"code\": \"0\",\n    \"message\": \"Successful\"\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","users","phrase",":userId"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"530f04fa-69fe-4a90-b859-e4ebef022f09","description":{"content":"<p>User ID of the user to whom the private message will be deleted.</p>\n","type":"text/plain"},"type":"any","value":"12","key":"userId"}]}},"response":[],"_postman_id":"90d7c485-260f-4e8b-87dc-7132b483a971"},{"name":"Fetch User Private Message","id":"4671bb89-3051-4862-8273-c52bd5dd40bb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/users/phrase/:userId","description":"<p>This API is used to fetch User Private Message.</p>\n<p>This API is available starting from BioStar 2 version 2.9.8.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"user_id\": \"12\",\n    \"phrase\": \"Good morning. You're expected at meeting room 1 at 09.00\"\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","users","phrase",":userId"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>User ID of the user to whom the private message will be fetched.</p>\n","type":"text/plain"},"type":"any","value":"12","key":"userId"}]}},"response":[],"_postman_id":"4671bb89-3051-4862-8273-c52bd5dd40bb"},{"name":"Download File from File Upload Custom Field","id":"712e306c-7b97-481f-b1d5-bbe470103376","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/user_document/:UserID/:customFieldID","description":"<p>This API is used to download the file which contained in a File Upload Custom Field.</p>\n<p>This API is available starting from BioStar 2 v2.9.8.</p>\n<p>After receiving the response, convert the Base64 data on key <code>document</code> to file type specified on key <code>mimetype</code>.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"Data\": {\n        \"document\": \"U1c1IGlzIHRoZSBiZXN0IGRldmVsb3Blcg==\",\n        \"mimetype\": \"text/plain\",\n        \"item\": \"ACCOUNTS.TXT\"\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","user_document",":UserID",":customFieldID"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"700ee4c7-330d-4df1-9c14-4f2554831426","description":{"content":"<p>ID of the user which have the intended file.</p>\n","type":"text/plain"},"type":"any","value":"3","key":"UserID"},{"id":"5e41d99e-5466-498a-bb39-e5999363e9b1","description":{"content":"<p>ID of the File Upload Custom Field which contain the file.</p>\n","type":"text/plain"},"type":"any","value":"5","key":"customFieldID"}]}},"response":[],"_postman_id":"712e306c-7b97-481f-b1d5-bbe470103376"}],"id":"ef8753df-20fc-4fcd-a24a-02a22e5a9ba2","description":"<p>This section contains all API related to Users</p>\n","event":[{"listen":"prerequest","script":{"id":"b1c1b1da-2673-42bc-a9d2-ad32775619a7","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"040cd22c-5f95-46c8-922e-473b38da9c7a","type":"text/javascript","exec":["pm.test(\"Status code is 200\", function () {","    pm.response.to.have.status(200);","});"]}}],"_postman_id":"ef8753df-20fc-4fcd-a24a-02a22e5a9ba2","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Device Group","item":[{"name":"View All Device Group","id":"eee5899f-bdd5-4d88-8d5e-d91f816558f1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"order_by\": \"depth:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/device_groups/search","description":"<p>This API is used to list all device groups recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","device_groups","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"eee5899f-bdd5-4d88-8d5e-d91f816558f1"},{"name":"View Device Group(s) with Criteria & Permission","id":"919179ab-1f33-46fe-a961-845bc8ca60ca","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"order_by\": \"depth:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/device_groups/only_permission_item/search","description":"<p>This API is used to list all device groups recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","device_groups","only_permission_item","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"919179ab-1f33-46fe-a961-845bc8ca60ca"},{"name":"Create New Device Group","id":"b7d7801f-f4e6-4313-851f-fee542bebbfd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DeviceGroup\": {\r\n        \"name\": \"New Device Group 1\",\r\n        \"description \": \"description\",\r\n        \"parent_id\": {\r\n            \"id\": 1\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/device_groups","description":"<p>This API is used to create new device group.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the device group</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the device group</td>\n</tr>\n<tr>\n<td>parent_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the parent group of this device group</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","device_groups"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"b7d7801f-f4e6-4313-851f-fee542bebbfd"},{"name":"Update Device Group","id":"5365b03d-ec5d-4224-904b-0eec121c2a07","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"url":"https://127.0.0.1/api/device_groups/:id","description":"<p>This API is used to update a device group.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","device_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device group which will be updated</p>\n","type":"text/plain"},"type":"any","value":"5","key":"id"}]}},"response":[],"_postman_id":"5365b03d-ec5d-4224-904b-0eec121c2a07"},{"name":"Delete Device Group","id":"e18aad93-72fc-4f28-8c8a-b660915c47c1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/device_groups/:id","description":"<p>This API is used to delete device group.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","device_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device group which will be deleted</p>\n","type":"text/plain"},"type":"any","value":"5","key":"id"}]}},"response":[],"_postman_id":"e18aad93-72fc-4f28-8c8a-b660915c47c1"}],"id":"f52b0ceb-e41e-4782-97db-216b2ce79a44","event":[{"listen":"prerequest","script":{"id":"8261c3c7-f470-4ad4-905a-f0b31d0ea2f8","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"d4604485-209e-4d47-b599-28626626c2ce","type":"text/javascript","exec":[""]}}],"_postman_id":"f52b0ceb-e41e-4782-97db-216b2ce79a44","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Device","item":[{"name":"Verify Fingerprint Scan","id":"fcab81e7-0445-4688-8381-3af4ce54597d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"FingerprintTemplate\": {\r\n        \"template0\": \"RSoQFLAAVUYMBEBvBBlEsWSLFITAEIUGBgEYBA/G0W0IAwcgdgEbh2ANixfIMGUKEshwF4QOCbBzhjXEsaCFJITQAYohRSBViCSGoUsRLAcQooYoh6GlCDpIgZ2GKMkARgkyCXCehDhJgEIDG0sxYJsOy0BziBaMcGmPG4ywUaAVTdBokwxOEXgHEE6AeIIVT0FoERfPYBsxGg9gK9EK0QB4jRxSYRqFEhNAbxkXk1AUChiTUHSHL8zwl4EmDiE3CCHPADWKK5DAOo8nUZAqDS5SIUKXK9JhOZj////g/////////eAB///////d4AEi/////N3gASM////M3eABIzT/+7zd4BIzRE+7u83gEjNET7u7zeASNERFu7vN4BI0REW6u8zgIzRERaqqvOAjRERFqqq84TREREWqqrziNFVUT6mqvOJFVVVfqqq9BFVVVU/5qrqHd2ZU//+qqZiIdkT///qqqZh1T///+6qqqYX/////u6uqj///\",\r\n        \"template1\": \"RSgQFK8AVUYRBDBvhxqEgBGFHsSRZwsIhRF1BQtGIRuEFsZxawgJRwB5AR4H4GULGYgQF4UUyYB0hyqEsAOJJsTRWIgrRkBKjyKG4QoLMsbwooQvB3GkBi9I0EYHOUnBnQMJSgF4ghXK8HWKHYwQZ5EIzQAfhRPN4XsEHA4BbBYXzhB5hRzO8WaYB89AdoQeT0AdsQgQAHiJDlFQdoIiSvFfHCLMcE4iNszwmAIszkE2hihO8DQJIM9QKkMxEJA3CC4RwCeOIlKBHAMxEsBFIv///d3////////M3eD/////+8zd4BL///+7zN3gEj//+rvM3eASM/+qu8zd4BIzT6q7vM3gEjRFqqq7zeASNESqqrvN4CNERaqqq7zhI0RFqqqrvdfsagfsgagOE0REWqqqq84jRFVaqqqrwDRFVVqqmavQRVVVWqqqq9JVVVVvq7qqmHdmZv/6qqqZiHZm//+qqqmZhV////u6qqmFT///+7uqqoT/8=\"\r\n    },\r\n    \"VerifyFingerprintOption\": {\r\n        \"security_level\": \"0\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/:dev_id/verify_fingerprint","description":"<p>This API is used to compare 2 fingerprint scan to determine whether it's the same finger or not.</p>\n<p>As shown on the example, it is applied on template0 and template1 where template0 is the 1st scan of the finger and template1 is the 2nd scan.</p>\n<p>To get the value for these parameters, use POST /api/devices/:dev_id/scan_fingerprint two times. The first scan for template0 and second scan for template1.</p>\n<p>It will return HTTP 200 and shows message result: true on success, HTTP 500 and shows message result: false on failure.</p>\n<p>BODY Parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>template0</td>\n<td>Base64</td>\n<td>Y</td>\n<td>1st scan template of the fingerprint</td>\n</tr>\n<tr>\n<td>template1</td>\n<td>Base64</td>\n<td>Y</td>\n<td>2nd scan template of the fingerprint</td>\n</tr>\n<tr>\n<td>security_level</td>\n<td>Number</td>\n<td>N</td>\n<td>Set the verification security level. Higher number will have stricter requirement.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":dev_id","verify_fingerprint"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which used to scan fingerprint.</p>\n","type":"text/plain"},"type":"any","value":"544140034","key":"dev_id"}]}},"response":[],"_postman_id":"fcab81e7-0445-4688-8381-3af4ce54597d"},{"name":"Verify Duplicate Fingerprint","id":"208186d1-b91e-4ff2-a3f3-b559a5202723","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ServerMatching\": {\r\n        \"template\": \"AA4NE6cAVUYXwGEODRaBgWmJGoLhCoUTw+BohB0EYWaJIMKAWIkiAsAJijED4K6JJ8ehAwkwCFCyhCYIoFcLLQjRVoQeyTFligMJUG2GD0vxcQYezkFpjAIO4HWbFU9RcwUgD4Fnkx9QsWwPCpDhcgkfkZFoiydJwAMJJQrRXAknDABTCCsP4aCJJhBABJ4m0PGqoSqRYKkXKRIQCJ7//93v//////3d7/////zN3uAP//zM3e4AH8zMzN7gAfzMzM3uARK8zM3e4AEbvMzd7gARu8zM3uARHMzMze4BEczMzN3gESu7vMzeARK7u8zN4BI7u7vM3gIjqru7vOAzT6u7u84TRP+7zMzRNE//zMzN4jP//8zM3hLw\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/server_matching/identify_finger","description":"<p>This API is used to verify duplicate fingerprint.</p>\n<p>If fingerprint already exist, it will return success (HTTP 200) and response will show the user which currently using the fingerprint.</p>\n<p>Use the result of POST /api/devices/:dev_id/scan_fingerprint for the value of parameter template (either the 1st or 2nd scan).</p>\n<p>If fingerprint available, it will return server error (HTTP 500) with response showing message \"Failed to identify fingerprint.\".</p>\n<p>BODY Parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>template</td>\n<td>Base64</td>\n<td>Y</td>\n<td>Template of the fingerprint which will be validated.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","server_matching","identify_finger"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"208186d1-b91e-4ff2-a3f3-b559a5202723"},{"name":"Scan Fingerprint","id":"d6763ed8-1368-4dee-a0bb-4cf9b7a1a684","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ScanFingerprintOption\": {\r\n        \"enroll_quality\": \"80\",\r\n        \"raw_image\": false\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/:dev_id/scan_fingerprint","description":"<p>This API is used to scan a fingerprint.</p>\n<p>On calling this API, it is required to specify the device which will be used as fingerprint scanner. It is done by specifying Device ID on the API Path, which marked by :dev_id.</p>\n<p>The procedure to add a fingerprint as follows:<br />- Scan a finger using this API<br />- Use POST /api/server_matching/identify_finger to check if it's already exist<br />- If it doesn't exist, then run a second scan using this API for the same finger as the first scan<br />- Compare 1st and 2nd scan result using POST /api/devices/:dev_id/verify_fingerprint to make sure that 1st and 2nd scan are the same finger<br />- Assign the enrolled finger to a user using POST|PUT /api/users/:id</p>\n<p>BODY parameters on this API as follows:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>enroll_quality</td>\n<td>Number</td>\n<td>N</td>\n<td>Set a fingerprint enrollment quality level. Any fingerprint which does not meet the quality requirement will not be enrolled.</td>\n</tr>\n<tr>\n<td>raw_image</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Set this option to view the original image when a fingerprint is scanned.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":dev_id","scan_fingerprint"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which will be used to scan fingerprint.</p>\n","type":"text/plain"},"type":"any","value":"544140034","key":"dev_id"}]}},"response":[],"_postman_id":"d6763ed8-1368-4dee-a0bb-4cf9b7a1a684"},{"name":"View Waiting Devices","event":[{"listen":"test","script":{"id":"98aebfbd-39c0-4df8-a574-008b4db92fc2","exec":[""],"type":"text/javascript"}}],"id":"530d43b7-4a6c-435e-97c4-af770f4da25d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/waiting","description":"<p>This API is used to view device(s) which is on waiting list after changing connection mode from Server &gt; Device to Device &gt; Server.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","waiting"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"530d43b7-4a6c-435e-97c4-af770f4da25d"},{"name":"Add Device","id":"a21f872f-7758-4601-bc1d-9531cf3ce041","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Device\": {\r\n        \"id\": \"50332377\",\r\n        \"name\": \"B50332377\",\r\n        \"device_type_id\": {\r\n            \"id\": \"8\"\r\n        },\r\n        \"connection\": {\r\n            \"status\": \"3\"\r\n        },\r\n        \"lan\": {\r\n            \"ip\": \"192.168.82.205\",\r\n            \"connection_mode\": \"1\"\r\n        },\r\n        \"system\": {},\r\n        \"capacity\": {\r\n            \"support_alphanumeric\": \"true\"\r\n        },\r\n        \"support_occupancy\": \"false\",\r\n        \"pktversion\": \"3\",\r\n        \"device_group_id\": {\r\n            \"id\": 1\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices","description":"<p>This API is used to add device to BioStar 2.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device which will be added</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the device which will be added</td>\n</tr>\n<tr>\n<td>device_group_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device group which the device will be under</td>\n</tr>\n<tr>\n<td>isDisabled</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle to disable or enable the device</td>\n</tr>\n<tr>\n<td>lan:enable_dhcp</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle to enable or disable DHCP</td>\n</tr>\n<tr>\n<td>lan:ip</td>\n<td>String</td>\n<td>Y</td>\n<td>If DHCP disabled. Put the device's IP on this parameter</td>\n</tr>\n<tr>\n<td>lan:device_port</td>\n<td>Number</td>\n<td>N</td>\n<td>Port of the device which will be used by BioStar 2 to communicate</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"a21f872f-7758-4601-bc1d-9531cf3ce041"},{"name":"Add Device Required Only","event":[{"listen":"prerequest","script":{"id":"a55d4b95-2183-4f0f-8144-aef22b744e9b","exec":["const postRequest = {\r","  url: pm.collectionVariables.get('baseUrl')+\"/api/devices/waiting\",\r","  method: 'GET',\r","  header: {\r","    'bs-session-id': pm.collectionVariables.get('bsid')\r","  },\r","};\r","\r","pm.sendRequest(postRequest, (error, res) => {\r","  console.log(error ? error : res.json());\r","  const jsonData = res.json();\r","  pm.collectionVariables.set(\"w_dev_id\", jsonData.DeviceCollection.rows[0].id)\r","  pm.collectionVariables.set(\"w_dev_dtid\", jsonData.DeviceCollection.rows[0].device_type_id.id);\r","  pm.collectionVariables.set(\"w_dev_ip\", jsonData.DeviceCollection.rows[0].lan.ip);\r","  pm.collectionVariables.set(\"w_dev_connmode\", jsonData.DeviceCollection.rows[0].lan.connection_mode);\r","});\r","\r",""],"type":"text/javascript"}}],"id":"2dbabc27-3482-4ca2-8f84-bf3710c31366","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Device\": {\r\n        \"id\": \"\",\r\n        \"name\": \"D\",\r\n        \"device_type_id\": {\r\n            \"id\": \"\"\r\n        },\r\n        \"lan\": {\r\n            \"ip\": \"\",\r\n            \"connection_mode\": \"\"\r\n        },\r\n        \"device_group_id\": {\r\n            \"id\": 1\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2dbabc27-3482-4ca2-8f84-bf3710c31366"},{"name":"Add Slave Device","event":[{"listen":"prerequest","script":{"id":"a55d4b95-2183-4f0f-8144-aef22b744e9b","exec":["const postRequest = {\r","  url: pm.collectionVariables.get('baseUrl')+\"/api/devices/waiting\",\r","  method: 'GET',\r","  header: {\r","    'bs-session-id': pm.collectionVariables.get('bsid')\r","  },\r","};\r","\r","pm.sendRequest(postRequest, (error, res) => {\r","  console.log(error ? error : res.json());\r","  const jsonData = res.json();\r","  pm.collectionVariables.set(\"w_dev_id\", jsonData.DeviceCollection.rows[0].id)\r","  pm.collectionVariables.set(\"w_dev_dtid\", jsonData.DeviceCollection.rows[0].device_type_id.id);\r","  pm.collectionVariables.set(\"w_dev_ip\", jsonData.DeviceCollection.rows[0].lan.ip);\r","  pm.collectionVariables.set(\"w_dev_connmode\", jsonData.DeviceCollection.rows[0].lan.connection_mode);\r","});\r","\r",""],"type":"text/javascript","packages":{}}}],"id":"cad96a8f-339f-449a-9af0-79825acaf3fc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DeviceCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"40059024\",\r\n                \"name\": \"BioStation 3 40059024\",\r\n                \"device_type_id\": {\r\n                    \"id\": \"35\"\r\n                },\r\n                \"parent_device_id\": {\r\n                    \"id\": 40059023\r\n                },\r\n                \"rs485\": {\r\n                    \"mode\": \"2\",\r\n                    \"connected_channel_index\": \"0\",\r\n                    \"parent_rs485_info\": \"RS485 Port 0\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices","description":"<p>This example shows how to add slave device to BioStar 2.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"cad96a8f-339f-449a-9af0-79825acaf3fc"},{"name":"Update Device","id":"03c61115-19f8-4e6f-917c-f566fae51d4e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Device\": {\r\n        \"name\": \"FaceStation 2 542353521 (192.168.1.23)\",\r\n        \"device_group_id\": {\r\n            \"id\": 47,\r\n            \"name\": \"Suprema\"\r\n        },\r\n        \"lan\": {\r\n            \"connection_mode\": \"1\",\r\n            \"enable_dhcp\": \"false\",\r\n            \"use_dns\": \"false\",\r\n            \"ip\": \"192.168.1.23\",\r\n            \"device_port\": \"51211\",\r\n            \"gateway\": \"192.168.1.1\",\r\n            \"subnet_mask\": \"255.255.255.0\",\r\n            \"server_port\": \"51212\",\r\n            \"mtu_size\": \"1514\",\r\n            \"baseband\": \"0\",\r\n            \"server_ip\": \"192.168.1.5\"\r\n        },\r\n        \"usb\": {\r\n            \"enable_usb\": \"false\",\r\n            \"enable_usb_memory\": \"false\"\r\n        },\r\n        \"wlan\": {\r\n            \"enabled\": \"false\",\r\n            \"operation_mode\": \"0\",\r\n            \"auth_type\": \"0\",\r\n            \"encryption_type\": \"0\"\r\n        },        \r\n        \"rs485\": {\r\n            \"mode\": \"3\",\r\n            \"intelligentInfo\": {\r\n                \"supportIConfig\": \"false\",\r\n                \"useFailCode\": \"false\",\r\n                \"failCodeFormat\": \"1\",\r\n                \"failCode\": \"0000000000000000\",\r\n                \"osdpID\": \"0\",\r\n                \"cardFormat\": \"0\"\r\n            },\r\n            \"channels\": [\r\n                {\r\n                    \"index\": \"0\",\r\n                    \"mode\": \"1\",\r\n                    \"baudrate\": \"115200\"\r\n                }\r\n            ]\r\n        },        \r\n        \"authentication\": {\r\n            \"matching_timeout\": \"5\",\r\n            \"auth_timeout\": \"5\",\r\n            \"enable_private_auth\": \"true\",\r\n            \"enable_server_matching\": \"false\",\r\n            \"face_detection_level\": \"0\",\r\n            \"enable_full_access\": \"false\",\r\n            \"operation_modes\": [\r\n                {\r\n                    \"mode\": \"0\",\r\n                    \"schedule_id\": {\r\n                        \"id\": \"1\"\r\n                    }\r\n                },\r\n                {\r\n                    \"mode\": \"5\",\r\n                    \"schedule_id\": {\r\n                        \"id\": \"1\"\r\n                    }\r\n                },\r\n                {\r\n                    \"mode\": \"9\",\r\n                    \"schedule_id\": {\r\n                        \"id\": \"1\"\r\n                    }\r\n                }\r\n            ],\r\n            \"operators\": [],\r\n            \"enable_card_Id_from_keypad\": \"false\"\r\n        },\r\n        \"card\": {\r\n            \"use_csn\": \"true\",\r\n            \"use_mifare_felica\": \"true\",\r\n            \"use_em\": \"true\",\r\n            \"use_wiegand\": \"false\",\r\n            \"use_iclass\": \"false\",\r\n            \"use_HIDprox\": \"false\",\r\n            \"use_smart\": \"true\",\r\n            \"use_SEOS\": \"false\",\r\n            \"use_SR_SE\": \"false\",\r\n            \"use_desfire_ev1\": \"true\",\r\n            \"use_classic_plus\": \"true\",\r\n            \"use_mobile\": \"true\",\r\n            \"use_BLE\": \"false\",\r\n            \"use_NFC\": \"true\",\r\n            \"byte_order\": \"0\",\r\n            \"use_wiegand_format\": \"false\",\r\n            \"card_layout\": {\r\n                \"id\": \"2\"\r\n            }\r\n        },\r\n        \"display\": {\r\n            \"language\": \"1\",\r\n            \"background\": \"0\",\r\n            \"background_theme\": \"0\",\r\n            \"volume\": \"50\",\r\n            \"use_voice\": \"false\",\r\n            \"menu_timeout\": \"20\",\r\n            \"message_timeout\": \"2000\",\r\n            \"backlight_timeout\": \"20\",\r\n            \"display_datetime\": \"true\",\r\n            \"date_type\": \"0\",\r\n            \"time_format\": \"0\",\r\n            \"home_formation\": \"5\",\r\n            \"shortcut_home\": \"\",\r\n            \"device_private_message\": \"false\",\r\n            \"server_private_message\": \"false\",\r\n            \"use_screen_saver\": \"true\",\r\n            \"sounds\": []\r\n        },\r\n        \"system\": {\r\n            \"timezone\": 28800,\r\n            \"sync_time\": \"true\",\r\n            \"locked\": \"false\",\r\n            \"interphone_type\": 0,\r\n            \"camera_frequency\": \"60\",\r\n            \"use_alphanumeric\": \"false\",\r\n            \"enable_clear_on_tamper\": \"true\",\r\n            \"enable_data_encryption\": false,\r\n            \"use_card_operation\": \"true\"\r\n        },\r\n        \"wiegand\": {\r\n            \"wiegand_in_out\": \"0\",\r\n            \"out_pulse_width\": \"40\",\r\n            \"out_pulse_interval\": \"10000\",\r\n            \"enable_bypass_mode\": \"false\",\r\n            \"format_id\": {\r\n                \"id\": \"0\"\r\n            },\r\n            \"enable_fail_code\": \"false\",\r\n            \"fail_code\": \"0\",\r\n            \"wiegand_output_info\": \"1\",\r\n            \"wiegand_csn_id\": {\r\n                \"id\": \"-1\"\r\n            },\r\n            \"wiegand_cards\": [],\r\n            \"wiegand_inputs\": []\r\n        },\r\n        \"tna\": {\r\n            \"mode\": \"1\",\r\n            \"fixed_code\": 0,\r\n            \"required\": \"false\",\r\n            \"tna_keys\": [\r\n                {\r\n                    \"order\": 1,\r\n                    \"key\": 0,\r\n                    \"keyName\": \"Code 1\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 2,\r\n                    \"key\": 1,\r\n                    \"keyName\": \"Code 2\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 3,\r\n                    \"key\": 2,\r\n                    \"keyName\": \"Code 3\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 4,\r\n                    \"key\": 3,\r\n                    \"keyName\": \"Code 4\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 5,\r\n                    \"key\": 4,\r\n                    \"keyName\": \"Code 5\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 6,\r\n                    \"key\": 5,\r\n                    \"keyName\": \"Code 6\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 7,\r\n                    \"key\": 6,\r\n                    \"keyName\": \"Code 7\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 8,\r\n                    \"key\": 7,\r\n                    \"keyName\": \"Code 8\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 9,\r\n                    \"key\": 8,\r\n                    \"keyName\": \"Code 9\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 10,\r\n                    \"key\": 9,\r\n                    \"keyName\": \"Code 10\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 11,\r\n                    \"key\": 10,\r\n                    \"keyName\": \"Code 11\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 12,\r\n                    \"key\": 11,\r\n                    \"keyName\": \"Code 12\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 13,\r\n                    \"key\": 12,\r\n                    \"keyName\": \"Code 13\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 14,\r\n                    \"key\": 13,\r\n                    \"keyName\": \"Code 14\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 15,\r\n                    \"key\": 14,\r\n                    \"keyName\": \"Code 15\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                },\r\n                {\r\n                    \"order\": 16,\r\n                    \"key\": 15,\r\n                    \"keyName\": \"Code 16\",\r\n                    \"schedule_id\": {},\r\n                    \"label\": \"\"\r\n                }\r\n            ]\r\n        },\r\n        \"input\": {\r\n            \"input_port_num\": \"0\",\r\n            \"supervised_inputs\": \"\"\r\n        },\r\n        \"event_filter\": {\r\n            \"rows\": [],\r\n            \"total\": \"0\"\r\n        },\r\n        \"voip\": {\r\n            \"use\": \"false\",\r\n            \"server\": {\r\n                \"address\": \"\",\r\n                \"user_id\": \"\",\r\n                \"password\": \"\",\r\n                \"port\": \"\"\r\n            },\r\n            \"dtmf\": {\r\n                \"mode\": \"0\",\r\n                \"exit_button\": \"0\"\r\n            },\r\n            \"phonebook_list\": []\r\n        },\r\n        \"barcode\": {\r\n            \"use_barcode\": \"false\",\r\n            \"scan_timeout\": \"4\"\r\n        },\r\n        \"pktversion\": \"3\",\r\n        \"support_occupancy\": \"true\",\r\n        \"thermal_config\": {\r\n            \"enable_thermal_camera\": \"0\",\r\n            \"enable_centigrade\": \"1\",\r\n            \"temperature_threshold_low\": \"3200\",\r\n            \"temperature_threshold_high\": \"3800\",\r\n            \"enable_audit_temperature\": \"true\",\r\n            \"enable_temperature_reject_sound\": \"true\",\r\n            \"enable_overlap_thermal\": \"true\",\r\n            \"temperature_checkmode\": \"0\",\r\n            \"enable_mask\": \"0\",\r\n            \"mask_detection_level\": \"0\",\r\n            \"enable_dynamic_roi\": \"false\"\r\n        },\r\n        \"thermal_camera_config\": {\r\n            \"distance\": \"100\",\r\n            \"emissivity\": \"98\",\r\n            \"roi_x\": \"47\",\r\n            \"roi_y\": \"45\",\r\n            \"roi_width\": \"15\",\r\n            \"roi_height\": \"10\",\r\n            \"enable_body_compensation\": \"true\",\r\n            \"compensation_temperature\": \"0\"\r\n        },\r\n        \"trigger_actions\": \"\",\r\n        \"authmode\": {\r\n            \"id\": \"542353521\",\r\n            \"extAuthModeSupported\": \"false\",\r\n            \"cardAuthSupported\": \"true\",\r\n            \"cardAuthMask\": \"0\",\r\n            \"fingerprintAuthSupported\": \"true\",\r\n            \"fingerprintAuthMask\": \"0\",\r\n            \"faceAuthSupported\": \"false\",\r\n            \"faceAuthMask\": \"990979\",\r\n            \"idAuthSupported\": \"true\",\r\n            \"idAuthMask\": \"0\"\r\n        },\r\n        \"card_supported_from_device\": {\r\n            \"mask\": \"2147483957\",\r\n            \"em4100\": \"true\",\r\n            \"HIDProx\": \"false\",\r\n            \"mifare_felica\": \"true\",\r\n            \"iCLASS\": \"false\",\r\n            \"mifareClassic_Plus\": \"true\",\r\n            \"Desfire_ev1\": \"true\",\r\n            \"iCLASSSRSE\": \"false\",\r\n            \"iCLASSSEOS\": \"false\",\r\n            \"NFC\": \"true\",\r\n            \"BLE\": \"false\",\r\n            \"use_card_operation\": \"true\"\r\n        },\r\n        \"capability\": {\r\n            \"thermalAuthSupported\": \"1\",\r\n            \"maskAuthSupported\": \"0\",\r\n            \"intelligentPDSupported\": \"0\"\r\n        },\r\n        \"imageLogEventInfo\": {\r\n            \"imageLogEventItems\": []\r\n        },\r\n        \"use_image_log\": \"false\",\r\n        \"dst1\": \"0\",\r\n        \"dst2\": \"0\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/:id","description":"<p>This API is used to update device's configuration.<br />Put value which will be updated on the respective BODY parameter and remove any parameters which will not be updated.</p>\n<p>BODY Parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>N</td>\n<td>Name of the device</td>\n</tr>\n<tr>\n<td>device_group_id:id</td>\n<td>Number</td>\n<td>N</td>\n<td>Group ID of the device</td>\n</tr>\n<tr>\n<td>lan:connection_mode</td>\n<td>Number</td>\n<td>N</td>\n<td>Connection mode of the device:  <br />0 = Server &gt; Device  <br />1 = Device &gt; Server</td>\n</tr>\n<tr>\n<td>lan:enable_dhcp</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle true to enable DHCP</td>\n</tr>\n<tr>\n<td>lan:use_dns</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle true to use DNS</td>\n</tr>\n<tr>\n<td>lan:ip</td>\n<td>String</td>\n<td>N</td>\n<td>IP of the device</td>\n</tr>\n<tr>\n<td>lan:device_port</td>\n<td>Number</td>\n<td>N</td>\n<td>Connection port which the device use</td>\n</tr>\n<tr>\n<td>lan:gateway</td>\n<td>String</td>\n<td>N</td>\n<td>IP gateway which the device use</td>\n</tr>\n<tr>\n<td>lan:subnet_mask</td>\n<td>String</td>\n<td>N</td>\n<td>Subnet of the device</td>\n</tr>\n<tr>\n<td>lan:server_port</td>\n<td>Number</td>\n<td>N</td>\n<td>Connection port of the server</td>\n</tr>\n<tr>\n<td>lan:server_ip</td>\n<td>String</td>\n<td>N</td>\n<td>IP of the server</td>\n</tr>\n<tr>\n<td>usb:enable_usb</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use USB</td>\n</tr>\n<tr>\n<td>usb:enable_usb_memory</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use USB memory</td>\n</tr>\n<tr>\n<td>wlan:enabled</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle true to use WLAN (only for supported devices)</td>\n</tr>\n<tr>\n<td>wlan:operation_mode</td>\n<td>Number</td>\n<td>N</td>\n<td>Operation mode of the device</td>\n</tr>\n<tr>\n<td>wlan:auth_type</td>\n<td>Number</td>\n<td>N</td>\n<td>WLAN authorization type</td>\n</tr>\n<tr>\n<td>wlan:encryption_type</td>\n<td>Number</td>\n<td>N</td>\n<td>WLAN encryption type</td>\n</tr>\n<tr>\n<td>rs485:mode</td>\n<td>Number</td>\n<td>N</td>\n<td>RS485 Mode:  <br />1 = Master  <br />2 = Slave  <br />3 = Default</td>\n</tr>\n<tr>\n<td>rs485:channels:mode</td>\n<td>Number</td>\n<td>N</td>\n<td>Channel usage (same as mode)</td>\n</tr>\n<tr>\n<td>rs485:channels:baudrate</td>\n<td>Number</td>\n<td>N</td>\n<td>Baudrate value</td>\n</tr>\n<tr>\n<td>authentication:matching_timeout</td>\n<td>String</td>\n<td>N</td>\n<td>Matching Timeout</td>\n</tr>\n<tr>\n<td>authentication:auth_timeout</td>\n<td>String</td>\n<td>N</td>\n<td>Authentication Timeout</td>\n</tr>\n<tr>\n<td>authentication:enable_private_auth</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Private Authentication</td>\n</tr>\n<tr>\n<td>authentication:enable_server_matching</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Server Matching</td>\n</tr>\n<tr>\n<td>authentication:face_detection_level</td>\n<td>String</td>\n<td>N</td>\n<td>Face Detection Level</td>\n</tr>\n<tr>\n<td>authentication:enable_full_access</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Full Access</td>\n</tr>\n<tr>\n<td>authentication:operation_modes:mode</td>\n<td>Number</td>\n<td>N</td>\n<td>Operation/Authentication Mode</td>\n</tr>\n<tr>\n<td>authentication:operation_modes:schedule_id:id</td>\n<td>Number</td>\n<td>N</td>\n<td>Schedule applied for Operation/Authentication Mode</td>\n</tr>\n<tr>\n<td>authentication:enable_card_Id_from_keypad</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Card ID from Keypad</td>\n</tr>\n<tr>\n<td>card:use_csn</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use CSN</td>\n</tr>\n<tr>\n<td>card:use_mifare_felica</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Mifare Felica</td>\n</tr>\n<tr>\n<td>card:use_em</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use EM</td>\n</tr>\n<tr>\n<td>card:use_wiegand</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Wiegand</td>\n</tr>\n<tr>\n<td>card:use_iclass</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Iclass</td>\n</tr>\n<tr>\n<td>card:use_HIDprox</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use HIDprox</td>\n</tr>\n<tr>\n<td>card:use_smart</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Smart</td>\n</tr>\n<tr>\n<td>card:use_SEOS</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use SEOS</td>\n</tr>\n<tr>\n<td>card:use_SR_SE</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use SR SE</td>\n</tr>\n<tr>\n<td>card:use_desfire_ev1</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Desfire EV1</td>\n</tr>\n<tr>\n<td>card:use_classic_plus</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Classic Plus</td>\n</tr>\n<tr>\n<td>card:use_mobile</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Mobile</td>\n</tr>\n<tr>\n<td>card:use_BLE</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use BLE</td>\n</tr>\n<tr>\n<td>card:use_NFC</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use NFC</td>\n</tr>\n<tr>\n<td>card:byte_order</td>\n<td>String</td>\n<td>N</td>\n<td>Card Byte Order</td>\n</tr>\n<tr>\n<td>card:use_wiegand_format</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Wiegand Format</td>\n</tr>\n<tr>\n<td>display:language</td>\n<td>String</td>\n<td>N</td>\n<td>Language</td>\n</tr>\n<tr>\n<td>display:background</td>\n<td>String</td>\n<td>N</td>\n<td>Background</td>\n</tr>\n<tr>\n<td>display:background_theme</td>\n<td>String</td>\n<td>N</td>\n<td>Background Theme</td>\n</tr>\n<tr>\n<td>display:volume</td>\n<td>String</td>\n<td>N</td>\n<td>Volume</td>\n</tr>\n<tr>\n<td>display:use_voice</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Voice</td>\n</tr>\n<tr>\n<td>display:menu_timeout</td>\n<td>String</td>\n<td>N</td>\n<td>Menu Timeout</td>\n</tr>\n<tr>\n<td>display:message_timeout</td>\n<td>String</td>\n<td>N</td>\n<td>Message Timeout</td>\n</tr>\n<tr>\n<td>display:backlight_timeout</td>\n<td>String</td>\n<td>N</td>\n<td>Backlight Timeout</td>\n</tr>\n<tr>\n<td>display:display_datetime</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Display DateTime</td>\n</tr>\n<tr>\n<td>display:date_type</td>\n<td>String</td>\n<td>N</td>\n<td>Date Type</td>\n</tr>\n<tr>\n<td>display:time_format</td>\n<td>String</td>\n<td>N</td>\n<td>Time Format</td>\n</tr>\n<tr>\n<td>display:home_formation</td>\n<td>String</td>\n<td>N</td>\n<td>Home Formation</td>\n</tr>\n<tr>\n<td>display:shortcut_home</td>\n<td>String</td>\n<td>N</td>\n<td>Shortcut Home</td>\n</tr>\n<tr>\n<td>display:device_private_message</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Device Private Message</td>\n</tr>\n<tr>\n<td>display:server_private_message</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Server Private Message</td>\n</tr>\n<tr>\n<td>system:timezone</td>\n<td>Integer</td>\n<td>N</td>\n<td>Time Zone</td>\n</tr>\n<tr>\n<td>system:sync_time</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Sync Time</td>\n</tr>\n<tr>\n<td>system:locked</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Locked</td>\n</tr>\n<tr>\n<td>system:interphone_type</td>\n<td>Integer</td>\n<td>N</td>\n<td>Interphone Type</td>\n</tr>\n<tr>\n<td>system:camera_frequency</td>\n<td>String</td>\n<td>N</td>\n<td>Camera Frequency</td>\n</tr>\n<tr>\n<td>system:use_alphanumeric</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Alphanumeric</td>\n</tr>\n<tr>\n<td>system:enable_clear_on_tamper</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Clear Tamper</td>\n</tr>\n<tr>\n<td>system:enable_data_encryption</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Date Encryption</td>\n</tr>\n<tr>\n<td>system:use_card_operation</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Card Operation</td>\n</tr>\n<tr>\n<td>wiegand:wiegand_in_out</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Wiegand In Out</td>\n</tr>\n<tr>\n<td>wiegand:out_pulse_width</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Out Pulse Width</td>\n</tr>\n<tr>\n<td>wiegand:out_pulse_interval</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Out Pulse Interval</td>\n</tr>\n<tr>\n<td>wiegand:enable_bypass_mode</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Bypass Mode</td>\n</tr>\n<tr>\n<td>wiegand:format_id:id</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Format ID</td>\n</tr>\n<tr>\n<td>wiegand:enable_fail_code</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Fail Code</td>\n</tr>\n<tr>\n<td>wiegand:fail_code</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Fail Code</td>\n</tr>\n<tr>\n<td>wiegand:wiegand_output_info</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Wiegand Output Information</td>\n</tr>\n<tr>\n<td>wiegand:wiegand_csn_id:id</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Wiegand CSN ID</td>\n</tr>\n<tr>\n<td>wiegand:wiegand_cards</td>\n<td>Array</td>\n<td>N</td>\n<td>desc: Wiegand Cards</td>\n</tr>\n<tr>\n<td>wiegand:wiegand_inputs</td>\n<td>Array</td>\n<td>N</td>\n<td>desc: Wiegand Inputs</td>\n</tr>\n<tr>\n<td>tna:mode</td>\n<td>string</td>\n<td>N</td>\n<td>desc: TnA Mode</td>\n</tr>\n<tr>\n<td>tna:fixed_code</td>\n<td>integer</td>\n<td>N</td>\n<td>desc: TnA Fixed Code</td>\n</tr>\n<tr>\n<td>tna:required</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: TnA Required</td>\n</tr>\n<tr>\n<td>tna:tna_keys:order</td>\n<td>integer</td>\n<td>N</td>\n<td>desc: TnA keys order</td>\n</tr>\n<tr>\n<td>tna:tna_keys:key</td>\n<td>integer</td>\n<td>N</td>\n<td>desc: TnA Key</td>\n</tr>\n<tr>\n<td>tna:tna_keys:keyName</td>\n<td>string</td>\n<td>N</td>\n<td>desc: TnA KeyName</td>\n</tr>\n<tr>\n<td>tna:tna_keys:schedule_id</td>\n<td>Number</td>\n<td>N</td>\n<td>Schedule ID</td>\n</tr>\n<tr>\n<td>tna:tna_keys:label</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Label</td>\n</tr>\n<tr>\n<td>input:input_port_num</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Input Port Number</td>\n</tr>\n<tr>\n<td>input:supervised_inputs</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Supervised Inputs</td>\n</tr>\n<tr>\n<td>event_filter</td>\n<td>Array</td>\n<td>N</td>\n<td>desc: List of event filters in which image logs are saved on the device</td>\n</tr>\n<tr>\n<td>voip:use</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Voip</td>\n</tr>\n<tr>\n<td>voip:server:address</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Address</td>\n</tr>\n<tr>\n<td>voip:server:user_id</td>\n<td>string</td>\n<td>N</td>\n<td>desc: User ID</td>\n</tr>\n<tr>\n<td>voip:server:password</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Password</td>\n</tr>\n<tr>\n<td>voip:server:port</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Port</td>\n</tr>\n<tr>\n<td>voip:dtmf:mode</td>\n<td>string</td>\n<td>N</td>\n<td>desc: DTMF Mode</td>\n</tr>\n<tr>\n<td>voip:dtmf:exit_button</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Exit Button</td>\n</tr>\n<tr>\n<td>voip:phonebook_list</td>\n<td>string</td>\n<td>N</td>\n<td>desc: List of extension numbers on the intercom</td>\n</tr>\n<tr>\n<td>thermal_config:enable_thermal_camera</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Thermal Camera Use Not Use : 0<br />Use (Deny access when exceeded threshold temperature) : 1<br />Use (Allow access after leaving log when exceeded threshold temperature) : 2</td>\n</tr>\n<tr>\n<td>thermal_config:enable_centigrade</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Celsius (1)</td>\n</tr>\n<tr>\n<td>thermal_config:temperature_threshold</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Threshold Temperature (Celsius, 38.0 -&gt; 3800)</td>\n</tr>\n<tr>\n<td>thermal_config:enable_audit_temperature</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Save Temperature Data</td>\n</tr>\n<tr>\n<td>thermal_config:enable_temperature_reject_sound</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Temperature Fail Sound</td>\n</tr>\n<tr>\n<td>thermal_config:enable_overlap_thermal</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Show Infrared Image (Device not supported)</td>\n</tr>\n<tr>\n<td>thermal_config:temperature_checkmode</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Check Mode <br />Check after authentication : 0 <br />Check before authentication : 1 <br />Check without authentication : 2</td>\n</tr>\n<tr>\n<td>thermal_config:enable_mask</td>\n<td>string</td>\n<td>N</td>\n<td>desc : Mask Detection <br />Not Use : 0 <br />Use (Deny access when failed to detect mask) : 1 <br />Use (Allow access after leaving log when failed to detect mask) : 2</td>\n</tr>\n<tr>\n<td>thermal_config:mask_detection_level</td>\n<td>string</td>\n<td>N</td>\n<td>desc : Mask Detect Level <br />Off : 0 <br />Strict : 1 <br />More Strict : 2 <br />Most Strict : 3</td>\n</tr>\n<tr>\n<td>thermal_config:enable_dynamic_roi</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Dynamic ROI (Device not supported)</td>\n</tr>\n<tr>\n<td>thermal_camera_config:distance</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Distance (cm)</td>\n</tr>\n<tr>\n<td>thermal_camera_config:emission_rate</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Emission Rate (0.95 -&gt; 95, 0.97 -&gt; 97, 0.98 -&gt; 98)</td>\n</tr>\n<tr>\n<td>thermal_camera_config:roi_x</td>\n<td>string</td>\n<td>N</td>\n<td>desc: ROI X (%)</td>\n</tr>\n<tr>\n<td>thermal_camera_config:roi_y</td>\n<td>string</td>\n<td>N</td>\n<td>desc: ROI Y (%)</td>\n</tr>\n<tr>\n<td>thermal_camera_config:roi_width</td>\n<td>string</td>\n<td>N</td>\n<td>desc: ROI Width (%)</td>\n</tr>\n<tr>\n<td>thermal_camera_config:roi_height</td>\n<td>string</td>\n<td>N</td>\n<td>desc: ROI Height (%)</td>\n</tr>\n<tr>\n<td>thermal_camera_config:compensation_temperature</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Temperature Correction (Celsius)</td>\n</tr>\n<tr>\n<td>authmode:id</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Authmode Id</td>\n</tr>\n<tr>\n<td>authmode:extAuthModeSupported</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Authmode ExtAuthModeSupported</td>\n</tr>\n<tr>\n<td>authmode:cardAuthSupported</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Authmode CardAuthSupported</td>\n</tr>\n<tr>\n<td>authmode:cardAuthMask</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Authmode CardAuthMask</td>\n</tr>\n<tr>\n<td>authmode:fingerprintAuthSupported</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Authmode FingerprintAuthSupported</td>\n</tr>\n<tr>\n<td>authmode:fingerprintAuthMask</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Authmode FingerprintAuthMask</td>\n</tr>\n<tr>\n<td>authmode:faceAuthSupported</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Authmode FaceAuthSupported</td>\n</tr>\n<tr>\n<td>authmode:faceAuthMask</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Authmode FaceAuthMask</td>\n</tr>\n<tr>\n<td>authmode:idAuthSupported</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Authmode IdAuthSupported</td>\n</tr>\n<tr>\n<td>authmode:idAuthMask</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Authmode IdAuthMask</td>\n</tr>\n<tr>\n<td>card_supported_from_device:mask</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Card Supported From Device Mask</td>\n</tr>\n<tr>\n<td>card_supported_from_device:em4100</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device Em4100</td>\n</tr>\n<tr>\n<td>card_supported_from_device:HIDProx</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device HIDProx</td>\n</tr>\n<tr>\n<td>card_supported_from_device:mifare_felica</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device Mifare Felica</td>\n</tr>\n<tr>\n<td>card_supported_from_device:iCLASS</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device ICLASS</td>\n</tr>\n<tr>\n<td>card_supported_from_device:mifareClassic_Plus</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device MifareClassic Plus</td>\n</tr>\n<tr>\n<td>card_supported_from_device:Desfire_ev1</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device Desfire Ev1</td>\n</tr>\n<tr>\n<td>card_supported_from_device:iCLASSSRSE</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device ICLASSSRSE</td>\n</tr>\n<tr>\n<td>card_supported_from_device:iCLASSSEOS</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device ICLASSSEOS</td>\n</tr>\n<tr>\n<td>card_supported_from_device:NFC</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device NFC</td>\n</tr>\n<tr>\n<td>card_supported_from_device:BLE</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device BLE</td>\n</tr>\n<tr>\n<td>card_supported_from_device:use_card_operation</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Card Supported From Device Operation</td>\n</tr>\n<tr>\n<td>capability:thermalAuthSupported</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Capability ThermalAuthSupported</td>\n</tr>\n<tr>\n<td>capability:maskAuthSupported</td>\n<td>string</td>\n<td>N</td>\n<td>desc: Capability MaskAuthSupported</td>\n</tr>\n<tr>\n<td>imageLogEventInfo:imageLogEventItems</td>\n<td>Array</td>\n<td>N</td>\n<td>desc: Image Log Event Items</td>\n</tr>\n<tr>\n<td>use_image_log</td>\n<td>boolean</td>\n<td>N</td>\n<td>desc: Use Image Log</td>\n</tr>\n<tr>\n<td>dst1</td>\n<td>string</td>\n<td>N</td>\n<td>desc: dst1</td>\n</tr>\n<tr>\n<td>dst2</td>\n<td>string</td>\n<td>N</td>\n<td>desc: dst2</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which will be updated</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"03c61115-19f8-4e6f-917c-f566fae51d4e"},{"name":"Update Device Homescreen","id":"5f1272f9-946d-4757-85b4-40ac94730d8d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DeviceCollection\": {\r\n        \"total\": 2,\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"538152248\"\r\n            },\r\n            {\r\n                \"id\": \"538152254\"\r\n            }\r\n        ]\r\n    },\r\n    \"ResourceDataCollection\": {\r\n        \"total\": 1,\r\n        \"type\": \"2\",\r\n        \"rows\": [\r\n            {\r\n                \"slot\": 0,\r\n                \"data\": \"iVBORw0KGgoAAAANSUhEUgAAAtAAAA...--redacted\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/resources/update","description":"<p>This API is used to update Device's homescreen.</p>\n<p>Before running this API, you must set the Device's homescreen parameter to either Notice or Logo using <code>Update Device</code> API (/api/devices/:id)</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Device\": {\n    \"display\": {\n      \"background\": \"0\"\n      \"background_theme\": \"2\"\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>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>background</td>\n<td>0 = Default  <br />2 = Slide Show</td>\n</tr>\n<tr>\n<td>background_theme</td>\n<td>0 = Normal  <br />1 = Notice  <br />2 = Logo</td>\n</tr>\n</tbody>\n</table>\n</div><p>To set it as Slide Show mode, set both background and background_theme value to 2.</p>\n<p>Then run this API to adjust the display accordingly.</p>\n<h5 id=\"body-parameter-on-this-api\">BODY Parameter on this API:</h5>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>DeviceCollection.total</td>\n<td>Number</td>\n<td>Y</td>\n<td>Total number of devices which will be updated.</td>\n</tr>\n<tr>\n<td>DeviceCollection.rows.id</td>\n<td>String</td>\n<td>Y</td>\n<td>ID of the device which will be updated. May contain multiple value by repeating the parameter separated by comma (,). Do note that total number of device need to be the same as total number of device listed.</td>\n</tr>\n<tr>\n<td>ResourceDataCollection.total</td>\n<td>Number</td>\n<td>Y</td>\n<td>Total number of data which will be applied.</td>\n</tr>\n<tr>\n<td>ResourceDataCollection.type</td>\n<td>String</td>\n<td>Y</td>\n<td>1 = Use this if background_theme is set to Notice.  <br />2 = Use this if background_theme is set to Logo.  <br />3 = Use this to set it as Logo Slide Show.</td>\n</tr>\n<tr>\n<td>ResourceDataCollection.rows.slot</td>\n<td>Number</td>\n<td>Y</td>\n<td>Data display sequence. For Type 1 and 2 set it as 0.</td>\n</tr>\n<tr>\n<td>ResourceDataCollection.rows.data</td>\n<td>Base64</td>\n<td>Y</td>\n<td>Data which will be used for homescreen display. Use base64 encoding for its value.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","resources","update"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"5f1272f9-946d-4757-85b4-40ac94730d8d"},{"name":"List Device Types","id":"64a3609d-d81c-4da0-af54-d9cbe152f2a9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/device_types","description":"<p>This API is used to list Suprema devices recorded on BioStar 2.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","device_types"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"64a3609d-d81c-4da0-af54-d9cbe152f2a9"},{"name":"View Device(s) Based on Enrollment Type","id":"b6c75a7c-3cb3-449a-8550-5d07b2a1b817","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/enrollment?type=0","description":"<p>This API is used to view device(s) based on its enrollment capabilities.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","enrollment"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Device enrollment type. 0=All, 1=Finger, 2=CSN, 3= Smart, 4=Face, 5=Visual Face</p>\n","type":"text/plain"},"key":"type","value":"0"}],"variable":[]}},"response":[],"_postman_id":"b6c75a7c-3cb3-449a-8550-5d07b2a1b817"},{"name":"List All Added Device(s)","id":"4e56695a-9d81-4e1b-b863-0bdb59add36a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices","description":"<p>This API is used to view all devices recorded on BioStar 2 database.</p>\n<p>Status response for this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>status</td>\n<td>Integer</td>\n<td>Connection status of the device.  <br />0: Disconnected  <br />1: Connected  <br />2: Sync Error</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"4e56695a-9d81-4e1b-b863-0bdb59add36a"},{"name":"List Added Device(s) with Criteria","id":"59060225-2ca5-46b6-b11f-08a41e4786c2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"limit\": 0,\r\n    \"exclude_device_type_id\": \"254\",\r\n    \"order_by\": \"id:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/devices/search","description":"<p>This API is used to list devices with parameters to filter the result.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>limit the number of responses according to the specified value</td>\n</tr>\n<tr>\n<td>exclude_device_type_id</td>\n<td>Number</td>\n<td>N</td>\n<td>Exclude device to show on the response according to the device type id specified</td>\n</tr>\n<tr>\n<td>order_by</td>\n<td>String</td>\n<td>N</td>\n<td>Order the response according to the specified value</td>\n</tr>\n</tbody>\n</table>\n</div><p>It is required to at least put {} for the API to run correctly.</p>\n<p>Status response for this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>status</td>\n<td>Integer</td>\n<td>Connection status of the device.  <br />0: Disconnected  <br />1: Connected  <br />2: Sync Error</td>\n</tr>\n<tr>\n<td>user_sync_status</td>\n<td>Integer</td>\n<td>User sync status of the device.  <br />-1: Exceeded max user count  <br />0: Normal  <br />&gt;0: User Sync Error</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","devices","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"59060225-2ca5-46b6-b11f-08a41e4786c2"},{"name":"View Device Information","id":"f0ebb40f-12d0-427c-b679-58c02a207396","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/:id","description":"<p>This API is used to view device's information.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which information will be viewed</p>\n","type":"text/plain"},"type":"any","value":"542353521","key":"id"}]}},"response":[],"_postman_id":"f0ebb40f-12d0-427c-b679-58c02a207396"},{"name":"View Device Configuration","id":"4542fed2-a4d7-4dcd-8b83-085bf9129109","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/:id/config","description":"<p>This API is used to view device's configuration.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","config"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"bfe72772-7988-4b88-ae2c-14882ccc889b","description":{"content":"<p>ID of the device which information will be viewed</p>\n","type":"text/plain"},"type":"any","value":"543720368","key":"id"}]}},"response":[],"_postman_id":"4542fed2-a4d7-4dcd-8b83-085bf9129109"},{"name":"View User Data Summary on a Device","id":"5f0d7ed3-669e-41a8-b732-b66e317fc35f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/:id/discover_userdata","description":"<p>This API is used to view user data on a device.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","discover_userdata"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which user data will be viewed</p>\n","type":"text/plain"},"type":"any","value":"543308153","key":"id"}]}},"response":[],"_postman_id":"5f0d7ed3-669e-41a8-b732-b66e317fc35f"},{"name":"Enroll Face Credential","id":"c850e4b4-9f51-4605-a966-c4b2e622f3e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/:id/credentials/face?pose_sensitivity=4","description":"<p>This API is used to enroll face credential from a device.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","credentials","face"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Set the sensitivity for the position, angle, and distance of a face when registering the face. Set the sensitivity high if you wish to obtain a detailed face template. 0-9</p>\n","type":"text/plain"},"key":"pose_sensitivity","value":"4"}],"variable":[{"description":{"content":"<p>ID of the device which will be used to enroll</p>\n","type":"text/plain"},"type":"any","value":"543720368","key":"id"}]}},"response":[],"_postman_id":"c850e4b4-9f51-4605-a966-c4b2e622f3e2"},{"name":"Remove Device(s)","id":"f5420474-28bd-411e-be43-508b14a285e1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/devices?id=543408590","description":"<p>This API is used to delete device(s).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the device(s) which will be deleted. To delete multiple device use plus (+) sign as separator.</p>\n","type":"text/plain"},"key":"id","value":"543408590"}],"variable":[]}},"response":[],"_postman_id":"f5420474-28bd-411e-be43-508b14a285e1"},{"name":"View Device Capabilities","id":"bbedfdd9-6084-4e7b-b5f7-f4b61c922e3b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DeviceCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"543720368\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/capability","description":"<p>This API is used to list device's capabilities such as fingerprint, wifi, etc.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","capability"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"bbedfdd9-6084-4e7b-b5f7-f4b61c922e3b"},{"name":"Sync Device Data","id":"84e16d7f-4050-436f-803d-95d022fcc72f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DeviceCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"544140034\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/sync?clean=false","description":"<p>This API is used to sync device's data with BioStar 2.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device that the data will be synced</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","sync"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Toggle true to delete data on the device before sync process.</p>\n","type":"text/plain"},"key":"clean","value":"false"}],"variable":[]}},"response":[],"_postman_id":"84e16d7f-4050-436f-803d-95d022fcc72f"},{"name":"Unlock Device","id":"e0b53282-6fe1-4619-a0da-f2bbd8af1a37","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DeviceCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"543720368\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/unlock","description":"<p>This API is used to unlock a device.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device which will be unlocked</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","unlock"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"e0b53282-6fe1-4619-a0da-f2bbd8af1a37"},{"name":"Search Devices (TCP)","id":"864bdff4-dd74-401a-8fdb-55c83de336ab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Device\": {\r\n        \"lan\": {\r\n            \"ip\": \"192.168.1.25\",\r\n            \"device_port\": \"51211\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/tcp_search","description":"<p>This API is used to view device's information using TCP.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ip</td>\n<td>String</td>\n<td>Y</td>\n<td>IP of the device</td>\n</tr>\n<tr>\n<td>device_port</td>\n<td>Number</td>\n<td>Y</td>\n<td>Port of the device</td>\n</tr>\n</tbody>\n</table>\n</div><p>This API only works for devices which haven't been added to BioStar 2.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","tcp_search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"864bdff4-dd74-401a-8fdb-55c83de336ab"},{"name":"Search Devices (UDP)","id":"09dd8199-1375-4488-9c86-10dca850ec94","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"UdpSearchOption\": {\r\n        \"timeout\": 3,\r\n        \"with_rs485\": true,\r\n        \"hide_known_devices\": true\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/udp_search","description":"<p>This API is used to search devices through UDP.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>timeout</td>\n<td>Number</td>\n<td>N</td>\n<td>Search devices until the specified second reached</td>\n</tr>\n<tr>\n<td>with_rs485</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle to find device(s) with RS485</td>\n</tr>\n<tr>\n<td>hide_known_devices</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle to show device(s) which already known (added to BioStar 2) or not.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","udp_search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"09dd8199-1375-4488-9c86-10dca850ec94"},{"name":"View Device IP Settings","id":"276b5af9-afe2-436f-ae34-009d1ed9bc6b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Device\": {\r\n        \"id\": 543408590\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/udp_get","description":"<p>This API is used to get the IP settings of a device which have not been added to BioStar 2.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device which the IP setting will be viewed.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","udp_get"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"276b5af9-afe2-436f-ae34-009d1ed9bc6b"},{"name":"Update Device IP Settings","id":"a31af95d-bbc4-468b-afc3-65b6caf52a40","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Device\": {\r\n        \"id\": \"543408590\",\r\n        \"lan\": {\r\n            \"connection_mode\": \"0\",\r\n            \"enable_dhcp\": false,\r\n            \"use_dns\": \"false\",\r\n            \"ip\": \"192.168.1.25\",\r\n            \"device_port\": \"51211\",\r\n            \"gateway\": \"192.168.1.1\",\r\n            \"subnet_mask\": \"255.255.255.0\",\r\n            \"server_port\": \"51212\",\r\n            \"server_ip\": \"192.168.1.5\"\r\n        },\r\n        \"device_type_id\": {\r\n            \"id\": \"31\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/udp_put","description":"<p>This API is used to update IP settings on device which have not been added to BioStar 2.</p>\n<p>It is required to fill in the id parameter with the id of the device which the IP settings will be updated.</p>\n<p>Fill in the required value on the respective parameters and remove those which is not required.</p>\n<p>BODY Parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device which will be updated.</td>\n</tr>\n<tr>\n<td>lan:connection_mode</td>\n<td>Number</td>\n<td>N</td>\n<td>Connection mode of the device:  <br />0 = Server &gt; Device  <br />1 = Device &gt; Server  <br /></td>\n</tr>\n<tr>\n<td>lan:enable_dhcp</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle true to enable DHCP</td>\n</tr>\n<tr>\n<td>lan:use_dns</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle true to use DNS</td>\n</tr>\n<tr>\n<td>lan:ip</td>\n<td>String</td>\n<td>N</td>\n<td>IP of the device</td>\n</tr>\n<tr>\n<td>lan:device_port</td>\n<td>Number</td>\n<td>N</td>\n<td>Connection port which the device use</td>\n</tr>\n<tr>\n<td>lan:gateway</td>\n<td>String</td>\n<td>N</td>\n<td>IP gateway which the device use</td>\n</tr>\n<tr>\n<td>lan:subnet_mask</td>\n<td>String</td>\n<td>N</td>\n<td>Subnet of the device</td>\n</tr>\n<tr>\n<td>lan:server_port</td>\n<td>Number</td>\n<td>N</td>\n<td>Connection port of the server</td>\n</tr>\n<tr>\n<td>lan:server_ip</td>\n<td>S</td>\n<td>N</td>\n<td>IP of the server</td>\n</tr>\n<tr>\n<td>device_type_id:id</td>\n<td>Number</td>\n<td>N</td>\n<td>Device type ID</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","udp_put"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"a31af95d-bbc4-468b-afc3-65b6caf52a40"},{"name":"Connect Device","id":"196394e2-8aef-4f4f-b3c2-0e8ea25558b4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://127.0.0.1/api/devices/:id/connect","description":"<p>This API is used to connect a device which have been disconnected.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","connect"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which will be connected</p>\n","type":"text/plain"},"type":"any","value":"542353521","key":"id"}]}},"response":[],"_postman_id":"196394e2-8aef-4f4f-b3c2-0e8ea25558b4"},{"name":"Disconnect Device","id":"4ba49191-7d91-4177-88d8-097a98efed3b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://127.0.0.1/api/devices/:id/disconnect","description":"<p>This API is used to disconnect a device connection from BioStar 2 Server.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","disconnect"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which will be disconnected</p>\n","type":"text/plain"},"type":"any","value":"542353521","key":"id"}]}},"response":[],"_postman_id":"4ba49191-7d91-4177-88d8-097a98efed3b"},{"name":"Find Wiegand","id":"19cf90f2-2826-47c9-999b-596c3ca107ba","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://127.0.0.1/api/devices/:id/discover_wiegand","description":"<p>This API is used to find wiegand device attached to master device.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","discover_wiegand"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the master device</p>\n","type":"text/plain"},"type":"any","value":"544140034","key":"id"}]}},"response":[],"_postman_id":"19cf90f2-2826-47c9-999b-596c3ca107ba"},{"name":"Find Slave Device","id":"2c815160-acb6-43a9-b5f2-520ec772854b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://127.0.0.1/api/devices/:id/discover","description":"<p>This API is used to find slave device attached to a master device.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","discover"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the master device</p>\n","type":"text/plain"},"type":"any","value":"544140034","key":"id"}]}},"response":[],"_postman_id":"2c815160-acb6-43a9-b5f2-520ec772854b"},{"name":"Enroll Card Credential","id":"006aaa53-1c15-4107-913d-06bd8cd68985","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://127.0.0.1/api/devices/:id/scan_card","description":"<p>This API is used to enroll card credential using specified device.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","scan_card"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which will be used for enrollment</p>\n","type":"text/plain"},"type":"any","value":"543720368","key":"id"}]}},"response":[],"_postman_id":"006aaa53-1c15-4107-913d-06bd8cd68985"},{"name":"Write Card Data","id":"335c40fa-e934-484c-97d3-e807a298f0c3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"SmartCard\": {\r\n        \"user_id\": {\r\n            \"user_id\": \"2\",\r\n            \"fingerprint_templates\": [\r\n                {\r\n                    \"finger_index\": \"0\"\r\n                }\r\n            ],\r\n            \"visual_face_templates\": []\r\n        },\r\n        \"card_id\": {\r\n            \"card_id\": \"2\",\r\n            \"card_type_id\": {\r\n                \"id\": \"3\"\r\n            },\r\n            \"use_alphanumeric_user_id\": \"false\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/:id/write_card","description":"<p>This API is used to write data to a card (Smart Card, etc.).</p>\n<p>BODY Parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id:user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>ID of the user which will be written on the card.</td>\n</tr>\n<tr>\n<td>user_id:fingerprint_templates:finger_index</td>\n<td>Number</td>\n<td>N</td>\n<td>Fingerprint index template which will be written on the card.</td>\n</tr>\n<tr>\n<td>user_id:visual_face_templates</td>\n<td>Number</td>\n<td>N</td>\n<td>Visual face index template which will be written on the card.</td>\n</tr>\n<tr>\n<td>card_id:card_id</td>\n<td>Number</td>\n<td>N</td>\n<td>ID of the card</td>\n</tr>\n<tr>\n<td>card_id:card_type_id:id</td>\n<td>Number</td>\n<td>N</td>\n<td>Card Type ID  <br />1: CSN  <br />2: SECURE  <br />3: ACCESS  <br />4: WIEGAND</td>\n</tr>\n<tr>\n<td>card_id:use_alphanumeric_user_id</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle true if using alphanumeric user ID.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","write_card"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which will be used to write the card. Do set the Smart Card layout of the device before running this API.</p>\n","type":"text/plain"},"type":"any","value":"542353521","key":"id"}]}},"response":[],"_postman_id":"335c40fa-e934-484c-97d3-e807a298f0c3"},{"name":"Clear Device Alarm","id":"bd9dcf55-247a-45e9-9469-6be190717bf1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DeviceCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": 542353521\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/clear_alarm","description":"<p>This API is used to clear alarm from a device.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device which alarm will be cleared.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","clear_alarm"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"bd9dcf55-247a-45e9-9469-6be190717bf1"},{"name":"View User Statistics in a Device","id":"560295eb-aa7b-4f82-9c87-bf47118c9aaa","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/:id/discover_userdata","description":"<p>This API is used to view user statistics in a device.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","discover_userdata"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"209d2c7b-e370-49d5-a5de-4e38ffbd79e3","description":{"content":"<p>ID of the device which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"538152248","key":"id"}]}},"response":[],"_postman_id":"560295eb-aa7b-4f82-9c87-bf47118c9aaa"},{"name":"View Total User on a Device","id":"290276fd-b8a2-4a71-9de9-6ed418836f62","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/:id/users?limit=20&page=0","description":"<p>This API is used to view user data summary from a device.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","users"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of response's records by the specified value. Default value = 50</p>\n","type":"text/plain"},"key":"limit","value":"20"},{"description":{"content":"<p>Filter the response based on the specified page number. Default value = 1</p>\n","type":"text/plain"},"key":"page","value":"0"}],"variable":[{"type":"any","value":"543308153","key":"id"}]}},"response":[],"_postman_id":"290276fd-b8a2-4a71-9de9-6ed418836f62"},{"name":"Delete User from a Device","id":"27370948-994d-429a-8a43-632cd1ee1b2e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/devices/:id/users?id=*","description":"<p>This API is used to delete user data on a device.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","users"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the user which will be deleted. Use (*) for all user.</p>\n","type":"text/plain"},"key":"id","value":"*"}],"variable":[{"description":{"content":"<p>ID of the device which the user data will be deleted</p>\n","type":"text/plain"},"type":"any","value":"543720368","key":"id"}]}},"response":[],"_postman_id":"27370948-994d-429a-8a43-632cd1ee1b2e"},{"name":"Export User Data from a Device to BioStar 2","id":"bcaba0b5-71d8-48b0-ae2c-437fc0ffde03","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://127.0.0.1/api/devices/:id/users/export?id=44004","description":"<p>This API is used to export user data from a device to BioStar 2.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"UserCollection\": {\n        \"total\": \"0\",\n        \"rows\": [\n            {\n                \"user_id\": \"44004\",\n                \"updated_count\": \"2\",\n                \"disabled\": \"false\",\n                \"flag\": \"1\",\n                \"cards_count\": \"0\",\n                \"fingerprint_templates_count\": \"0\",\n                \"face_count\": \"1\",\n                \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\n                \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\n                \"security_level\": \"0\",\n                \"private_operation_modes\": \"\",\n                \"name\": \"김승제_03(인증O)\",\n                \"credentials\": {\n                    \"visualFaces\": [\n                        {\n                            \"template_ex_normalized_image\": \"\\/9j\\/4AAQSkZJRgABAQAAAQABAAD\\/2wBDAAIBAQEBAQIBAQECAgICAgQDAgICAgUEBAMEBgUGBgYFBgYGBwkIBgcJBwYGCAsICQoKCgoKBggLDAsKDAkKCgr\\/2wBDAQICAgICAgUDAwUKBwYHCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgr\\/wAARCABwAHADASIAAhEBAxEB\\/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL\\/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6\\/8QAHwEAAwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL\\/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6\\/9oADAMBAAIRAxEAPwD9dY0GOp61N5JHVhRFEwYvkVOsW48gVxmZEsTgZByPauB\\/aS\\/aQ+Fn7LPw+ufiT8WNbe1sYUP2e1to99xduP4IlOB3GWYhFyNxGRnu9f1SDw3oN3r1x\\/qrK1eeTBx8qgk\\/yr8Z\\/wBtTxb4w+M2l6p8W\\/jb4rvLg37+dY6ajiGKztBskt7WGIjCIpLK3dnDFssSaCox5tjX+Nn\\/AAWh\\/a5+PniW\\/wDC3wSXSvh34XETSC\\/ceZflACQrXD8KzcAhE74DZ5r5Inl0jxN40vx4q8cTalqgkWXV7t7hpJbqaeVk2oWOS3ylssQACp4xXP6FoHxS\\/aDvI7XwT4ZYafbySI14kW2N1Z3+UY5DYJGD0GPTNer+Av2ItZg16W91Nbq4urpIVkllgJP7sAY+X+Zrjr5lhMK7N3Z6OHyzF4jVRsiHVfCngbU7ix+FXw8u5ZbMLjVLpY1LTTl4wXHBYBQ0qhACZJBEOFLOOI8f\\/BPw8IZbPwcNLnZZGivLwzyXDFw2CkRztnYEHJUrGvPLBXK+ueJv2c\\/FHgLSLiHw8syS3kp85kJDHsM4O4Y3MfqK4PxHJ468J6Hc6JB4VZ2vYtlxcyQsZZIE2gxDkBIsLgqAN3ckVNDNcHiHa9jerk2MpRva55r8IfjH+0h+yj4mT4h\\/s\\/fFPWvDcSPiRrXU1t7G9wc7JLecNFcD22yH0x1H6tfsA\\/8ABc34S\\/tD3Gm\\/CP8AaasrTwR46ucQQalFcqdH1Sbou2Qsfsrt\\/cf5M9GHAr8ZvjP8UviLN4iuPGOreFJryeVWS1iCuLexXssapjPIwdwAPZcYryxPjz4vk1L7J4j0G1tQzAjEDAj22gEtXanTqL3Hc82rSnB++rM\\/rikUqdpXH4e2ajkRSp+UZ+lfjh\\/wSg\\/4LMeNvhXqWl\\/Av9rLWrrUfAd2Eg0XxXfOz3Ph4k4RbjcBK1qcquWBMYAIJQ4X9jba5tb61ivbK5jmgniWSCaJwySIwyrKwJDKQQQRwQQRxRy2MHoyMrjqKryqeSR3qeVyGxmoJXyCC3eoEdjFGSvKnrU3yINxGOgoTp+NcB+0t8So\\/hV8ItY8bzXXkR6dYT3UsgfBxHGSFH+87IuewYntWjAj+Mv7Q3gT4ZeHp7jWF+0qYWBRCCrjoQM8H0r8if2ktN079p\\/41Q\\/D3wjBdLpU82ZY5E8v7NFu3MuSRwPbNb37Sv7SE\\/jf4e2Gvaj4nkafUpHtobXSbZS9xIijI8x8tsQED5FPqSK5b9hHTrK98dXfiiW3k8yb9xHLNOZCI1x0Y9R3yBj3rgzKrUw+HbXU9bJ8NHEYtRkfUfwn+A3gf4c+GofC\\/hPSUt4bOHZHIkQyx756f5NaGoaDDod6ix2bF5nyWEJHA9Tj3rttADXEqR28PyO38PpWnrmi29zZxia32Sjltg4+lfGTpynq3qfoUYxhotjyfVvD2nagEeVEVsnYGXIzivOfiX4K0eeXN7YRkumwkRj\\/ADzXsuuQRxXbJBAPLiYsGUdDj09K4DxvB9vmRuFAblj0FcsounqjeEVM8J8UfBLwnqekXIutDtgzru3eXz0weDXyZ8cv2crG6F1HoEgtdpOLeJdqH6bcEV9vfES9k0u3ljjAlLAbeo7nP8q+evipcR2us4hlQCX7vOeCM\\/8A1vwrqwOLxNKpdSObF4HD1qXLJHw34O1bUPh940m8LeJrGeCNm2NJbzSOvoHwT7+9fsR\\/wRP\\/AOChWpWj6Z+xX8YvFEWoW8wl\\/wCFfa3JMN0QRQ39nSA\\/MAw3PFnG0o6DhlA\\/L79o7wnGviaz8R2Fv+9BKsY52iJOfVTxVPR\\/FXiHwl4g03XNF1WW11W1uIrqxluflntZ42DwyxyDG7a4Ddvxr7zD1vrFBT6n5xjcN9WxDgtj+nyS8DncG7\\/r9fxFQyToc815r+zn8ddN+PfwJ8J\\/F7TL1Zv7c0SCW9C8eVcqoWZCPUSiVcdgo9a7Qaqpbk\\/XmtJbHAeshkHQ18uf8Fjp5rH\\/AIJ8+NtYs9R+zTW8umRvMWIBhl1K1jlGQM\\/dY9Oykd6+oK8V\\/wCChPw1Hxc\\/Y78b+BTM8SXNhDK0sdr5xRYp45S2zK7sbM9R9RVCvZn4U\\/Dz46eDPFenWWlaxbiK2Syc6i21stbwr8tohQZjE03LnkkIzEnK5+rv2EdH1PXtJHjHVpVgWeYtaWlrFtjhj6Ki5HTuee9fmjq+i+N\\/gJ8Zr74OSiRtVGpS2jSRwsiOzuqjbkA7SxX2OOCRgn9VPDWox\\/sm\\/s+WEEuiS6vrP2dFhsbQqrzTkAfxcAAnt2rx89qXpxpdWfVcPQSlOq+h9K6JfPpqKhceaq4HTJP8qXxBrWuraNNsKqrBicKc\\/kK+Jpvi3\\/wUzvrWTxn4a+F+mQ2xn3fZpIGkZU4+UZYZ9ypJ7gVd8G\\/8FJ\\/iVpsdx4e+PnwjGm3sczeXLa7gJjg5HJII4BBHZueleMsFUUbto+kp42nKdrM+n7jVhqEkOGCmRmU54BPcVyfifT9WubsW1pas6byZT2x9a81+GX7Tug\\/Erx0+kR201lbjM8rysAAnQL\\/wInGa6DS\\/j9YTadqGoW6pINN1NopljfJ2BFJHpnLdfTPpXnyouUuVnqe0hBcxzvxc0k2enR3FrFEsQJ8yUMdzdcjGOBz1r5l+ISW0108ksREiSMIkbkqM+v6\\/jUf7Qv8AwUxh07UG0Cy8FC5eA4IE5G4454we+a8Qvv25ZfEhe41n4Z3Eal8vLDkqo+uK6qeVYhR5keXiM2wvNyXE+PlnLeaNNI8IYIuVLDg4\\/wD118+nxozTnSLlvJ8sFBHcKHjYZ6YABU+4r6OHibQPjZ4PvY\\/DMjGRIzmKbhgTx0FfKuq6NPJ4um8JazL9nnhmKliPvDtyeh9+nNfS5S5Qi6ct0fJZxaUlUWzP20\\/4ICfF\\/VPEP7JfiDwrqdz5kWheL2Wy3MSVjmtYXKnd6Orkf75r7si8TxOwPmDr0z1r81f+CImk3fgH9lfUtfltJbdfEHiWWSOGRQMrbxRw7hjgjeJBkcHHtX2jY+PnSTDyEZPFdk6q5mkfPn3EykngU1oVkASVFZScMrAEEdwR6VKwAPBprDIrbcVz8N\\/+Cnf7Pd3N\\/wAFkND0ofDvT9J0zW7vS7rTJ7G3McV3CoV5JT0XePKKkKBgjp3r6y8Vad4U0u+PivXAJV061Yw25iLnOP4VGWZj6AE10X\\/BUz4Q67N+1r8FPj+LZ5tJsnvtJvXHItp2illic+m7LDPqKb4avLK41KaC00BJpPLBkumA6H+7xmvk88qS+tJdj73h2jD6jzLqfIHxJ\\/4Kd\\/tBeEtEu5bL9mDV9O0CGXZbHxBpj2zToSQGQ53HAUM3yYUMuSc184aN\\/wAFAPCfxz1k3PjT4c3OkxXVz5crXiZiEuMgc\\/d+oNfp34zHiLWdPl8F2GvR2UF7I4Swu7SNhIdo6Ak9h1rxBv2DvDnirxQLjW7b+0p5ZCzQrZokO712hcMMZrz5V8OqduR83e\\/6Hu0sNiFV5+ZcvaxyXwb\\/AGcfFHj3OtfDvSkeymgffqLyhdygHKLg8gY614x8Ztf174UeI9T8KaxfAXN2BNMQrriYrtKKD97AH3gOa\\/SvwT4Oj+FPguz8JaTDJGmnrIAWAUAvnK49O2PevgP9unwva3Xxnt\\/EV3aLNja1x5mCpKnOOenpWTmoNXO5QU09DwTwr4r\\/AGY\\/B0F14t+K3hy68Q6jH\\/rbeFCsED8ny3ZVZgxCsfugcYznisjxr+2x+zp4u0CXTPCvwxtNK00SeUHWBgA3oTJGnOMHrX254a8CfDDxh8ICnhH4PaLcwzQA31nPpMG4vjO4krlj3yT796+dfGH7P7XlzLpmh\\/CHS9ItySzSyW4JC+ygEV1RxODaSnzX9dDzKuDxjk3Hl5fNHjnw00zwPf3KeLPBs1qod8GaEcOpPQ4PBryj9or4exT\\/ALS9jpOmWfmSatDabI0OGZ5JPLIHb0x7mvoG58DeBfC90mhaW01rfREK8kVq0Qdc5JIxtI9O9cb4v8Oadrn7V3w4aa3MiCZftIz95Y5kK89shj+VergcUvbOV9LHhZngr0FBJXv0P1G+Eei6F4I8Gab4I8KWa2+naTYRWtlAv8MaDAzjGSeST3LE9661ZXJBzXC\\/C\\/Uft0XnBsrtGPpXbI6nGDXp25nc+LkveP0dZSelMxzipKY2ck\\/rXpWRi9zwb9vm7L\\/DTTdMMKsp1qGYk\\/wsqvjH615b8IvD+jx2VvZzMsYuAPPmEeSB6jNeq\\/t5aZcXfw2sb+2YBbbVIzKfXcCoH8\\/zr5m\\/4WHdaHo8Op2t61qYIxvd5ioQAcnjnHavkc9mo41N9kff8KxTwTV+rOr+M\\/i\\/wT8ORc3lzdwypbvskklA9cKcg8HHp6V5v8FPGHxD+OXiGfxF4ciSz8LaTf8AltcsCXvZcZCKOyLlSSevAA5JHlXiK78UftBeOoLe21KKPQba7D3btvIuCMZLMy\\/OODwi4BJyx6D1XxDb\\/FnwV4Ht9E\\/Zt8e6boN9JcCaWLWtLNzFID975UZSvCrjB4xXi04Sq1rpaH2bnSo0LX1PeIfDGs6\\/ZzQ21uryWdmZJvLjIZMc72yfunHSvg39sLSF1XxO89xFbpJNMibGz8ik8nj6frX0D4n\\/AG1Pi38HPh9cS\\/FFS93PYmO\\/utIDGCdiNoIQ\\/MBk8DnFfnJ+1B+0r8Ydd8YzXHh7wFqTSuxCm+Roosbu4PLD6V2VKLm0ob9Thp1lFOUnp0sey\\/CT4ieMP2W\\/FNlpfiC+h1Lw1rEiDriW0Y5AGW+8mBX1j4pk8E+I\\/CC6rplnBIJ1ASaEjoec579a\\/LjT\\/iH8XfHdxav8Sdlv9nmRmW0uCRtX7qqD04617n8Nf2hdU8P6Y3hi11sXMZU+VBcTBWUY6Lnr9BXPWpyprVa+R0UpU6mt9C78dtH8PJcTWVswWdCwR9w5Oe\\/rXm\\/wk8P6Ne\\/EWLxPfQCW8sLGWOzYjOzdIuSPfjAqj8Svihf3PiCeS8OBISu3uM5wa1fgvPCddknRmc\\/ZwrexLqf6GvRy1NNOXU+dz2ajSlydD7M+B9wzaNu6nGDmvRonJIGOODXmfwcKQ6RH5bfw9+9ei280hYH1FfQH5\\/Ja6H6VU0uc4Ap2360jKMZA5r1Dl5Thf2gPAp8c\\/C\\/VdHgCtci2aa1V+nmopZf1GPxr89vEsE2sQaj4bj2iaW1d4EmXaGB3AcduR07YPpX6ezxC4RomPVSM18Rfto\\/s+6r8PPiHD8TPDtqx0jUHIknhwBbTuSXjbHI3csD07Cvnc+wftaKqparc+r4ZxqoVnQk7J7Hytf8AxutP2etItJdW8H3+pRx2gOpT6XYmR49pw7Kg+Y\\/gfwro\\/gj+3V+zn+0LdXkXw\\/vru7u7FRJcWS20iXNvGOMyRbdyqDjJPFadpp1rdeKFju1SXMwaPzDuLA5yCP1z3z7Vu3HwY8N\\/DDx\\/F8dfhFoVpo+r3Fkbe9vrezVPOiaQM8Mg3YdDtDAHp0BHSvFwDUoNNan286MpyvFr5nKfHe4+F\\/xJtbe81jWrvT7ayAee2lX5Jgx+XIbb1GCAMV83fG\\/40fCLVdKTw4Znup7PcUugqpgKRxhdxxg96+4viV+0X8RNV8B6v4G+IfwV8Kave3USRRS22oeUgCxbAHEkbhODn5GI4rwT9prxppN\\/oep3mk\\/BLwZ4XEvh97GVjdec8btg7o\\/LijGAAeoyc10ypS5tzOn9ZlZOh87qx+f3xC+N3wu0KdpJ7l7RC52tLwGHPIxz+ner\\/wAKV1b4qa5o9xo2kzfZLi6R7S6khZQw3ckZwcVhS\\/Cbwf4v8bP4j8RTSatNG6LG0yKkCKqhcRxg4GcdSTxzXv8A8Ob3TdGjjMNxGgtU80EpgLEo59Ng7D1NOu6dKklDWTMI0sQ6zc2kuyPN\\/wBpJLLTfi62mWOAkWyKV16Z2\\/8A6q7H9nGB7iP+1ZVJ8wqiDHXBGf1rzTVrl\\/iD48lvLcNK91eM\\/JztXd98n29PevdfhZp1tpU9tpdm52QbVAI9+a68BTtBOR89nmITvTj1Pqz4cwJbaLCXAHyDiuutrlRjHp1rkvBrbdKgU\\/8APMGugguMJjOOa9M+UP1AZt3amM5BwKbNIFXIJFVvPB+6xbnBA5r1Dld7k7EqcjvWL45s\\/CWq+FdQsvHX2NdHktWXUJdQlWOFI8H5mdsKgHYk8Fc18zft0f8ABXD9nD9jaO98IW2pR+LPGtvCzP4d0y6AjssfxXc4yIQP7i5kPoK\\/FD9oT\\/goX+1X+3742h8UfGL4mXkfhdtQceH\\/AAbpjm10+BQWxM0MZAkbI4L7mPUnmhxTi7roXTU3NWP058R+H\\/C+j\\/Ei80Hw5r0N\\/pr3L\\/2Dq9tcrKl5Bn5CsifK5C45Gc12NiZYNJXTjL8iqVBeLdubOcN7Hp0rjtL+HGlL8MdG0ayVo4tI0+CKBoSQ8IjRVVwfXIyfrT4vijceFrQ6B8QIGjkmXyxqBH7q4UjGT\\/db+dfAU61N13bTU\\/WaMZxpxU9dFc8w+OVj4jfU5G0NrVYUkKy+RfOSXADFFTHXB59K+b\\/izoPjnxiJk1G7hkgZiIs33ylQPvkkAFT0B9c19U+JrrwPPZX1zpUttLPLeO8iMRk5UfVueuB3rwPxv47+HugXdvJr8dijW37tJFhRdyRsMZPZjjrW\\/tvetbU9hKgqXNzux4Vpfwq1TSbJ9XuprdYC7iEqcIVUctx74AH8XauI+IPxBudJVvC+kXMm+aMfaSj5MhwM5\\/HtXX\\/G\\/wDaFXxg40Tw5ZDyobl5k8scuzdT7D29s15no3hm+1DUje3pMtxM2T3IzWyTT5qh4WKmqkuSht3O0+D1xpeihU1C8ggur6UJCJZQrSsBnYuT8xxzgc4r3L4cWjvrUcm8fKQSPxr5b\\/aI8K28fwjmuGlaKfTLiC6tblCQyzBwnBHIysjjj0FcR8If2wvjN8LZoZ7bX01S3AGbHWVMqEZ5CuMOn1B\\/A17eBpqvQ5o9D4vN4SoYpp9T9c\\/Dd2E0+II44Qcg1tRXAdcl+frXyR+z3\\/wUv+Cvj6C20H4hs3hHVHAVGvpN9jKfRZwBtPs4X6mvp2w1m3uYI7y2uI5YZE3pPHKGjZezKw4YH1HFayhKDszxbpn\\/2QAAAAAAAAAAAAAAAAA=\",\n                            \"index\": \"0\",\n                            \"templates\": [\n                                {\n                                    \"template_ex\": \"AAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB3hoF9hIJtgm5piFVlioaSc4aMc3qPi5dgiIV0e4mBh42MfXGId4ZxhIGGbmyXg4VpgoGEo3x9ZIJudm6bj4aTc3iSfWWMh3uFiICKcpp7lYyGhoqRfmhzi3mDlH2BcoJugG2aZGNydYlzlmxvYndgloGFfYtyd3aIY5KRbZKRi4J8f3d0kZyFgnuZgIaAiXNgYIZ0lpCGbZdxeIJeboGPfJFwgJByiXyEdIV+dI6IbZl5gYNzjn+FbIeJfX2Fc5l2dHxzboeHgYBzgIGLknuBfn1kjXRqhXeEhmuKd3tvfoF3eotxl41xf4N9coiObG+UhYWIdIeNbG6Eh41xi3WId3WQoWJvaXt5jIt0eWCSX6N1gHWXfHhleZCCgoVtiH51c46Lg3p7b5F0goF3gnx2cWxtgn2WmYNugH2idot3h3mQhHeHfX2Lgn+Kd5F0j22BgXlsfJt3d1aDhn2AcYNxfHRpgoiIeXOJZIuSc3aBc29ukLWCaG6NiINvi4CLgn50imOIjX5tdHx2YIV1gHCehHmQgXiBfIyPdY1ph3Z8kHGGd5+Cb3CClY2UfZeIc36Ad3ZYfId4fniFeX6Qcnxsi3l4a317fZV9doh5ootvY256h4hzeIOCcnOGg3Z9bn9+fnyFe4+Ff4lyg4WAZm+Id4WQgpZqdoprcnx1fnt+eWtIV09iWTV6\",\n                                    \"credential_bin_type\": \"5\"\n                                },\n                                {\n                                    \"template_ex\": \"AAADABEBywGIALIAZAcF\\/SBiVHcAAJkAAAAAAAAAAAB5h399g39vgm9shlpnioWQdISKdHiQipJhhoJ1eIiChoyLfW+GdoZ1g4GHb2+XgYVog4OCo3h5ZYRweW6bjoaTcnaOemaOhniFin6Kcpl3lIiHhYeSf2p0iHqDkn2DcoJtgG+YZ2Fxdol0lWpwX3ddmH6GfItyenaGYpCObpKRjIF9fHhzj5uGgHuXgIR\\/iXJfYYd3l46CbJVvd39fcX6Peo9xfo9yiHuCcoOAco2Hbph5gYN0jH6DboaJfHyDcph3dn5za4eFgoByfoCJjnqAf31liHVqg3iFhGyLdXtyfoF2fIxxl4xygIF9c4SQbG+Ug4OHdYeMam+Dh4tyi3WHeXSPn2RwZ3l3i4pzemORYaB1gXKXe3hjeIyBf4ZthXt0cYuIg3p6bo13goF4gHt2b29vgn2UmYJwfn2fdol3iniQg3aEfH6LgYCJdpBzkG6BgHhse5lzdVeEhHyAcYNxfHNogYeIeHGJaIqSc3eBdHBvjrKDZ2+Og4NvioGLgn50h2WFi3tsdH54YYN0gG+cg3iRgHiAfYmNdoxsh3d8kHKGeJyDcHOAkoySgZWGcn9+dXdafIZ4gHaFeH+PcXttjHR7bn19e5N6eYd6ootwYm97h4Z2dYCDcHWFhXR+cH1\\/fHuCeouDfod0g4KAZ3KId4OQg5Frd4xucHx2fnl9fAAAAAAAAAAA\",\n                                    \"credential_bin_type\": \"5\"\n                                },\n                                {\n                                    \"template_ex\": \"AAADAOcAyQGJALAAZA4J9ChYNXkAAJMAAAAAAAAAAAB3h4B+g4Bxg3BthlpniYSScoOLdHqPjpRghoR1eYSCho2Le26HeIV0goCGb22Wg4Zrg4GAont4ZIRwd2+ajYORc3qPfGWNh3qHiH+Kc5d5koqEiYiRf2hyiniGkXyDcoBvgW2XZmNydoZ0lmptYndfl36Geoxwd3eFY42RbpKRioR9e3dyj5qFg3uWf4WAiHFhYYZxlI+EcJVweIFdcoCNepFzfo9ziHuFdIZ+coyIcJp6gIF1i3+EbYWIfn2Cc5Z2dn9za4aDgYB0goKHj3yBf3tminJpg3mFhGmLdntxf4B4e4tuloxygIN8c4WObW+Th4OKc4aMaW6EiYtyjXWGdXWSoWZxa3p3i4x0emGQZKF2gHWXe3dmeI2DgYRvg391bo6Hg3t7bpB0f4F3f3l5b25sg32UmYFvgX6hdIZ3iHmRg3iGf4CIgH+LdpBzj29\\/gnlqepd3dliEiH1+cIRxfHZrg4iIeXGHaImRcXSAc3BujbODaG6OhYNwioKLg390hWSFjX1wdX13YYR2gHCch3mQgHiCfYmMdY5nhXd9kXKFd5uDcHCDk4qSfpaDcX5+eHVZfoh4fXiDdn6Qcnlri3V4bn97fZF9doh6oYtwZXN5hYh1doOEcHSEg3l8cH9+fXyBeY2DfodzgoF\\/Z3GGdYGRgpRqeIltcX10fXt7eAAAAAAAAAAA\",\n                                    \"credential_bin_type\": \"5\"\n                                },\n                                {\n                                    \"template_ex\": \"AAADAOEAfAGyANsAY+j+DStRTmQAAIcAAAAAAAAAAAB1h39+f31sgXFph1pnioSUdIaKdXiPipRihYJ2eYiEhouLfXCGeIVyg4OEcWuXhIRqhYGDonp6ZINudm6akIaRdHiOfGaMiHmGh3+IcZh7l4yFhYqRfmpzjHmDk32BcoJxgm2YY2NxdYhzlGltYnRhloCFfYxzdnaFYZCPbo+OiIN6gHdzkZmHg3qXfoWAinJhYYV0lJCDb5RwdoFecH+QeZBxfpJzh32GcYWCdY6GbZl3gIJyjH2Fa4aHfH+Cc5h1dHx2bIeGg390g3+Kj3qBf3xmjHNogneGgmuKd3txfoF2fI1zl41yfoN9coiObW6Sh4SIc4aNbG6Chotyi3aKd3eQnmVxa3x2jYh3eWKSYKB3f3OXenhmd4uCg4ZvhX52cYmJhXl6bY52gH94gHx4cm1sgX6XmoFxf32fdYp2hXiPgneGfn6MgYGKdI5yjm+BgXhse5Z3eVmFh3yAcoJwe3JogYaHeHSIZomSc3SAdHFtj7GBaG2Ng4NwiYKJgoJ0iGSHin5vd3x1X4R0gW6bhXaQgXiCfIyLd41ohnR8kHCGdZyDb3OAko6Sf5WJc3x+d3VbfoZ4gHiDeYCRdH5tinh2bYB7fJZ+dIl5o4xvZXB4h4R2d3+DcHWEgXV+cYCBfHuEe4yDf4l0hIN\\/ZnCGdYGOgpJqd4ltcnx1fnt8egAAAAAAAAAA\",\n                                    \"credential_bin_type\": \"5\"\n                                }\n                            ],\n                            \"flag\": \"1\"\n                        }\n                    ]\n                }\n            }\n        ]\n    },\n    \"DeviceResponse\": {\n        \"rows\": [\n            {\n                \"id\": \"538152248\",\n                \"code\": \"0\"\n            }\n        ],\n        \"result\": \"true\"\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https:\\/\\/support.supremainc.com\\/en\\/support\\/home\",\n        \"message\": \"Success\"\n    }\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","users","export"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the user which will be uploaded. Use plus symbol ( + ) to separate multiple user ID, ex: 1+2+3.</p>\n","type":"text/plain"},"key":"id","value":"44004"}],"variable":[{"id":"c6f7d59e-bc3d-4b0d-a32f-39f5185af30d","description":{"content":"<p>ID of the device which the user data will be uploaded to.</p>\n","type":"text/plain"},"type":"any","value":"538152248","key":"id"}]}},"response":[],"_postman_id":"bcaba0b5-71d8-48b0-ae2c-437fc0ffde03"},{"name":"View RS485 Devices","id":"0cbe5f8f-9fed-4369-b41a-427a4bc3baed","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/rs485/:dev_id","description":"<p>This API is used to list devices which connected using RS-485.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","rs485",":dev_id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the device which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"542071155","key":"dev_id"}]}},"response":[],"_postman_id":"0cbe5f8f-9fed-4369-b41a-427a4bc3baed"},{"name":"Delete All Event Logs in Device","id":"163f7b49-a85b-42c8-80e1-b28b26e05841","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/devices/clear_log?id=String&group_id=Integer&offset=Integer&limit=Integer","description":"<p>Delete all event logs stored inside one or more devices.</p>\n<p>This endpoint instructs selected devices to <strong>remove all event logs stored locally on the device</strong>.</p>\n<p>Deleted logs <strong>cannot be recovered</strong> and <strong>cannot be restored from the server</strong>.</p>\n<p>Before using this API, ensure that the device event logs have already been successfully uploaded to the server.</p>\n<p>Devices that <strong>do not store logs</strong> are automatically excluded from the deletion process:</p>\n<ul>\n<li><p>Slave devices</p>\n</li>\n<li><p>Virtual devices</p>\n</li>\n<li><p>Wiegand devices</p>\n</li>\n</ul>\n<h4 id=\"permissions\">Permissions</h4>\n<p>This endpoint requires <strong>Administrator privileges</strong>.</p>\n<h4 id=\"behavior\">Behavior</h4>\n<p><strong>Case 1: Clear logs for specific devices</strong></p>\n<p>If <strong>id</strong> contains one or more device IDs, the endpoint clears logs only for those devices.</p>\n<p>Example</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>DELETE /api/devices/clear_log?id=1001 1002 1003\nOR\nDELETE /api/devices/clear_log?id=1001+1002+1003\n\n</code></pre><hr />\n<p><strong>Case 2: Clear logs for all devices</strong></p>\n<p>If <strong>id=</strong>*, the endpoint targets all devices.</p>\n<p>Example</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>DELETE /api/devices/clear_log?id=*\n\n</code></pre><hr />\n<p><strong>Case 3: Clear logs for filtered devices</strong></p>\n<p>If <strong>id=</strong>*, optional filters may be used to restrict the target set.</p>\n<p>Example</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>DELETE /api/devices/clear_log?id=*&amp;group_id=10&amp;offset=0&amp;limit=50\n\n</code></pre><p>This means:</p>\n<ul>\n<li><p>target all devices</p>\n</li>\n<li><p>restrict to group <code>10</code></p>\n</li>\n<li><p>apply paging with <code>offset=0</code> and <code>limit=50</code></p>\n</li>\n</ul>\n<h4 id=\"notes\">Notes</h4>\n<ul>\n<li><p>This API deletes <strong>only the event logs stored in the device</strong>.</p>\n</li>\n<li><p>Event logs already stored on the <strong>server are not affected</strong>.</p>\n</li>\n<li><p>Deleted logs <strong>cannot be recovered</strong>.</p>\n</li>\n<li><p>Devices that do not store logs (Slave, Virtual, Wiegand) are automatically excluded.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices","clear_log"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Device ID(s) to clear logs from. Required.\nOne device ID: id=1001\nMultiple device ID: id=1001 1002 OR 1001+1002\nAll devices: id=*</p>\n<p>Notes:\nIn URLs, spaces must be encoded as %20\nExample encoded value:\nid=1001%201002%201003</p>\n","type":"text/plain"},"key":"id","value":"String"},{"description":{"content":"<p>Optional\nOnly meaningful when id=*</p>\n<p>Device group filter.</p>\n<p>Notes:\nIgnored unless id=*</p>\n","type":"text/plain"},"key":"group_id","value":"Integer"},{"description":{"content":"<p>Optional\nOnly meaningful when id=*</p>\n<p>Paging offset.</p>\n<p>Notes:\nIgnored unless id=*</p>\n","type":"text/plain"},"key":"offset","value":"Integer"},{"description":{"content":"<p>Optional\nOnly meaningful when id=*</p>\n<p>Paging limit.</p>\n<p>Notes:\nIgnored unless id=*</p>\n","type":"text/plain"},"key":"limit","value":"Integer"}],"variable":[]}},"response":[{"id":"1d1eca42-754d-4aa5-b3f3-f64bed83666e","name":"Delete All Event Logs in Device","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://127.0.0.1/api/devices/clear_log?id=544140034","host":["https://127.0.0.1"],"path":["api","devices","clear_log"],"query":[{"key":"id","value":"544140034","description":"Device ID(s) to clear logs from. Required.\nOne device ID: id=1001\nMultiple device ID: id=1001 1002 OR 1001+1002\nAll devices: id=*\nNotes:\nIn URLs, spaces must be encoded as %20\nExample encoded value:\nid=1001%201002%201003"},{"key":"group_id","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nDevice group filter.\n\nNotes:\nIgnored unless id=*","disabled":true},{"key":"offset","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nPaging offset.\n\nNotes:\nIgnored unless id=*","disabled":true},{"key":"limit","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nPaging limit.\n\nNotes:\nIgnored unless id=*","disabled":true}]}},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"DeviceResponse\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"544140034\",\r\n                \"code\": \"0\"\r\n            }\r\n        ],\r\n        \"result\": \"true\"\r\n    },\r\n    \"Response\": {\r\n        \"code\": \"0\",\r\n        \"link\": \"https://support.supremainc.com/en/support/home\",\r\n        \"message\": \"Success\"\r\n    }\r\n}"},{"id":"9931cf1b-66cb-4ac1-8ebf-2e5ef4547ef1","name":"Clear Logs for Multiple Devices","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://127.0.0.1/api/devices/clear_log?id=544140034 543408590","host":["https://127.0.0.1"],"path":["api","devices","clear_log"],"query":[{"key":"id","value":"544140034 543408590","description":"Device ID(s) to clear logs from. Required.\nOne device ID: id=1001\nMultiple device ID: id=1001 1002 OR 1001+1002\nAll devices: id=*\nNotes:\nIn URLs, spaces must be encoded as %20\nExample encoded value:\nid=1001%201002%201003"},{"key":"group_id","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nDevice group filter.\n\nNotes:\nIgnored unless id=*","disabled":true},{"key":"offset","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nPaging offset.\n\nNotes:\nIgnored unless id=*","disabled":true},{"key":"limit","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nPaging limit.\n\nNotes:\nIgnored unless id=*","disabled":true}]}},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"DeviceResponse\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"543408590\",\r\n                \"code\": \"0\"\r\n            },\r\n            {\r\n                \"id\": \"544140034\",\r\n                \"code\": \"0\"\r\n            }\r\n        ],\r\n        \"result\": \"true\"\r\n    },\r\n    \"Response\": {\r\n        \"code\": \"0\",\r\n        \"link\": \"https://support.supremainc.com/en/support/home\",\r\n        \"message\": \"Success\"\r\n    }\r\n}"},{"id":"844026ce-b2f3-473a-8ef3-84014da7ca6c","name":"Clear Logs for All Devices","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://127.0.0.1/api/devices/clear_log?id=*","host":["https://127.0.0.1"],"path":["api","devices","clear_log"],"query":[{"key":"id","value":"*","description":"Device ID(s) to clear logs from. Required.\nOne device ID: id=1001\nMultiple device ID: id=1001 1002 OR 1001+1002\nAll devices: id=*\nNotes:\nIn URLs, spaces must be encoded as %20\nExample encoded value:\nid=1001%201002%201003"},{"key":"group_id","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nDevice group filter.\n\nNotes:\nIgnored unless id=*","disabled":true},{"key":"offset","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nPaging offset.\n\nNotes:\nIgnored unless id=*","disabled":true},{"key":"limit","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nPaging limit.\n\nNotes:\nIgnored unless id=*","disabled":true}]}},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"DeviceResponse\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"538152248\",\r\n                \"code\": \"0\"\r\n            },\r\n            {\r\n                \"id\": \"543408590\",\r\n                \"code\": \"0\"\r\n            },\r\n            {\r\n                \"id\": \"544140034\",\r\n                \"code\": \"0\"\r\n            }\r\n        ],\r\n        \"result\": \"true\"\r\n    },\r\n    \"Response\": {\r\n        \"code\": \"0\",\r\n        \"link\": \"https://support.supremainc.com/en/support/home\",\r\n        \"message\": \"Success\"\r\n    }\r\n}"},{"id":"3f233628-6c2e-471c-9fbc-3f81afc0d792","name":"Clear Logs for All Devices Matching a Group","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://127.0.0.1/api/devices/clear_log?id=*&group_id=2","host":["https://127.0.0.1"],"path":["api","devices","clear_log"],"query":[{"key":"id","value":"*","description":"Device ID(s) to clear logs from. Required.\nOne device ID: id=1001\nMultiple device ID: id=1001 1002 OR 1001+1002\nAll devices: id=*\nNotes:\nIn URLs, spaces must be encoded as %20\nExample encoded value:\nid=1001%201002%201003"},{"key":"group_id","value":"2","description":"Optional\nOnly meaningful when id=*\n\nDevice group filter.\n\nNotes:\nIgnored unless id=*"},{"key":"offset","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nPaging offset.\n\nNotes:\nIgnored unless id=*","disabled":true},{"key":"limit","value":"Integer","description":"Optional\nOnly meaningful when id=*\n\nPaging limit.\n\nNotes:\nIgnored unless id=*","disabled":true}]}},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"DeviceResponse\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"543408590\",\r\n                \"code\": \"0\"\r\n            }\r\n        ],\r\n        \"result\": \"true\"\r\n    },\r\n    \"Response\": {\r\n        \"code\": \"0\",\r\n        \"link\": \"https://support.supremainc.com/en/support/home\",\r\n        \"message\": \"Success\"\r\n    }\r\n}"},{"id":"d6d3a99a-1c71-4997-bfae-0831bcea5941","name":"Clear Logs for Paged Filtered Results","originalRequest":{"method":"DELETE","header":[],"url":{"raw":"https://127.0.0.1/api/devices/clear_log?id=*&group_id=2&offset=0&limit=1","host":["https://127.0.0.1"],"path":["api","devices","clear_log"],"query":[{"key":"id","value":"*","description":"Device ID(s) to clear logs from. Required.\nOne device ID: id=1001\nMultiple device ID: id=1001 1002 OR 1001+1002\nAll devices: id=*\nNotes:\nIn URLs, spaces must be encoded as %20\nExample encoded value:\nid=1001%201002%201003"},{"key":"group_id","value":"2","description":"Optional\nOnly meaningful when id=*\n\nDevice group filter.\n\nNotes:\nIgnored unless id=*"},{"key":"offset","value":"0","description":"Optional\nOnly meaningful when id=*\n\nPaging offset.\n\nNotes:\nIgnored unless id=*"},{"key":"limit","value":"1","description":"Optional\nOnly meaningful when id=*\n\nPaging limit.\n\nNotes:\nIgnored unless id=*"}]}},"_postman_previewlanguage":null,"header":null,"cookie":[],"responseTime":null,"body":"{\r\n    \"DeviceResponse\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"543408590\",\r\n                \"code\": \"0\"\r\n            },\r\n            {\r\n                \"id\": \"544140034\",\r\n                \"code\": \"0\"\r\n            }\r\n        ],\r\n        \"result\": \"true\"\r\n    },\r\n    \"Response\": {\r\n        \"code\": \"0\",\r\n        \"link\": \"https://support.supremainc.com/en/support/home\",\r\n        \"message\": \"Success\"\r\n    }\r\n}"}],"_postman_id":"163f7b49-a85b-42c8-80e1-b28b26e05841"}],"id":"2bc0a8d6-536a-48e2-bb56-913b21a7b444","event":[{"listen":"prerequest","script":{"id":"6311af3c-8fa7-4fac-ac14-b460e81db9e3","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"4441836c-223b-4165-8580-014593eba874","type":"text/javascript","exec":[""]}}],"_postman_id":"2bc0a8d6-536a-48e2-bb56-913b21a7b444","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Door Groups","item":[{"name":"View All Door Groups","id":"7ad09d97-62af-404f-b2f2-32ebfb943e04","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/door_groups/search","description":"<p>This API is used to view all available door groups.</p>\n<p>It is required to put {} on the body parameter to run the API successfully.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","door_groups","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"7ad09d97-62af-404f-b2f2-32ebfb943e04"},{"name":"View All Door Groups (Sort)","id":"bdf28301-4596-4ab2-a726-006725f9fb83","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"order_by\": \"depth:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/door_groups/only_permission_item/search","description":"<p>This API is used to view all door groups while sorting the response using available fields.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>order_by</td>\n<td>String</td>\n<td>Y</td>\n<td>Sort the response records by value which inputted on this parameter</td>\n</tr>\n<tr>\n<td>:boolean</td>\n<td>String</td>\n<td>Y</td>\n<td>Value which the sorting will be based on. Available fields: id, name, depth</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","door_groups","only_permission_item","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"bdf28301-4596-4ab2-a726-006725f9fb83"},{"name":"Create Door Group","id":"192b1add-3831-4d1c-914b-8642ed688bd0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DoorGroup\": {\r\n        \"parent_id\": {\r\n            \"id\": 47\r\n        },\r\n        \"depth\": 1,\r\n        \"name\": \"AAAAA5q\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/door_groups","description":"<p>This API is used to create door groups.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>parent_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Parent ID of the group.</td>\n</tr>\n<tr>\n<td>depth</td>\n<td>Number</td>\n<td>Y</td>\n<td>Depth of the group in accordance with the parent group (parent depth+1). Value between 1 to 8.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the group. Do not put empty value on this parameter. Max 48 characters.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Known issue:<br />- Duplicate group name within one parent group<br />- depth value not within 1-8<br />- Using parent_id which doesn't exist will result in success but the created group will not be visible.<br />- Using empty value on name will success creating a door with name: undefined. This door can't be deleted. To resolve this, update the door name then it will be able to be deleted.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","door_groups"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"192b1add-3831-4d1c-914b-8642ed688bd0"},{"name":"Delete Door Group","id":"150b332d-b9d4-486c-82a7-5118df112a36","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/door_groups?id=33","description":"<p>This API is used to delete door group.</p>\n<p>Put the door's ID on the id parameters of this API to delete door.</p>\n<p>Note:<br />- Deleting parent group will also delete child group<br />- Deleting groups with door(s) will also remove door(s) under that group. This will consequently remove doors from Access Levels<br />- Can't delete groups with parent_id which doesn't exist<br />- Can't delete groups with undefined name</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","door_groups"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the door which will be deleted</p>\n","type":"text/plain"},"key":"id","value":"33"}],"variable":[]}},"response":[],"_postman_id":"150b332d-b9d4-486c-82a7-5118df112a36"},{"name":"Update Door Group","id":"313636c9-342c-4372-bf1d-a97a77f05182","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DoorGroup\": {\r\n        \"name\": \"New11\",\r\n        \"parent_id\": {\r\n            \"id\": 45\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/door_groups/:id","description":"<p>This API is used to update door group.</p>\n<p>Put the door's ID on the id parameters of this API to update door.</p>\n<p>Note:<br />- When parent_id updated, any child group will follow the parent group</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","door_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"42","key":"id"}]}},"response":[],"_postman_id":"313636c9-342c-4372-bf1d-a97a77f05182"}],"id":"1ed91b0d-ae15-401e-9fbb-e66b421071b7","event":[{"listen":"prerequest","script":{"id":"a7c59ad3-09ca-48a6-a4ce-77e3e8e602d1","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"08a73803-66f2-4fec-85cc-8a4aa58754d6","type":"text/javascript","exec":[""]}}],"_postman_id":"1ed91b0d-ae15-401e-9fbb-e66b421071b7","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Doors","item":[{"name":"View a Door Details","id":"50a13272-17cd-4953-a00b-bdca71341163","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/doors/:id","description":"<p>This API is used to view a Door details.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the door which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"","key":"id"}]}},"response":[],"_postman_id":"50a13272-17cd-4953-a00b-bdca71341163"},{"name":"View All Doors","id":"f23456b9-2e0d-4c75-ba81-3eece2985d77","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/doors?limit=0&order_by=id:true","description":"<p>This API is used to view Doors which is recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of records according with the value specified</p>\n","type":"text/plain"},"key":"limit","value":"0"},{"description":{"content":"<p>Sort the records based on the id, toggle true/false to switch asceding/descending</p>\n","type":"text/plain"},"key":"order_by","value":"id:true"}],"variable":[]}},"response":[],"_postman_id":"f23456b9-2e0d-4c75-ba81-3eece2985d77"},{"name":"View All Doors v2","id":"2934e489-e33b-4bc1-8b34-94fc03e59081","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"limit\": 25,\r\n    \"search_text\": \"\",\r\n    \"door_group_id\": \"1\",\r\n    \"order_by\": \"door_group_id.name:true\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/doors/search","description":"<p>This API is used to view door records from BioStar 2 database.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit the number of records on the response according to the value specified</td>\n</tr>\n<tr>\n<td>search_text</td>\n<td>String</td>\n<td>N</td>\n<td>Find records with the specified string</td>\n</tr>\n<tr>\n<td>door_group_id</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit the records to only those with door_group_id specified</td>\n</tr>\n<tr>\n<td>order_by</td>\n<td>String</td>\n<td>N</td>\n<td>Sort the response by stated value (id, door_group_id.name). Toggle boolean to switch ascending or descending.</td>\n</tr>\n</tbody>\n</table>\n</div><p>It is required to at least put {} on the body for the API to run correctly.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","doors","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2934e489-e33b-4bc1-8b34-94fc03e59081"},{"name":"Create a Door","event":[{"listen":"test","script":{"id":"8e450698-1867-4f61-85e8-ec47e28f8b3c","exec":["const jsonData = pm.response.json();\r","pm.collectionVariables.set(\"doorID\", jsonData.DoorCollection.rows[0].id);"],"type":"text/javascript"}}],"id":"8977d3e3-9623-44a0-b47b-aa394ff876a9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Door\": {\r\n        \"name\": \"Anywhere FS2\",\r\n        \"description\": \"Test\",\r\n        \"door_group_id\": {\r\n            \"id\": 1\r\n        },\r\n        \"open_timeout\": 15,\r\n        \"open_duration\": \"5\",\r\n        \"open_once\": \"true\",\r\n        \"unconditional_lock\": \"true\",\r\n        \"entry_device_id\": {\r\n            \"id\": 542353521\r\n        },\r\n        \"relay_output_id\": {\r\n            \"device_id\": {\r\n                \"id\": 542353521\r\n            },\r\n            \"relay_index\": 0\r\n        },\r\n        \"exit_button_input_id\": {\r\n            \"device_id\": {\r\n                \"id\": 542353521\r\n            },\r\n            \"input_index\": 0,\r\n            \"type\": \"1\"\r\n        },\r\n        \"sensor_input_id\": {\r\n            \"device_id\": {\r\n                \"id\": 542353521\r\n            },\r\n            \"input_index\": 1,\r\n            \"type\": \"1\",\r\n            \"apb_use_door_sensor\": \"1\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors","description":"<p>This API is used to create a door.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the door</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the door</td>\n</tr>\n<tr>\n<td>door_group_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the Door Group which the door will be under</td>\n</tr>\n<tr>\n<td>open_timeout</td>\n<td>Number</td>\n<td>N</td>\n<td>Configure the maximum allowed time for the door to remain open. Default: 10.</td>\n</tr>\n<tr>\n<td>open_duration</td>\n<td>Number</td>\n<td>N</td>\n<td>Set the duration for which the door will remain open after a user authentication is completed. When the authentication is successful, the relay will be activated for the set time. When this time elapses, the relay no longer sends the signal to the door. Open Time may vary depending on the type of door lock used.</td>\n</tr>\n<tr>\n<td>open_once</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Lock when door is closed: When the door sensor detects that the door is closed, the door is locked. Set this option to false if unconditional_lock is true. Set true to enable this parameter. Default: false.</td>\n</tr>\n<tr>\n<td>unconditional _lock</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Use Automatic Door: When using an automatic door as an entrance door, a relay can operate regardless of the status of a door sensor. Set this option as false if open_once is set to true.</td>\n</tr>\n<tr>\n<td>relay_output_id:device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Device ID which the relay will be used to control the door lock.</td>\n</tr>\n<tr>\n<td>relay_output_id:relay_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay index of the device which will be used.</td>\n</tr>\n<tr>\n<td>exit_button_input_id:device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Device ID which will be used as exit control.</td>\n</tr>\n<tr>\n<td>exit_button_input_id:input_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Exit index of the device which will be used.</td>\n</tr>\n<tr>\n<td>exit_button_input_id:type</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>1: Normally Closed, 0: Normally Open</td>\n</tr>\n<tr>\n<td>sensor_input_id:device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Device ID which will be used as sensor control.</td>\n</tr>\n<tr>\n<td>sensor_input_id:input_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Sensor index of the device which will be used.</td>\n</tr>\n<tr>\n<td>sensor_input_id:type</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>1: Normally Closed, 0: Normally Open</td>\n</tr>\n<tr>\n<td>sensor_input_id:apb_use_door_sensor</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Set whether to use the door sensor when using Entry Confirmed APB.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"8977d3e3-9623-44a0-b47b-aa394ff876a9"},{"name":"Update a Door","event":[{"listen":"test","script":{"id":"3d856499-7e87-4a12-bbee-15fad83c1a78","exec":["const jsonData = pm.response.json();\r","pm.collectionVariables.set(\"doorID\", jsonData.DoorCollection.rows[0].id);"],"type":"text/javascript"}}],"id":"489812dc-9bc1-438f-8a7a-b60b3796961a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Door\": {\r\n        \"name\": \"Anywhere FS2\",\r\n        \"description\": \"Test\",\r\n        \"door_group_id\": {\r\n            \"id\": 1\r\n        },\r\n        \"open_timeout\": 15,\r\n        \"open_duration\": \"5\",\r\n        \"open_once\": \"true\",\r\n        \"unconditional_lock\": \"true\",\r\n        \"entry_device_id\": {\r\n            \"id\": 542353521\r\n        },\r\n        \"relay_output_id\": {\r\n            \"device_id\": {\r\n                \"id\": 542353521\r\n            },\r\n            \"relay_index\": 0\r\n        },\r\n        \"exit_button_input_id\": {\r\n            \"device_id\": {\r\n                \"id\": 542353521\r\n            },\r\n            \"input_index\": 0,\r\n            \"type\": \"1\"\r\n        },\r\n        \"sensor_input_id\": {\r\n            \"device_id\": {\r\n                \"id\": 542353521\r\n            },\r\n            \"input_index\": 1,\r\n            \"type\": \"1\",\r\n            \"apb_use_door_sensor\": \"1\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/:id","description":"<p>This API is used to update a Door details.</p>\n<p>Leave the values to be edited, and remove everything else.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the door which will be updated</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"489812dc-9bc1-438f-8a7a-b60b3796961a"},{"name":"Delete Door(s)","id":"72a6e446-c452-41fe-98be-d55949ba109f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/doors?id=","description":"<p>This API is used to delete Door(s).</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the door which will be deleted. To delete multiple doors, separate the IDs with space.</p>\n","type":"text/plain"},"key":"id","value":""}],"variable":[]}},"response":[],"_postman_id":"72a6e446-c452-41fe-98be-d55949ba109f"},{"name":"View Door Status","id":"c1b6e377-8543-48f4-99c6-bc93a44ae248","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"monitoring_permission\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/status","description":"<p>This API is used to view various door status information such as the door status, relay status, alarm and last event.</p>\n<ul>\n<li>Fire alarm unlocked: A state where the door designated as a fire alarm zone is unlocked because a fire has broken out.</li>\n<li>Manual Lock: A state where the door is locked because the administrator has locked it manually.</li>\n<li>Manual Unlock: A state where the door is unlocked and able to enter without an authentication because the administrator has unlocked it manually.</li>\n<li>Schedule Locked: A state where the door is locked by the schedule that has been set.</li>\n<li>Schedule Unlocked: A state where the door is unlocked by the schedule that has been set.</li>\n<li>Normal: A state where a user can enter the door after an authentication.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","status"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"c1b6e377-8543-48f4-99c6-bc93a44ae248"},{"name":"Clear Door Alarm","id":"57468d69-05be-49fd-88c9-66e6c1b8fbc6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DoorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/clear_alarm","description":"<p>This API is used to clear alarms of all doors. If an alarm is<br />set in the Zone, the alarm may be continuously output even if the door alarm is released.  </p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which the alarm will be cleared</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","clear_alarm"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"57468d69-05be-49fd-88c9-66e6c1b8fbc6"},{"name":"Clear Anti PassBack: All Users","id":"8f45052b-b4de-4759-97d0-2009ed0c6552","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AntiPassBackConfig\": {\r\n        \"Door\": {\r\n            \"DoorCollection\": {\r\n                \"rows\": [\r\n                    {\r\n                        \"id\": 35\r\n                    }\r\n                ]\r\n            }\r\n        },\r\n        \"User\": [],\r\n        \"UserType\": 1\r\n    },\r\n    \"target\": \"users:\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/clear_apb_ex","description":"<p>This API is used to reset the anti-passback violation by selecting all or each user.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will be cleared</td>\n</tr>\n<tr>\n<td>User</td>\n<td>Array</td>\n<td>N</td>\n<td>List of user(s) which the APB will be cleared</td>\n</tr>\n<tr>\n<td>UserType</td>\n<td>Number</td>\n<td>Y</td>\n<td>AntiPassback config User Type.</td>\n</tr>\n<tr>\n<td>target</td>\n<td>String</td>\n<td>Y</td>\n<td>Doors target</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","clear_apb_ex"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"8f45052b-b4de-4759-97d0-2009ed0c6552"},{"name":"Clear Anti PassBack: Specific User(s)","id":"a84b9777-791e-4b65-a120-8e4c64d89b35","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AntiPassBackConfig\": {\r\n        \"Door\": {\r\n            \"DoorCollection\": {\r\n                \"rows\": [\r\n                    {\r\n                        \"id\": 35\r\n                    }\r\n                ]\r\n            }\r\n        },\r\n        \"User\": [\r\n            {\r\n                \"user_id\": \"10\"\r\n            },\r\n            {\r\n                \"user_id\": \"12\"\r\n            }\r\n        ],\r\n        \"UserType\": 2\r\n    },\r\n    \"target\": \"users:,[object Object],[object Object]\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/clear_apb_ex","description":"<p>This example shows how to clear APB for specific user(s).</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the Door which will be cleared</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>User ID of the user which will be cleared</td>\n</tr>\n<tr>\n<td>UserType</td>\n<td>Number</td>\n<td>Y</td>\n<td>AntiPassback config User Type.</td>\n</tr>\n<tr>\n<td>target</td>\n<td>String</td>\n<td>Y</td>\n<td>Doors target</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","clear_apb_ex"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"a84b9777-791e-4b65-a120-8e4c64d89b35"},{"name":"Manual Lock Door","id":"b6139a78-713e-4bd3-8176-3f9fd4c56515","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DoorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": 35\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/lock","description":"<p>This API is used to lock a door manually. If you set Manual Lock, the door will have remained inaccessible even if a user authenticates.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will be locked</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","lock"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"b6139a78-713e-4bd3-8176-3f9fd4c56515"},{"name":"Manual Unlock Door","id":"8c10d682-74e9-4d60-b458-7c27e9c77d39","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DoorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": 35\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/unlock","description":"<p>This API is used to unlock a door manually. If you set Manual Unlock, the door will have remained accessible even if a user does not authenticate.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will be unlocked</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","unlock"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"8c10d682-74e9-4d60-b458-7c27e9c77d39"},{"name":"Release Manual Lock/Unlock","id":"c3c2eb62-ccb4-4574-b8d3-e6e5b894c53d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DoorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": 35\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/release","description":"<p>This API is used to release the manual lock or manual unlock set by the administrator.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will be released from Manual Lock/Unlock</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","release"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"c3c2eb62-ccb4-4574-b8d3-e6e5b894c53d"},{"name":"Clear Timed APB","id":"704b0b2b-e23b-4f86-acc5-9336efb8ed20","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"TimedAntiPassBackConfig\": {\r\n        \"Door\": {\r\n            \"DoorCollection\": {\r\n                \"rows\": [\r\n                    {\r\n                        \"id\": 30\r\n                    }\r\n                ]\r\n            }\r\n        },\r\n        \"User\": [\r\n            {\r\n                \"user_id\": \"1\"\r\n            }\r\n        ],\r\n        \"UserType\": 2\r\n    },\r\n    \"target\": \"users:,[object Object]\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/clear_timed_apb_ex","description":"<p>This API is used to clear Timed APB access record. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>TimedAntiPassBackConfig.Door.DoorCollection.rows.id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Timed APB’s selected Door IDs.</td>\n</tr>\n<tr>\n<td>User.user_id</td>\n<td>String</td>\n<td>N</td>\n<td>List of User ID which will be cleared.</td>\n</tr>\n<tr>\n<td>UserType</td>\n<td>Number</td>\n<td>N</td>\n<td>1: All, 2: Specific</td>\n</tr>\n<tr>\n<td>target</td>\n<td>String</td>\n<td>N</td>\n<td>User target, all users or single user.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"DeviceResponse\": {\n    \"rows\": [\n      {\n        \"id\": \"50335900\",\n        \"code\": \"0\"\n      }\n    ],\n    \"result\": \"true\"\n  },\n  \"Response\": {\n    \"code\": \"0\",\n    \"link\": \"https://support.supremainc.com/en/support/home\",\n    \"message\": \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- DeviceResponse : The response from device.\n    - result : success/error.\n    - rows : affected devices with success/error code\n- Response : the response from web server, each with the following properties:\n    - code : success/error code.\n    - link : Suprema support link.\n    - message : Success/error message.\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<p>This API uses the following error codes:</p>\n<ul>\n<li><code>400 Bad Request</code>: The request was malformed or missing required parameters.</li>\n<li><code>401 Unauthorized</code>: The API key provided was invalid or missing.</li>\n<li><code>404 Not Found</code>: The requested resource was not found.</li>\n<li><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","clear_timed_apb_ex"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"704b0b2b-e23b-4f86-acc5-9336efb8ed20"},{"name":"Open Door","id":"408fd4ff-db86-431b-aa3f-eae18bba548f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"DoorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": 35\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/doors/open","description":"<p>This API is used to open a door.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will be opened.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","open"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"408fd4ff-db86-431b-aa3f-eae18bba548f"},{"name":"View Doors with RS485","id":"65227bf2-8b32-45a7-a846-b7b01a3e3e55","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/doors/rs485/:id","description":"<p>This API is used to list doors which use devices that connected to the system using RS485.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","doors","rs485",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the door which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"1","key":"id"}]}},"response":[],"_postman_id":"65227bf2-8b32-45a7-a846-b7b01a3e3e55"}],"id":"129165e2-d118-4ea5-a7b9-363675780416","event":[{"listen":"prerequest","script":{"id":"cbef58f5-e08e-4aa8-973e-d86962e06f83","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"9567e8c7-77fb-4320-9069-f84df7a131d0","type":"text/javascript","exec":[""]}}],"_postman_id":"129165e2-d118-4ea5-a7b9-363675780416","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Elevator Groups","item":[{"name":"Create Elevator Group","id":"498b8a88-fb5c-41fb-b283-231327874a97","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ElevatorGroup\": {\r\n        \"parent_id\": {\r\n            \"id\": 1\r\n        },\r\n        \"isElevatorGroups\": true,\r\n        \"depth\": 1,\r\n        \"sync_device_groups\": [],\r\n        \"sync_devices\": [],\r\n        \"inherited\": true,\r\n        \"iconCls\": \"elevatorGroupIcon\",\r\n        \"text\": \"New Elevator Group 1\",\r\n        \"name\": \"New Elevator Group 2\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevator_groups","description":"<p>This API is used to create elevator group.</p>\n<ul>\n<li>Required Values is parent_id, isElevatorGroups, depth, inherited, name</li>\n<li>Elevator groups may be created in up to 8 levels.</li>\n<li>Up to 48 characters may be entered for an elevator group name.</li>\n</ul>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>parent_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the parent of the elevator group which will be created</td>\n</tr>\n<tr>\n<td>isElevatorGroups</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Marker for elevator group</td>\n</tr>\n<tr>\n<td>depth</td>\n<td>Number</td>\n<td>Y</td>\n<td>Depth of the group in accordance with the parent group (parent depth+1). Value between 1 to 8.</td>\n</tr>\n<tr>\n<td>inherited</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Inheritance marker of the group</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the elevator group</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevator_groups"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"498b8a88-fb5c-41fb-b283-231327874a97"},{"name":"List Elevator Group","id":"7c78721b-37b2-4317-a686-ef1ebf77db39","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/elevator_groups/search","description":"<p>This API is used to list elevator groups recorded on BioStar 2 database.  </p>\n<p>It is required to at least put {} on body for the API to run correctly.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","elevator_groups","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"7c78721b-37b2-4317-a686-ef1ebf77db39"},{"name":"List Elevator Group with Criteria & Permission","id":"94bce301-fc86-4dbd-9b0c-5b4f9b3079dc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"order_by\": \"depth:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/elevator_groups/only_permission_item/search","description":"<p>This API is used to view elevator groups with criteria and permissions.</p>\n<p>BODY Parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>order_by</td>\n<td>String</td>\n<td>N</td>\n<td>Order the response results based on the specified field.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","elevator_groups","only_permission_item","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"94bce301-fc86-4dbd-9b0c-5b4f9b3079dc"},{"name":"Update Elevator Group","id":"28faf7d8-1239-4701-9796-990e47229082","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ElevatorGroup\": {\r\n        \"parent_id\": {\r\n            \"id\": 1\r\n        },\r\n        \"isElevatorGroups\": true,\r\n        \"depth\": 1,\r\n        \"sync_device_groups\": [],\r\n        \"sync_devices\": [],\r\n        \"inherited\": true,\r\n        \"iconCls\": \"elevatorGroupIcon\",\r\n        \"text\": \"New Elevator Group 1\",\r\n        \"name\": \"New Elevator Group 1\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevator_groups/:id","description":"<p>This API is used to update elevator group.</p>\n<p>Up to 48 characters may be entered for an elevator group name.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevator_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the elevator group which will be updated</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"28faf7d8-1239-4701-9796-990e47229082"},{"name":"Delete Elevator Group","id":"1d40c1da-835a-4013-97ae-a0506be4f7a4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/v2/elevator_groups/:id","description":"<p>This API is used to delete elevator group.</p>\n<p>Deleting a group deletes all elevators in the group.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","elevator_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the elevator group which will be deleted</p>\n","type":"text/plain"},"type":"any","value":"5","key":"id"}]}},"response":[],"_postman_id":"1d40c1da-835a-4013-97ae-a0506be4f7a4"}],"id":"150b28b8-8a10-4c68-a6c5-01f6aeb4518d","event":[{"listen":"prerequest","script":{"id":"de395125-146c-4259-ae71-ece733a8eec0","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"9016c884-af81-496d-b4f3-fa28866b6794","type":"text/javascript","exec":[""]}}],"_postman_id":"150b28b8-8a10-4c68-a6c5-01f6aeb4518d","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Elevators","item":[{"name":"Create Elevator","id":"b49f84a8-7eb4-414e-ab04-b25abf4b3e23","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Elevator\": {\r\n        \"name\": \"Odds\",\r\n        \"description\": \"Odds elevator\",\r\n        \"elevator_group_id\": {\r\n            \"id\": 6,\r\n            \"name\": \"New Elevator Group 2\"\r\n        },\r\n        \"reader_devices\": [\r\n            {\r\n                \"device_id\": {\r\n                    \"id\": \"544140034\",\r\n                    \"name\": \"BioEntry W2 544140034 (192.168.1.24)\"\r\n                }\r\n            }\r\n        ],\r\n        \"control_device_id\": {\r\n            \"id\": \"544140034\",\r\n            \"name\": \"BioEntry W2 544140034 (192.168.1.24)\",\r\n            \"device_type_id\": {\r\n                \"id\": \"13\",\r\n                \"name\": \"BioEntry W2\"\r\n            }\r\n        },\r\n        \"floors\": [\r\n            {\r\n                \"name\": \"Odds - 1\",\r\n                \"elevator_device_id\": {\r\n                    \"device_id\": {\r\n                        \"id\": 788930600,\r\n                        \"name\": \"OM-120 788930600\"\r\n                    },\r\n                    \"relay_index\": 0\r\n                },\r\n                \"order\": 0\r\n            },\r\n            {\r\n                \"name\": \"Odds - 2\",\r\n                \"elevator_device_id\": {\r\n                    \"device_id\": {\r\n                        \"id\": 788930600,\r\n                        \"name\": \"OM-120 788930600\"\r\n                    },\r\n                    \"relay_index\": 1\r\n                },\r\n                \"order\": 1\r\n            },\r\n            {\r\n                \"name\": \"Odds - 3\",\r\n                \"elevator_device_id\": {\r\n                    \"device_id\": {\r\n                        \"id\": 788930600,\r\n                        \"name\": \"OM-120 788930600\"\r\n                    },\r\n                    \"relay_index\": 2\r\n                },\r\n                \"order\": 2\r\n            },\r\n            {\r\n                \"name\": \"Odds - 4\",\r\n                \"elevator_device_id\": {\r\n                    \"device_id\": {\r\n                        \"id\": 788930600,\r\n                        \"name\": \"OM-120 788930600\"\r\n                    },\r\n                    \"relay_index\": 3\r\n                },\r\n                \"order\": 3\r\n            }\r\n        ],\r\n        \"module_devices\": [\r\n            {\r\n                \"device_id\": {\r\n                    \"id\": \"788930600\",\r\n                    \"name\": \"OM-120 788930600\"\r\n                }\r\n            }\r\n        ],\r\n        \"trigger_actions\": [],\r\n        \"active_timeout\": \"10\",\r\n        \"dual_authentication\": {\r\n            \"device\": 0,\r\n            \"approval_type\": \"0\",\r\n            \"timeout\": 15,\r\n            \"schedule_id\": {\r\n                \"id\": \"1\"\r\n            },\r\n            \"approval_groups\": []\r\n        },\r\n        \"tamper_device\": {\r\n            \"device_id\": {},\r\n            \"switch_type\": \"0\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevators","description":"<p>This API is used to create elevator.</p>\n<p>The minimum values is name, elevator_group_id(id, name), reader_devices(id, name), control_device_id(id, name, device_type_id), floors(name, order, elevator_device_id, relay_index). The rest can be removed.</p>\n<p>Controller - control_device_id<br />Select a device that controls the elevator access permission.<br />▪ Only a master device can be selected.<br />▪ You can select it from the list of registered devices.</p>\n<p>Reader - reader_devices<br />Select a device you intend to use for authentication.<br />▪ You can select a device among the master device, slave device, and Wiegand device.<br />▪ You can select up to 4 readers.<br />▪ OM-120 cannot be set as the reader.</p>\n<p>Module - module_devices<br />Select OM-120 to control the elevator button relay.<br />▪ Only OM-120 can be selected.</p>\n<p>Total Number of Floors - floors<br />Enter the total number of floors that you can move using the elevator.<br />▪ Up to 192 floors can be entered.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"b49f84a8-7eb4-414e-ab04-b25abf4b3e23"},{"name":"List Elevators","id":"819b369e-db61-48f4-a963-04206ab9973a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"limit\": 50,\r\n    \"search_text\": \"\",\r\n    \"elevator_group_id\": \"1\",\r\n    \"order_by\": \"elevator_group_id:false\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/elevators/search","description":"<p>This API is used to list elevators recorder on BioStar 2 database.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit the response records by the number specified on this parameter</td>\n</tr>\n<tr>\n<td>search_text</td>\n<td>String</td>\n<td>N</td>\n<td>Search records based on the value specified</td>\n</tr>\n<tr>\n<td>elevator_group_id</td>\n<td>Number</td>\n<td>N</td>\n<td>List elevators with specified group id</td>\n</tr>\n<tr>\n<td>order_by</td>\n<td>String</td>\n<td>N</td>\n<td>Sort response by specified value</td>\n</tr>\n</tbody>\n</table>\n</div><p>It is required to at least put {} for the API to run correctly.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","elevators","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"819b369e-db61-48f4-a963-04206ab9973a"},{"name":"View an Elevator Details","id":"4939a132-56df-43e6-a0ae-28f8190130e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/elevators/:id","description":"<p>This API is used to view an elevator details.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the elevator which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"32770","key":"id"}]}},"response":[],"_postman_id":"4939a132-56df-43e6-a0ae-28f8190130e2"},{"name":"Update Elevator","id":"8a07b5ed-ac68-4b54-9642-d75172122721","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Elevator\": {\r\n        \"name\": \"Odds\",\r\n        \"description\": \"Odds elevator\",\r\n        \"elevator_group_id\": {\r\n            \"id\": 6,\r\n            \"name\": \"New Elevator Group 2\"\r\n        },\r\n        \"reader_devices\": [\r\n            {\r\n                \"device_id\": {\r\n                    \"id\": \"544140034\",\r\n                    \"name\": \"BioEntry W2 544140034 (192.168.1.24)\"\r\n                }\r\n            }\r\n        ],\r\n        \"control_device_id\": {\r\n            \"id\": \"544140034\",\r\n            \"name\": \"BioEntry W2 544140034 (192.168.1.24)\",\r\n            \"device_type_id\": {\r\n                \"id\": \"13\",\r\n                \"name\": \"BioEntry W2\"\r\n            }\r\n        },\r\n        \"floors\": [\r\n            {\r\n                \"name\": \"Odds - 1\",\r\n                \"elevator_device_id\": {\r\n                    \"device_id\": {\r\n                        \"id\": 788930600,\r\n                        \"name\": \"OM-120 788930600\"\r\n                    },\r\n                    \"relay_index\": 0\r\n                },\r\n                \"order\": 0\r\n            },\r\n            {\r\n                \"name\": \"Odds - 2\",\r\n                \"elevator_device_id\": {\r\n                    \"device_id\": {\r\n                        \"id\": 788930600,\r\n                        \"name\": \"OM-120 788930600\"\r\n                    },\r\n                    \"relay_index\": 1\r\n                },\r\n                \"order\": 1\r\n            },\r\n            {\r\n                \"name\": \"Odds - 3\",\r\n                \"elevator_device_id\": {\r\n                    \"device_id\": {\r\n                        \"id\": 788930600,\r\n                        \"name\": \"OM-120 788930600\"\r\n                    },\r\n                    \"relay_index\": 2\r\n                },\r\n                \"order\": 2\r\n            },\r\n            {\r\n                \"name\": \"Odds - 4\",\r\n                \"elevator_device_id\": {\r\n                    \"device_id\": {\r\n                        \"id\": 788930600,\r\n                        \"name\": \"OM-120 788930600\"\r\n                    },\r\n                    \"relay_index\": 3\r\n                },\r\n                \"order\": 3\r\n            }\r\n        ],\r\n        \"module_devices\": [\r\n            {\r\n                \"device_id\": {\r\n                    \"id\": \"788930600\",\r\n                    \"name\": \"OM-120 788930600\"\r\n                }\r\n            }\r\n        ],\r\n        \"trigger_actions\": [],\r\n        \"active_timeout\": \"10\",\r\n        \"dual_authentication\": {\r\n            \"device\": 0,\r\n            \"approval_type\": \"0\",\r\n            \"timeout\": 15,\r\n            \"schedule_id\": {\r\n                \"id\": \"1\"\r\n            },\r\n            \"approval_groups\": []\r\n        },\r\n        \"tamper_device\": {\r\n            \"device_id\": {},\r\n            \"switch_type\": \"0\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevators/:id","description":"<p>This API is used to update an elevator configuration.</p>\n<p>Leave values which will be edited and remove everything else.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the elevator which will be updated</p>\n","type":"text/plain"},"type":"any","value":"32771","key":"id"}]}},"response":[],"_postman_id":"8a07b5ed-ac68-4b54-9642-d75172122721"},{"name":"Delete Elevator","id":"346e2078-3ac5-4e69-a126-ce2f1e3a325f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/elevators?id","description":"<p>This API is used to delete elevator.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the elevator which will be deleted</p>\n","type":"text/plain"},"key":"id","value":null}],"variable":[]}},"response":[],"_postman_id":"346e2078-3ac5-4e69-a126-ce2f1e3a325f"},{"name":"View Elevator(s) Status","id":"06e542be-1441-44dd-b6d2-ce2fe6460cb3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ElevatorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"32770\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevators/status","description":"<p>This API is used to view elevator status.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the elevator which the status will be viewed</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators","status"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"06e542be-1441-44dd-b6d2-ce2fe6460cb3"},{"name":"Manual Lock Elevator","id":"9c8a11ae-ac16-4fb4-891c-4b9199777fc1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ElevatorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"32770\",\r\n                \"floors\": [\r\n                    {\r\n                        \"order\": \"3\"\r\n                    }\r\n                ]\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevators/lock","description":"<p>This API is used to lock elevator access to single/multiple floor manually. If you set Manual Lock, the floor will have remained inaccessible even if a user authenticates.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>rows:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the elevator which the floor will be locked</td>\n</tr>\n<tr>\n<td>floors:order</td>\n<td>Number</td>\n<td>Y</td>\n<td>Index of the floor which will be updated.</td>\n</tr>\n</tbody>\n</table>\n</div><p>floors:order correlates with <code>order</code> on GET /api/elevators/:id or with <code>floor_id:index</code> on POST /api/elevators/status</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators","lock"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"9c8a11ae-ac16-4fb4-891c-4b9199777fc1"},{"name":"Manual Unlock Elevator","id":"2e09fd1d-62bc-4230-b84c-72a44f7685e9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ElevatorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"32770\",\r\n                \"floors\": [\r\n                    {\r\n                        \"order\": \"3\"\r\n                    }\r\n                ]\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevators/unlock","description":"<p>This API is used to unlock a door manually. If you set Manual Unlock, the door will have remained accessible even if a user does not authenticate.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>rows:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the elevator which the floor will be unlocked</td>\n</tr>\n<tr>\n<td>floors:order</td>\n<td>Number</td>\n<td>Y</td>\n<td>Index of the floor which will be updated.</td>\n</tr>\n</tbody>\n</table>\n</div><p>floors:order correlates with <code>order</code> on GET /api/elevators/:id or with <code>floor_id:index</code> on POST /api/elevators/status</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators","unlock"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2e09fd1d-62bc-4230-b84c-72a44f7685e9"},{"name":"Release Elevator Manual Lock/Unlock","id":"2b98ef90-f59d-4a2b-95bc-8cb2d5165029","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ElevatorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"32770\",\r\n                \"floors\": [\r\n                    {\r\n                        \"order\": \"3\"\r\n                    }\r\n                ]\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevators/release","description":"<p>This API is used to release the manual lock or manual unlock set by the administrator. When running this API, it will also reset the status caused by POST /api/elevators/open</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>rows:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the elevator which the floor will be released from Manual Lock/Unlock</td>\n</tr>\n<tr>\n<td>floors:order</td>\n<td>Number</td>\n<td>Y</td>\n<td>Index of the floor which will be updated.</td>\n</tr>\n</tbody>\n</table>\n</div><p>floors:order correlates with <code>order</code> on GET /api/elevators/:id or with <code>floor_id:index</code> on POST /api/elevators/status</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators","release"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2b98ef90-f59d-4a2b-95bc-8cb2d5165029"},{"name":"Open Elevator Floor(s)","id":"02743d34-820a-4a1a-9004-047c36551752","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ElevatorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"32770\",\r\n                \"floors\": [\r\n                    {\r\n                        \"order\": \"3\"\r\n                    }\r\n                ]\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevators/open","description":"<p>This API is used to open a floor.<br />Will only works if the floor status is clear/default (not manually locked/unlocked or there's active alarm)</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>rows:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the elevator which the floor will be released from Manual Lock/Unlock</td>\n</tr>\n<tr>\n<td>floors:order</td>\n<td>Number</td>\n<td>Y</td>\n<td>Index of the floor which will be updated.</td>\n</tr>\n</tbody>\n</table>\n</div><p>floors:order correlates with <code>order</code> on GET /api/elevators/:id or with <code>floor_id:index</code> on POST /api/elevators/status</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators","open"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"02743d34-820a-4a1a-9004-047c36551752"},{"name":"Clear Elevator Alarm","id":"befe287e-ede5-43a6-8bf9-5192a001f0e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ElevatorCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"32770\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/elevators/clear_alarm","description":"<p>This API is used to clear alarms of all doors. If an alarm is<br />set in the Zone, the alarm may be continuously output even if the elevator alarm is released.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the elevator which the alarm will be cleared</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","elevators","clear_alarm"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"befe287e-ede5-43a6-8bf9-5192a001f0e2"}],"id":"e3c32249-0777-4ab9-b9f1-3ba56c3f168e","event":[{"listen":"prerequest","script":{"id":"92b36374-d941-4e01-84ae-2aebd978685c","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"9bb8539b-7883-43c9-b05d-d9af96587b17","type":"text/javascript","exec":[""]}}],"_postman_id":"e3c32249-0777-4ab9-b9f1-3ba56c3f168e","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Firmware","item":[{"name":"Update Firmware","id":"ae65a7f8-7f7c-4fa6-97f3-9659180a7025","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"FirmwareFile\": {\r\n        \"filename\":\"bs3-all_v1.1.1_20230621_sign.bin\",\r\n        \"device_type\":\"35\"\r\n    },\r\n    \"DeviceCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\":\"538201713\",\r\n                \"device_type_id\": {\r\n                    \"id\":\"35\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/firmwares/update","description":"<p>This API is used to update a device's firmware.</p>\n<p>Firmware file need to be placed on <code>[BioStar 2 Install Path]\\firmware</code> folder.</p>\n<p>BODY Parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>filename</td>\n<td>String</td>\n<td>Y</td>\n<td>Complete file name (include extension) of the firmware file which will be used to update</td>\n</tr>\n<tr>\n<td>device_type</td>\n<td>String</td>\n<td>Y</td>\n<td>Type of the device which the firmware file intended to</td>\n</tr>\n<tr>\n<td>id</td>\n<td>String</td>\n<td>Y</td>\n<td>ID of the device which will be updated</td>\n</tr>\n<tr>\n<td>device_type_id</td>\n<td>String</td>\n<td>Y</td>\n<td>Type of the device which will be updated</td>\n</tr>\n</tbody>\n</table>\n</div><p>Use <code>/api/device_types</code> to find device_type and device_type_id, find the device's name and get the id for the parameters value.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","firmwares","update"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"ae65a7f8-7f7c-4fa6-97f3-9659180a7025"},{"name":"View Firmwares Information","id":"95e1fb58-2485-4c49-8342-9af6485e223c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/firmwares","description":"<p>This API is used to view firmwares information which is placed on folder <code>[BioStar 2 Install Path]\\firmware</code>.</p>\n<h4 id=\"response-information-table\">Response Information Table</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Device Type</strong></th>\n<th><strong>Value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>BS2_DEVICE_TYPE_UNKNOWN</td>\n<td>0</td>\n</tr>\n<tr>\n<td>BIOENTRY_PLUS</td>\n<td>1</td>\n</tr>\n<tr>\n<td>BIOENTRY_W</td>\n<td>2</td>\n</tr>\n<tr>\n<td>BIOLITE_NET</td>\n<td>3</td>\n</tr>\n<tr>\n<td>XPASS</td>\n<td>4</td>\n</tr>\n<tr>\n<td>XPASS_S2</td>\n<td>5</td>\n</tr>\n<tr>\n<td>SECURE_IO_2</td>\n<td>6</td>\n</tr>\n<tr>\n<td>DOOR_MODULE_20</td>\n<td>7</td>\n</tr>\n<tr>\n<td>BIOSTATION_2</td>\n<td>8</td>\n</tr>\n<tr>\n<td>BIOSTATION_A2</td>\n<td>9</td>\n</tr>\n<tr>\n<td>FACESTATION_2</td>\n<td>10</td>\n</tr>\n<tr>\n<td>IO_DEVICE</td>\n<td>11</td>\n</tr>\n<tr>\n<td>BIOSTATION_L2</td>\n<td>12</td>\n</tr>\n<tr>\n<td>BIOENTRY_W2</td>\n<td>13</td>\n</tr>\n<tr>\n<td>CORESTATION_40</td>\n<td>14</td>\n</tr>\n<tr>\n<td>OUTPUT_MODULE</td>\n<td>15</td>\n</tr>\n<tr>\n<td>INPUT_MODULE</td>\n<td>16</td>\n</tr>\n<tr>\n<td>BIOENTRY_P2</td>\n<td>17</td>\n</tr>\n<tr>\n<td>BIOLITE_N2</td>\n<td>18</td>\n</tr>\n<tr>\n<td>XPASS2</td>\n<td>19</td>\n</tr>\n<tr>\n<td>NOT USED</td>\n<td>20</td>\n</tr>\n<tr>\n<td>BIOENTRY_R2</td>\n<td>21</td>\n</tr>\n<tr>\n<td>XPASS_D2</td>\n<td>22</td>\n</tr>\n<tr>\n<td>DOOR_MODULE_21</td>\n<td>23</td>\n</tr>\n<tr>\n<td>XPASS_D2_KEYPAD</td>\n<td>24</td>\n</tr>\n<tr>\n<td>FACELITE</td>\n<td>25</td>\n</tr>\n<tr>\n<td>XPASS2_KEYPAD</td>\n<td>26</td>\n</tr>\n<tr>\n<td>XPASS_D2_REV</td>\n<td>27</td>\n</tr>\n<tr>\n<td>XPASS_D2_KEYPAD_REV</td>\n<td>28</td>\n</tr>\n<tr>\n<td>FACESTATION_F2_FP</td>\n<td>29</td>\n</tr>\n<tr>\n<td>FACESTATION_F2</td>\n<td>30</td>\n</tr>\n<tr>\n<td>XSTATION_2_QR</td>\n<td>31</td>\n</tr>\n<tr>\n<td>XSTATION_2</td>\n<td>32</td>\n</tr>\n<tr>\n<td>IM_120</td>\n<td>33</td>\n</tr>\n<tr>\n<td>XSTATION_2_FP</td>\n<td>34</td>\n</tr>\n<tr>\n<td>BIOSTATION_3</td>\n<td>35</td>\n</tr>\n<tr>\n<td>3RD_OSDP_DEVICE</td>\n<td>36</td>\n</tr>\n<tr>\n<td>3RD_OSDP_IO_DEVICE</td>\n<td>37</td>\n</tr>\n<tr>\n<td>BIOSTATION_2A</td>\n<td>38</td>\n</tr>\n<tr>\n<td>UZ_OSDP_MODULE</td>\n<td>39</td>\n</tr>\n<tr>\n<td>UZ_OSDP_DOOR_HANDLE</td>\n<td>40</td>\n</tr>\n<tr>\n<td>UZ_OSDP_DOOR_KNOB</td>\n<td>41</td>\n</tr>\n<tr>\n<td>BIOENTRY_W3</td>\n<td>42</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>Card Model</strong></th>\n<th><strong>Value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>OMPW</td>\n<td>0</td>\n</tr>\n<tr>\n<td>OIPW</td>\n<td>1</td>\n</tr>\n<tr>\n<td>OEPW</td>\n<td>2</td>\n</tr>\n<tr>\n<td>OHPW</td>\n<td>3</td>\n</tr>\n<tr>\n<td>ODPW</td>\n<td>4</td>\n</tr>\n<tr>\n<td>OAPW</td>\n<td>5</td>\n</tr>\n<tr>\n<td>ODSPW</td>\n<td>6</td>\n</tr>\n<tr>\n<td>PMPW</td>\n<td>20</td>\n</tr>\n<tr>\n<td>PIPW</td>\n<td>21</td>\n</tr>\n<tr>\n<td>PEPW</td>\n<td>22</td>\n</tr>\n<tr>\n<td>PHPW</td>\n<td>23</td>\n</tr>\n<tr>\n<td>PDPW</td>\n<td>24</td>\n</tr>\n<tr>\n<td>PAPW</td>\n<td>25</td>\n</tr>\n<tr>\n<td>PDSPW</td>\n<td>26</td>\n</tr>\n<tr>\n<td>ALL</td>\n<td>30</td>\n</tr>\n</tbody>\n</table>\n</div><h5 id=\"model-code\">Model Code</h5>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Code</strong></th>\n<th><strong>Position</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>O</td>\n<td>Front</td>\n<td>Optical FP Sensor</td>\n</tr>\n<tr>\n<td>P</td>\n<td>Front</td>\n<td>PIV Certified Optical FP Sensor</td>\n</tr>\n<tr>\n<td>A</td>\n<td>Middle</td>\n<td>All Cards</td>\n</tr>\n<tr>\n<td>M</td>\n<td>Middle</td>\n<td>Mifare &amp; DESFire</td>\n</tr>\n<tr>\n<td>I</td>\n<td>Middle</td>\n<td>iClass</td>\n</tr>\n<tr>\n<td>E</td>\n<td>Middle</td>\n<td>EM</td>\n</tr>\n<tr>\n<td>H</td>\n<td>Middle</td>\n<td>HID</td>\n</tr>\n<tr>\n<td>D</td>\n<td>Middle</td>\n<td>Dual Frequency (Mifare/DESFire [13.56 MHz], EM [125 kHz])</td>\n</tr>\n<tr>\n<td>DS</td>\n<td>Middle</td>\n<td>Dual Frequency with SAM Card Slot</td>\n</tr>\n<tr>\n<td>P</td>\n<td>End</td>\n<td>PoE</td>\n</tr>\n<tr>\n<td>W</td>\n<td>End</td>\n<td>WiFi</td>\n</tr>\n</tbody>\n</table>\n</div><h5 id=\"note\">Note:</h5>\n<ul>\n<li>PoE and WiFi may differ by device. Please check the devices specification from Suprema website (<a href=\"https://www.supremainc.com\">https://www.supremainc.com)</a></li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","firmwares"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"95e1fb58-2485-4c49-8342-9af6485e223c"}],"id":"f9308852-a196-44b1-8812-239819a1cd6b","_postman_id":"f9308852-a196-44b1-8812-239819a1cd6b","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Floor Levels","item":[{"name":"View Floor Levels","id":"d3c13d69-b64e-4113-8cfe-a8aedadeafdf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/floor_levels?limit&offset&order_by=id:false","description":"<p>This API is used to view floor levels recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","floor_levels"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":null},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":null},{"description":{"content":"<p>Order the response result either ascending or descending</p>\n","type":"text/plain"},"key":"order_by","value":"id:false"}],"variable":[]}},"response":[],"_postman_id":"d3c13d69-b64e-4113-8cfe-a8aedadeafdf"},{"name":"View a Floor Level Detail","id":"42c7adb5-8156-4080-b2cc-cba4dc9d58d7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/floor_levels/:id","description":"<p>This API is used to view the details of a floor level.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","floor_levels",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the floor level which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"32769","key":"id"}]}},"response":[],"_postman_id":"42c7adb5-8156-4080-b2cc-cba4dc9d58d7"},{"name":"Create Floor Levels","id":"ba415537-ff3a-43bd-b805-94bcaa46e14b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"FloorLevel\": {\r\n        \"name\": \"aaaax\",\r\n        \"description\": \"aaaa\",\r\n        \"floor_level_items\": [\r\n            {\r\n                \"elevator_id\": {\r\n                    \"id\": 32769,\r\n                    \"floors\": [\r\n                        {\r\n                            \"id\": 5,\r\n                            \"elevator_device_id\": {\r\n                                \"device_id\": {\r\n                                    \"id\": 100000115\r\n                                },\r\n                                \"relay_index\": 4\r\n                            },\r\n                            \"index\": 4\r\n                        }\r\n                    ]\r\n                },\r\n                \"schedule_id\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            },\r\n            {\r\n                \"elevator_id\": {\r\n                    \"id\": 32769,\r\n                    \"floors\": [\r\n                        {\r\n                            \"id\": 4,\r\n                            \"elevator_device_id\": {\r\n                                \"device_id\": {\r\n                                    \"id\": 100000115\r\n                                },\r\n                                \"relay_index\": 3\r\n                            },\r\n                            \"index\": 3\r\n                        }\r\n                    ]\r\n                },\r\n                \"schedule_id\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/floor_levels","description":"<p>This API is used to create floor level.<br />You can configure the floor access privileges by using elevators and floor information.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the floor level</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the floor level</td>\n</tr>\n<tr>\n<td>elevator_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the elevator</td>\n</tr>\n<tr>\n<td>floors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the floor in correspondence with the elevator</td>\n</tr>\n<tr>\n<td>device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Id of the device used by the elevator</td>\n</tr>\n<tr>\n<td>elevator_device_id:relay_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay index used on the device according to the floors:id</td>\n</tr>\n<tr>\n<td>floors:index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Index of the floor</td>\n</tr>\n<tr>\n<td>schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the schedule used</td>\n</tr>\n</tbody>\n</table>\n</div><p>Known errors:</p>\n<ul>\n<li>Duplicate name</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","floor_levels"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"ba415537-ff3a-43bd-b805-94bcaa46e14b"},{"name":"Update Floor Levels","id":"bf15cc8a-88e3-442b-9e82-4a9bb6ef688d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"FloorLevel\": {\r\n        \"name\": \"aaaaxxxx\",\r\n        \"description\": \"aaaa\",\r\n        \"floor_level_items\": [\r\n            {\r\n                \"elevator_id\": {\r\n                    \"id\": 32769,\r\n                    \"floors\": [\r\n                        {\r\n                            \"id\": 5,\r\n                            \"elevator_device_id\": {\r\n                                \"device_id\": {\r\n                                    \"id\": 100000115\r\n                                },\r\n                                \"relay_index\": 4\r\n                            },\r\n                            \"index\": 4\r\n                        }\r\n                    ]\r\n                },\r\n                \"schedule_id\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            },\r\n            {\r\n                \"elevator_id\": {\r\n                    \"id\": 32769,\r\n                    \"floors\": [\r\n                        {\r\n                            \"id\": 4,\r\n                            \"elevator_device_id\": {\r\n                                \"device_id\": {\r\n                                    \"id\": 100000115\r\n                                },\r\n                                \"relay_index\": 3\r\n                            },\r\n                            \"index\": 3\r\n                        }\r\n                    ]\r\n                },\r\n                \"schedule_id\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/floor_levels/:id","description":"<p>This API is used to update floor level.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the floor level</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the floor level</td>\n</tr>\n<tr>\n<td>elevator_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the elevator</td>\n</tr>\n<tr>\n<td>floors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the floor in correspondence with the elevator</td>\n</tr>\n<tr>\n<td>device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Id of the device used by the elevator</td>\n</tr>\n<tr>\n<td>elevator_device_id:relay_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay index used on the device according to the floors:id</td>\n</tr>\n<tr>\n<td>floors:index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Index of the floor</td>\n</tr>\n<tr>\n<td>schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the schedule used</td>\n</tr>\n</tbody>\n</table>\n</div><p>Known errors:</p>\n<ul>\n<li>Duplicate name</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","floor_levels",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the floor level which will be updated</p>\n","type":"text/plain"},"type":"any","value":"32776","key":"id"}]}},"response":[],"_postman_id":"bf15cc8a-88e3-442b-9e82-4a9bb6ef688d"},{"name":"Delete Floor Level","id":"a637d931-8991-49b5-8821-cef560dffce8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/floor_levels/:id","description":"<p>This API is used to delete floor levels.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","floor_levels",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the floor level which will be deleted</p>\n","type":"text/plain"},"type":"any","value":"32775","key":"id"}]}},"response":[],"_postman_id":"a637d931-8991-49b5-8821-cef560dffce8"}],"id":"d6fcd602-e372-4842-b0f7-491922991a91","event":[{"listen":"prerequest","script":{"id":"e97f4f73-b9b9-4797-bbd5-fefa47e4dfcd","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"6f68b2d9-15ed-4d7a-ba4f-0b3d85a73fe2","type":"text/javascript","exec":[""]}}],"_postman_id":"d6fcd602-e372-4842-b0f7-491922991a91","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Schedules","item":[{"name":"View Schedules","id":"cc3f3fdd-b696-4c89-8812-2902e71bbf13","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/schedules?limit&offset","description":"<p>This API is used to view all schedules recorded on BioStar 2 Database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","schedules"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":null},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":null}],"variable":[]}},"response":[],"_postman_id":"cc3f3fdd-b696-4c89-8812-2902e71bbf13"},{"name":"View a Schedule Detail","id":"efd448bf-063c-41b5-a7f8-bc672abc0f4f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/schedules/:id","description":"<p>This API is used to view a schedule detail recorded on BioStar 2 Database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","schedules",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the schedule which will be viewed</p>\n","type":"text/plain"},"type":"any","value":"2","key":"id"}]}},"response":[],"_postman_id":"efd448bf-063c-41b5-a7f8-bc672abc0f4f"},{"name":"Delete Schedules","id":"c5a37842-48b4-4656-b4f9-a70ab33b3cb1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/schedules/:id","description":"<p>This API is used to delete schedules recorded on BioStar 2 Database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","schedules",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the schedule which will be deleted</p>\n","type":"text/plain"},"type":"any","value":"5","key":"id"}]}},"response":[],"_postman_id":"c5a37842-48b4-4656-b4f9-a70ab33b3cb1"},{"name":"Create Schedule (Weekly)","id":"f5b6abf6-f5ce-4b0a-8e43-a6fd2ed8a627","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Schedule\": {\r\n        \"name\": \"Weekly6\",\r\n        \"description\": \"Desc\",\r\n        \"daily_schedules\": [\r\n            {\r\n                \"day_index\": 0,\r\n                \"time_segments\": []\r\n            },\r\n            {\r\n                \"day_index\": 1,\r\n                \"time_segments\": [\r\n                    {\r\n                        \"start_time\": 0,\r\n                        \"end_time\": 360\r\n                    },\r\n                    {\r\n                        \"start_time\": 1080,\r\n                        \"end_time\": 1440\r\n                    }\r\n                ]\r\n            },\r\n            {\r\n                \"day_index\": 2,\r\n                \"time_segments\": []\r\n            },\r\n            {\r\n                \"day_index\": 3,\r\n                \"time_segments\": [\r\n                    {\r\n                        \"start_time\": 0,\r\n                        \"end_time\": 1440\r\n                    }\r\n                ]\r\n            },\r\n            {\r\n                \"day_index\": 4,\r\n                \"time_segments\": []\r\n            },\r\n            {\r\n                \"day_index\": 5,\r\n                \"time_segments\": []\r\n            },\r\n            {\r\n                \"day_index\": 6,\r\n                \"time_segments\": [\r\n                    {\r\n                        \"start_time\": 900,\r\n                        \"end_time\": 960\r\n                    },\r\n                    {\r\n                        \"start_time\": 540,\r\n                        \"end_time\": 600\r\n                    },\r\n                    {\r\n                        \"start_time\": 360,\r\n                        \"end_time\": 420\r\n                    },\r\n                    {\r\n                        \"start_time\": 720,\r\n                        \"end_time\": 780\r\n                    },\r\n                    {\r\n                        \"start_time\": 1080,\r\n                        \"end_time\": 1140\r\n                    }\r\n                ]\r\n            }\r\n        ],\r\n        \"holiday_schedules\": [\r\n            {\r\n                \"holiday_group_id\": {\r\n                    \"id\": \"1\"\r\n                },\r\n                \"time_segments\": [\r\n                    {\r\n                        \"start_time\": 780,\r\n                        \"end_time\": 840\r\n                    }\r\n                ]\r\n            }\r\n        ],\r\n        \"days_of_iteration\": 7,\r\n        \"start_date\": \"2022-04-27T16:18:06.19Z\",\r\n        \"use_daily_iteration\": false\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/schedules","description":"<p>This API example shows how to create weekly schedule.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the schedule</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the schedule</td>\n</tr>\n<tr>\n<td>day_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Day of the Week(0-sun, 1-mon, 2-tue, 3-wed, 4-thu, 5-fri, 6-sat)</td>\n</tr>\n<tr>\n<td>time_segments:start_time</td>\n<td>Number</td>\n<td>Y</td>\n<td>Start time of the day (in minutes)</td>\n</tr>\n<tr>\n<td>time_segments:end_time</td>\n<td>Number</td>\n<td>Y</td>\n<td>End time of the day (in minutes)</td>\n</tr>\n<tr>\n<td>holiday_group_id:id</td>\n<td>Number</td>\n<td>N</td>\n<td>ID of the holiday group</td>\n</tr>\n<tr>\n<td>days_of_iteration</td>\n<td>Number</td>\n<td>N</td>\n<td>Repeat schedule every n days</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Date</td>\n<td>N</td>\n<td>Enable schedule from specified date</td>\n</tr>\n<tr>\n<td>use_daily_iteration</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Specify schedule weekly or daily. False for weekly</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","schedules"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"f5b6abf6-f5ce-4b0a-8e43-a6fd2ed8a627"},{"name":"Create Schedule (Daily)","id":"ef1be260-e2a2-49cf-9f69-5e9327241b6b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Schedule\": {\r\n        \"name\": \"Daily\",\r\n        \"description\": \"DDD\",\r\n        \"daily_schedules\": [\r\n            {\r\n                \"day_index\": 0,\r\n                \"time_segments\": [\r\n                    {\r\n                        \"start_time\": 0,\r\n                        \"end_time\": 1380\r\n                    }\r\n                ]\r\n            },\r\n            {\r\n                \"day_index\": 1,\r\n                \"time_segments\": [\r\n                    {\r\n                        \"start_time\": 1260,\r\n                        \"end_time\": 1320\r\n                    }\r\n                ]\r\n            }\r\n        ],\r\n        \"holiday_schedules\": [],\r\n        \"days_of_iteration\": 2,\r\n        \"start_date\": \"2022-04-26T00:00:00.00Z\",\r\n        \"use_daily_iteration\": true\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/schedules","description":"<p>This API example shows how to create daily schedule.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the schedule</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the schedule</td>\n</tr>\n<tr>\n<td>day_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Day of the Week(0-sun, 1-mon, 2-tue, 3-wed, 4-thu, 5-fri, 6-sat)</td>\n</tr>\n<tr>\n<td>time_segments:start_time</td>\n<td>Number</td>\n<td>Y</td>\n<td>Start time of the day (in minutes)</td>\n</tr>\n<tr>\n<td>time_segments:end_time</td>\n<td>Number</td>\n<td>Y</td>\n<td>End time of the day (in minutes)</td>\n</tr>\n<tr>\n<td>holiday_schedules</td>\n<td>Array</td>\n<td>N</td>\n<td>Holiday schedules used.</td>\n</tr>\n<tr>\n<td>days_of_iteration</td>\n<td>Number</td>\n<td>Y</td>\n<td>Repeat schedule every n days</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Date</td>\n<td>Y</td>\n<td>Enable schedule from specified date</td>\n</tr>\n<tr>\n<td>use_daily_iteration</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Specify schedule weekly or daily. False for weekly</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","schedules"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"ef1be260-e2a2-49cf-9f69-5e9327241b6b"},{"name":"Update a Schedule","id":"9c45cadd-d92d-4b20-8d9b-e42cf9f639f0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Schedule\": {\r\n        \"name\": \"Daily\",\r\n        \"description\": \"DDD\",\r\n        \"daily_schedules\": [\r\n            {\r\n                \"day_index\": 0,\r\n                \"time_segments\": [\r\n                    {\r\n                        \"start_time\": 0,\r\n                        \"end_time\": 1380\r\n                    }\r\n                ]\r\n            },\r\n            {\r\n                \"day_index\": 1,\r\n                \"time_segments\": [\r\n                    {\r\n                        \"start_time\": 1260,\r\n                        \"end_time\": 1320\r\n                    }\r\n                ]\r\n            }\r\n        ],\r\n        \"holiday_schedules\": [],\r\n        \"days_of_iteration\": 2,\r\n        \"start_date\": \"2022-04-26T00:00:00.00Z\",\r\n        \"use_daily_iteration\": true\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/schedules/:id","description":"<p>This API is used to update a schedule.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the schedule</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the schedule</td>\n</tr>\n<tr>\n<td>day_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Day of the Week(0-sun, 1-mon, 2-tue, 3-wed, 4-thu, 5-fri, 6-sat)</td>\n</tr>\n<tr>\n<td>time_segments:start_time</td>\n<td>Number</td>\n<td>Y</td>\n<td>Start time of the day (in minutes)</td>\n</tr>\n<tr>\n<td>time_segments:end_time</td>\n<td>Number</td>\n<td>Y</td>\n<td>End time of the day (in minutes)</td>\n</tr>\n<tr>\n<td>holiday_schedules</td>\n<td>Array</td>\n<td>N</td>\n<td>Holiday schedules used.</td>\n</tr>\n<tr>\n<td>days_of_iteration</td>\n<td>Number</td>\n<td>Y</td>\n<td>Repeat schedule every n days</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Date</td>\n<td>Y</td>\n<td>Enable schedule from specified date</td>\n</tr>\n<tr>\n<td>use_daily_iteration</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Specify schedule weekly or daily. False for weekly</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","schedules",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the schedule which will be updated</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"9c45cadd-d92d-4b20-8d9b-e42cf9f639f0"}],"id":"986578d7-33b7-435a-b1e5-5bbb4b19b8a0","event":[{"listen":"prerequest","script":{"id":"371de9db-b022-4f43-a35d-f387cc7f236b","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"b8f1d813-a6fa-40d6-bf62-c6654ed7e73a","type":"text/javascript","exec":[""]}}],"_postman_id":"986578d7-33b7-435a-b1e5-5bbb4b19b8a0","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Holiday Groups","item":[{"name":"View Holiday Groups","id":"41fe6bb1-2237-4a51-a59e-9daf560390e5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/holiday_groups?limit&offset","description":"<p>This API is used to view all holiday groups recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","holiday_groups"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":null},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":null}],"variable":[]}},"response":[],"_postman_id":"41fe6bb1-2237-4a51-a59e-9daf560390e5"},{"name":"Create Holiday Group","id":"f2f519b3-73c2-404c-895f-077e959bb08c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"HolidayGroup\": {\r\n        \"name\": \"Idul Fitri 2022\",\r\n        \"description\": \"Idul Fitri for year 2022\",\r\n        \"holidays\": [\r\n            {\r\n                \"repeat_interval\": 0,\r\n                \"start_date\": \"2022-05-02T00:00:00.00Z\"\r\n            },\r\n            {\r\n                \"repeat_interval\": 0,\r\n                \"start_date\": \"2022-05-03T00:00:00.00Z\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/holiday_groups","description":"<p>This API is used to create holiday groups on BioStar 2.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the holiday group</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the holiday group</td>\n</tr>\n<tr>\n<td>repeat_interval</td>\n<td>Number</td>\n<td>Y</td>\n<td>0=no repeat, 1=repeat every year</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Datetime</td>\n<td>Y</td>\n<td>Date of the holiday group</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","holiday_groups"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"f2f519b3-73c2-404c-895f-077e959bb08c"},{"name":"Update Holiday Group","id":"6e84936a-3c0b-4d49-a9bc-761ff34f6b31","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"HolidayGroup\": {\r\n        \"name\": \"Idul Fitri 2022\",\r\n        \"description\": \"Idul Fitri for year 2022\",\r\n        \"holidays\": [\r\n            {\r\n                \"repeat_interval\": 0,\r\n                \"start_date\": \"2022-05-02T00:00:00.00Z\"\r\n            },\r\n            {\r\n                \"repeat_interval\": 0,\r\n                \"start_date\": \"2022-05-03T00:00:00.00Z\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/holiday_groups/:id","description":"<p>This API is used to update holiday groups on BioStar 2.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the holiday group</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Description of the holiday group</td>\n</tr>\n<tr>\n<td>repeat_interval</td>\n<td>Number</td>\n<td>Y</td>\n<td>0=no repeat, 1=repeat every year</td>\n</tr>\n<tr>\n<td>start_date</td>\n<td>Datetime</td>\n<td>Y</td>\n<td>Date of the holiday group</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","holiday_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the holiday group which will be updated.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"6e84936a-3c0b-4d49-a9bc-761ff34f6b31"},{"name":"Delete Holiday Group","id":"2ef1a256-f395-4e82-824d-66be7f8be5f9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/holiday_groups/:id","description":"<p>This API is used to delete holiday group.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","holiday_groups",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the holiday group which will be deleted</p>\n","type":"text/plain"},"type":"any","value":"1","key":"id"}]}},"response":[],"_postman_id":"2ef1a256-f395-4e82-824d-66be7f8be5f9"}],"id":"a8484ed4-4998-4afc-9504-1bcddb916202","event":[{"listen":"prerequest","script":{"id":"d26c19eb-dc70-4049-b9e1-f59c60c5470c","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"8fa389e4-15ad-420e-9819-0b44d043dc4f","type":"text/javascript","exec":[""]}}],"_postman_id":"a8484ed4-4998-4afc-9504-1bcddb916202","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Trigger Actions","item":[{"name":"View Trigger Actions","id":"ad6a8f0b-802b-420f-b1f6-d46a451f8ffe","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/trigger_actions?limit&offset","description":"<p>This API is used to view all Trigger &amp; Actions.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","trigger_actions"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":null},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":null}],"variable":[]}},"response":[],"_postman_id":"ad6a8f0b-802b-420f-b1f6-d46a451f8ffe"},{"name":"Create Trigger Actions (Device - Device Send Signal)","id":"7ca69073-b6c6-4028-b312-9f28c72c8e28","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"TriggerAction\": {\r\n        \"name\": \"Test\",\r\n        \"priority\": 0,\r\n        \"schedule_id\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"trigger\": {\r\n            \"source_type\": 1,\r\n            \"event_types\": [\r\n                {\r\n                    \"code\": 18432\r\n                }\r\n            ],\r\n            \"devices\": [\r\n                {\r\n                    \"id\": 543408590\r\n                },\r\n                {\r\n                    \"id\": 543308153\r\n                }\r\n            ]\r\n        },\r\n        \"action\": {\r\n            \"device_action_id\": {\r\n                \"device_id\": {\r\n                    \"id\": 543308153\r\n                },\r\n                \"relay_signal_id\": {\r\n                    \"id\": \"1\"\r\n                },\r\n                \"relay_index\": 0\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/trigger_actions","description":"<p>You can set the device or BioStar to do a specific operation when a specific event has occurred at the devices, doors and zones.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a name of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>priority</td>\n<td>Number</td>\n<td>Y</td>\n<td>Priority index of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the schedule which will be used by the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>trigger:source_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device/door/zone at which a specific event will be monitored. Multiple devices/doors/zones can be selected. The devices/doors/zones work independently even when they are disconnected from the BioStar server.  <br />1=Device, 2=Door, 3=Zone</td>\n</tr>\n<tr>\n<td>event_types:code</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the events which will trigger an action. At least one event must be selected.  <br />Event lists may be activated differently depending on the options selected in Device, Door, and Zone.</td>\n</tr>\n<tr>\n<td>devices:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device which performs the action. You can select a device or BioStar 2 to perform an action.</td>\n</tr>\n<tr>\n<td>device_action_id:device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device which will perform an action.</td>\n</tr>\n<tr>\n<td>device_action_id:relay_signal_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay of the device which will be used to perform an action.</td>\n</tr>\n<tr>\n<td>device_action_id:relay_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay index of the device.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","trigger_actions"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"7ca69073-b6c6-4028-b312-9f28c72c8e28"},{"name":"Create Trigger Actions (Door - BioStar 2 Send Email)","id":"648c271d-95e3-48fb-a233-73110d6299f5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"TriggerAction\": {\r\n        \"name\": \"Door\",\r\n        \"priority\": 0,\r\n        \"schedule_id\": {\r\n            \"id\": \"3\"\r\n        },\r\n        \"trigger\": {\r\n            \"source_type\": 2,\r\n            \"event_types\": [\r\n                {\r\n                    \"code\": 21504\r\n                }\r\n            ],\r\n            \"doors\": [\r\n                {\r\n                    \"id\": 5\r\n                },\r\n                {\r\n                    \"id\": 32\r\n                }\r\n            ]\r\n        },\r\n        \"action\": {\r\n            \"email_action_id\": {\r\n                \"receipients\": [\r\n                    \"agni@oxx.id\",\r\n                    \"you@axx.id\"\r\n                ]\r\n            },\r\n            \"smtp_id\": {\r\n                \"id\": \"1\"\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/trigger_actions","description":"<p>You can set the device or BioStar to do a specific operation when a specific event has occurred at the devices, doors and zones.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a name of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>priority</td>\n<td>Number</td>\n<td>Y</td>\n<td>Priority index of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the schedule which will be used by the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>trigger:source_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device/door/zone at which a specific event will be monitored. Multiple devices/doors/zones can be selected. The devices/doors/zones work independently even when they are disconnected from the BioStar server.  <br />1=Device, 2=Door, 3=Zone</td>\n</tr>\n<tr>\n<td>event_types:code</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the events which will trigger an action. At least one event must be selected.  <br />Event lists may be activated differently depending on the options selected in Device, Door, and Zone.</td>\n</tr>\n<tr>\n<td>doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will trigger an action.</td>\n</tr>\n<tr>\n<td>email_action_id:receipients</td>\n<td>Number</td>\n<td>Y</td>\n<td>List email recipients which BioStar 2 will send notifications to. Use comma (,) to separate each email.</td>\n</tr>\n<tr>\n<td>smtp_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the SMTP setting which will be used to send notification email.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","trigger_actions"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"648c271d-95e3-48fb-a233-73110d6299f5"},{"name":"Create Trigger Actions (Zone)","id":"e95bfb41-7903-4aa1-815a-455a1121f2f0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"TriggerAction\": {\r\n        \"name\": \"Zone\",\r\n        \"priority\": 0,\r\n        \"schedule_id\": {\r\n            \"id\": \"4\"\r\n        },\r\n        \"trigger\": {\r\n            \"source_type\": 3,\r\n            \"event_types\": [\r\n                {\r\n                    \"code\": 41472\r\n                },\r\n                {\r\n                    \"code\": 38912\r\n                }\r\n            ],\r\n            \"zones\": [\r\n                {\r\n                    \"id\": \"32794\"\r\n                },\r\n                {\r\n                    \"id\": \"32793\"\r\n                }\r\n            ]\r\n        },\r\n        \"action\": {\r\n            \"email_action_id\": {\r\n                \"receipients\": [\r\n                    \"aaa@aaa.com\"\r\n                ]\r\n            },\r\n            \"smtp_id\": {\r\n                \"id\": \"1\"\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/trigger_actions","description":"<p>You can set the device or BioStar to do a specific operation when a specific event has occurred at the devices, doors and zones.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a name of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>priority</td>\n<td>Number</td>\n<td>Y</td>\n<td>Priority index of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the schedule which will be used by the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>trigger:source_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device/door/zone at which a specific event will be monitored. Multiple devices/doors/zones can be selected. The devices/doors/zones work independently even when they are disconnected from the BioStar server.  <br />1=Device, 2=Door, 3=Zone</td>\n</tr>\n<tr>\n<td>event_types:code</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the events which will trigger an action. At least one event must be selected.  <br />Event lists may be activated differently depending on the options selected in Device, Door, and Zone.</td>\n</tr>\n<tr>\n<td>zones:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the zone which will trigger an action.</td>\n</tr>\n<tr>\n<td>email_action_id:receipients</td>\n<td>Number</td>\n<td>Y</td>\n<td>List email recipients which BioStar 2 will send notifications to. Use comma (,) to separate each email.</td>\n</tr>\n<tr>\n<td>smtp_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the SMTP setting which will be used to send notification email.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","trigger_actions"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"e95bfb41-7903-4aa1-815a-455a1121f2f0"},{"name":"Update Trigger Actions","id":"a983261c-97cf-4bb1-8342-c12d4ae70d7a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"TriggerAction\": {\r\n        \"name\": \"Door\",\r\n        \"priority\": 0,\r\n        \"schedule_id\": {\r\n            \"id\": \"3\"\r\n        },\r\n        \"trigger\": {\r\n            \"source_type\": 2,\r\n            \"event_types\": [\r\n                {\r\n                    \"code\": 21504\r\n                }\r\n            ],\r\n            \"doors\": [\r\n                {\r\n                    \"id\": 5\r\n                },\r\n                {\r\n                    \"id\": 32\r\n                }\r\n            ]\r\n        },\r\n        \"action\": {\r\n            \"email_action_id\": {\r\n                \"receipients\": [\r\n                    \"agni@oxx.id\",\r\n                    \"you@axx.id\"\r\n                ]\r\n            },\r\n            \"smtp_id\": {\r\n                \"id\": \"1\"\r\n            }\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/trigger_actions/:id","description":"<p>This API is used to update Trigger/Actions.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a name of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>priority</td>\n<td>Number</td>\n<td>Y</td>\n<td>Priority index of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the schedule which will be used by the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>trigger:source_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device/door/zone at which a specific event will be monitored. Multiple devices/doors/zones can be selected. The devices/doors/zones work independently even when they are disconnected from the BioStar server.  <br />1=Device, 2=Door, 3=Zone</td>\n</tr>\n<tr>\n<td>event_types:code</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the events which will trigger an action. At least one event must be selected.  <br />Event lists may be activated differently depending on the options selected in Device, Door, and Zone.</td>\n</tr>\n<tr>\n<td>doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will trigger an action.</td>\n</tr>\n<tr>\n<td>email_action_id:receipients</td>\n<td>Number</td>\n<td>Y</td>\n<td>List email recipients which BioStar 2 will send notifications to. Use comma (,) to separate each email.</td>\n</tr>\n<tr>\n<td>smtp_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the SMTP setting which will be used to send notification email.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","trigger_actions",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Trigger &amp; Actions which will be updated.</p>\n","type":"text/plain"},"type":"any","value":"2","key":"id"}]}},"response":[],"_postman_id":"a983261c-97cf-4bb1-8342-c12d4ae70d7a"},{"name":"Delete Trigger Actions","id":"51d721f3-d072-42d9-9320-9e4179a2eb2d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/trigger_actions/:id","description":"<p>This API is used to view all Trigger &amp; Actions.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","trigger_actions",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Trigger &amp; Action which will be deleted.</p>\n","type":"text/plain"},"type":"any","value":"2","key":"id"}]}},"response":[],"_postman_id":"51d721f3-d072-42d9-9320-9e4179a2eb2d"},{"name":"Create Multiple Trigger Actions","id":"f1ed5183-0bd9-404e-b2a3-ce32994d19f3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"TriggerAction\": {\r\n    \"name\": \"sample triggeraction\",\r\n    \"priority\": 0,\r\n    \"schedule_id\": {\r\n      \"id\": \"1\"\r\n    },\r\n    \"is_quick_action\": \"N\",\r\n    \"trigger\": {\r\n      \"source_type\": 2,\r\n      \"event_types\": [\r\n        {\r\n          \"code\": 22016\r\n        }\r\n      ],\r\n      \"devices\": [\r\n        \r\n      ],\r\n      \"doors\": [\r\n        {\r\n          \"id\": 1\r\n        }\r\n      ],\r\n      \"zones\": [\r\n        \r\n      ]\r\n    },\r\n    \"action\": {\r\n      \"device_action_id\": {\r\n        \"device_id\": {\r\n          \"id\": 50355072\r\n        },\r\n        \"relay_signal_id\": {\r\n          \"id\": \"1\"\r\n        },\r\n        \"relay_index\": 0\r\n      },\r\n      \"email_action_id\": {\r\n        \"receipients\": [\r\n          \"abc@xyz.co\",\r\n\t\t\t\t\t\"abe@xyz.co\"\r\n        ]\r\n      },\r\n      \"smtp_id\": {\r\n        \"id\": \"1\"\r\n      },\r\n      \"door_action\": [\r\n        {\r\n          \"door_id\": {\r\n            \"id\": 1\r\n          },\r\n          \"door_signal\": 346\r\n        }\r\n      ]\r\n    }\r\n  }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/multiple/trigger_actions","description":"<p>This API is used to create multiple trigger actions. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a name of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>priority</td>\n<td>Number</td>\n<td>Y</td>\n<td>Priority index of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>is_quick_action</td>\n<td>Character</td>\n<td>N</td>\n<td>Fill with character “Y” or “N”. This parameter used to describe that the Trigger &amp; Action can be use as a Quick Action</td>\n</tr>\n<tr>\n<td>schedule:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the schedule which will be used by the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>trigger:source_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device/door/zone at which a specific event will be monitored. Multiple devices/doors/zones can be selected. The devices/doors/zones work independently even when they are disconnected from the BioStar server.  <br />1=Device, 2=Door, 3=Zone</td>\n</tr>\n<tr>\n<td>event_types:code</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the events which will trigger an action. At least one event must be selected.  <br />Event lists may be activated differently depending on the options selected in Device, Door, and Zone.</td>\n</tr>\n<tr>\n<td>devices:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device which performs the action. You can select a device or BioStar 2 to perform an action.</td>\n</tr>\n<tr>\n<td>doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will trigger an action.</td>\n</tr>\n<tr>\n<td>zones:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the zone which will trigger an action.</td>\n</tr>\n<tr>\n<td>device_action_id:device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device which will perform an action.</td>\n</tr>\n<tr>\n<td>device_action_id:relay_signal_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay of the device which will be used to perform an action.</td>\n</tr>\n<tr>\n<td>device_action_id:relay_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay index of the device.</td>\n</tr>\n<tr>\n<td>door_action:door_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will perform an action</td>\n</tr>\n<tr>\n<td>door_action:door_signal</td>\n<td>Number</td>\n<td>Y</td>\n<td>Door signal as operation of an action. Value between 345 and 348</td>\n</tr>\n<tr>\n<td>email_action_id:recipients</td>\n<td>Array String</td>\n<td>Y</td>\n<td>List email recipients which BioStar 2 will send notifications to. Use comma (,) to separate each email.</td>\n</tr>\n<tr>\n<td>smtp_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the SMTP setting which will be used to send notification email.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"TriggerAction\": {\n    \"name\": \"ta 1\",\n    \"priority\": \"0\",\n    \"trigger\": {\n      \"source_type\": \"1\"\n    },\n    \"schedule_id\": {\n      \"id\": \"1\"\n    },\n    \"action\": {\n      \"id\": \"800001\",\n      \"device_action_id\": {\n        \"device_id\": {\n          \"id\": \"50355260\"\n        },\n        \"relay_index\": \"0\",\n        \"relay_signal_id\": {\n          \"id\": \"1\"\n        }\n      },\n      \"email_action_id\": {\n        \"receipients\": [\n          \"wawe@test.com\"\n        ]\n      },\n      \"smtp_id\": {\n        \"id\": \"1\"\n      }\n    }\n  },\n  \"Response\": {\n    \"code\": \"0\",\n    \"link\": \"https://support.supremainc.com/en/support/home\",\n    \"message\": \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- Response : The web server response.\n    - code : success/error code.\n    - link : suprema link\n    - message : success/error message\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<ul>\n<li><code>400 Bad Request</code>: The request was malformed or missing required parameters.</li>\n<li><code>401 Unauthorized</code>: The API key provided was invalid or missing.</li>\n<li><code>404 Not Found</code>: The requested resource was not found.</li>\n<li><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","multiple","trigger_actions"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"f1ed5183-0bd9-404e-b2a3-ce32994d19f3"},{"name":"Update Multiple Trigger Actions","id":"33ec7969-90b9-4012-8127-1460b270d450","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n  \"TriggerAction\": {\r\n    \"name\": \"sample triggeraction\",\r\n    \"priority\": 0,\r\n    \"schedule_id\": {\r\n      \"id\": \"1\"\r\n    },\r\n    \"is_quick_action\": \"N\",\r\n    \"trigger\": {\r\n      \"source_type\": 2,\r\n      \"event_types\": [\r\n        {\r\n          \"code\": 22016\r\n        }\r\n      ],\r\n      \"devices\": [\r\n        \r\n      ],\r\n      \"doors\": [\r\n        {\r\n          \"id\": 1\r\n        }\r\n      ],\r\n      \"zones\": [\r\n        \r\n      ]\r\n    },\r\n    \"action\": {\r\n      \"device_action_id\": {\r\n        \"device_id\": {\r\n          \"id\": 50355072\r\n        },\r\n        \"relay_signal_id\": {\r\n          \"id\": \"1\"\r\n        },\r\n        \"relay_index\": 0\r\n      },\r\n      \"email_action_id\": {\r\n        \"receipients\": [\r\n          \"abc1@xyz.co\",\r\n\t\t\t\t\t\"abe2@xyz.co\"\r\n        ]\r\n      },\r\n      \"smtp_id\": {\r\n        \"id\": \"1\"\r\n      },\r\n      \"door_action\": [\r\n        {\r\n          \"door_id\": {\r\n            \"id\": 1\r\n          },\r\n          \"door_signal\": 346\r\n        }\r\n      ]\r\n    }\r\n  }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/multiple/trigger_actions/:id","description":"<p>This API is used to update multiple trigger actions by ID. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a name of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>priority</td>\n<td>Number</td>\n<td>Y</td>\n<td>Priority index of the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>is_quick_action</td>\n<td>Character</td>\n<td>N</td>\n<td>Fill with character “Y” or “N”. This parameter used to describe that the Trigger &amp; Action can be use as a Quick Action</td>\n</tr>\n<tr>\n<td>schedule:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the schedule which will be used by the trigger &amp; action.</td>\n</tr>\n<tr>\n<td>trigger:source_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device/door/zone at which a specific event will be monitored. Multiple devices/doors/zones can be selected. The devices/doors/zones work independently even when they are disconnected from the BioStar server.  <br />1=Device, 2=Door, 3=Zone</td>\n</tr>\n<tr>\n<td>event_types:code</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the events which will trigger an action. At least one event must be selected.  <br />Event lists may be activated differently depending on the options selected in Device, Door, and Zone.</td>\n</tr>\n<tr>\n<td>devices:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device which performs the action. You can select a device or BioStar 2 to perform an action.</td>\n</tr>\n<tr>\n<td>doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will trigger an action.</td>\n</tr>\n<tr>\n<td>zones:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the zone which will trigger an action.</td>\n</tr>\n<tr>\n<td>device_action_id:device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the device which will perform an action.</td>\n</tr>\n<tr>\n<td>device_action_id:relay_signal_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay of the device which will be used to perform an action.</td>\n</tr>\n<tr>\n<td>device_action_id:relay_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Relay index of the device.</td>\n</tr>\n<tr>\n<td>door_action:door_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the door which will perform an action</td>\n</tr>\n<tr>\n<td>door_action:door_signal</td>\n<td>Number</td>\n<td>Y</td>\n<td>Door signal as operation of an action. Value between 345 and 348</td>\n</tr>\n<tr>\n<td>email_action_id:recipients</td>\n<td>Array String</td>\n<td>Y</td>\n<td>List email recipients which BioStar 2 will send notifications to. Use comma (,) to separate each email.</td>\n</tr>\n<tr>\n<td>smtp_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the SMTP setting which will be used to send notification email.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Response\": {\n    \"code\": \"0\",\n    \"link\": \"https://support.supremainc.com/en/support/home\",\n    \"message\": \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- Response : The web server response.\n    - code : success/error code.\n    - link : suprema link\n    - message : success/error message\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<ul>\n<li><p><code>400 Bad Request</code>: The request was malformed or missing required parameters.</p>\n</li>\n<li><p><code>401 Unauthorized</code>: The API key provided was invalid or missing.</p>\n</li>\n<li><p><code>404 Not Found</code>: The requested resource was not found.</p>\n</li>\n<li><p><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","multiple","trigger_actions",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>Trigger &amp; Action's ID</p>\n","type":"text/plain"},"type":"any","value":"","key":"id"}]}},"response":[],"_postman_id":"33ec7969-90b9-4012-8127-1460b270d450"},{"name":"Delete Multiple Trigger Actions Copy","id":"8d97b73e-c4bf-4029-b7e6-e2e149cb7186","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/multiple/trigger_actions?id=","description":"<p>This API is used to delete multiple trigger actions by ID. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Response\": {\n    \"code\": \"0\",\n    \"link\": \"https://support.supremainc.com/en/support/home\",\n    \"message\": \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- Response : The web server response.\n    - code : success/error code.\n    - link : suprema link\n    - message : success/error message\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<ul>\n<li><code>400 Bad Request</code>: The request was malformed or missing required parameters.</li>\n<li><code>401 Unauthorized</code>: The API key provided was invalid or missing.</li>\n<li><code>404 Not Found</code>: The requested resource was not found.</li>\n<li><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","multiple","trigger_actions"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Trigger and Action ID(s). Delimit each ID by using plus symbol (+; ex: 1+2+3)</p>\n","type":"text/plain"},"key":"id","value":""}],"variable":[]}},"response":[],"_postman_id":"8d97b73e-c4bf-4029-b7e6-e2e149cb7186"},{"name":"View Multiple Trigger Actions","id":"2be0ada3-68b3-4959-a50b-294389596240","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/multiple/trigger_actions/:id","description":"<p>This API is used to view trigger actions by ID. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"TriggerAction\": {\n        \"id\": \"1\",\n        \"name\": \"sample triggeraction\",\n        \"priority\": \"0\",\n        \"trigger\": {\n            \"source_type\": \"2\",\n            \"doors\": [\n                {\n                    \"id\": \"1\",\n                    \"name\": \"door1\"\n                }\n            ],\n            \"event_types\": [\n                {\n                    \"code\": \"22016\",\n                    \"name\": \"FORCED_OPEN_ALARM\"\n                }\n            ]\n        },\n        \"schedule_id\": {\n            \"id\": \"1\",\n            \"name\": \"Always\"\n        },\n        \"action\": {\n            \"id\": \"1\",\n            \"device_action_id\": {\n                \"device_id\": {\n                    \"id\": \"50355072\"\n                },\n                \"relay_index\": \"0\",\n                \"relay_signal_id\": {\n                    \"id\": \"1\",\n                    \"name\": \"sinyal1\",\n                    \"delay\": \"0\",\n                    \"count\": \"0\",\n                    \"on_duration\": \"0\",\n                    \"off_duration\": \"0\"\n                }\n            },\n            \"email_action_id\": {\n                \"receipients\": [\n                    \"abc@xyz.co\"\n                ]\n            },\n            \"smtp_id\": {\n                \"id\": \"1\",\n                \"name\": \"aaa\",\n                \"smtp_server_addr\": \"localhost\",\n                \"smtp_server_port\": \"25\",\n                \"smtp_security\": \"1\"\n            },\n            \"door_action\": [\n                {\n                    \"door_id\": {\n                        \"id\": \"1\",\n                        \"name\": \"door1\"\n                    },\n                    \"door_signal\": \"346\"\n                }\n            ]\n        },\n        \"is_quick_action\": \"N\",\n        \"number_quick_actions\": \"0\"\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https:\\/\\/support.supremainc.com\\/en\\/support\\/home\",\n        \"message\": \"Success\"\n    }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- TriggerAction : a trigger action.\n    - name : The trigger action name.\n    - is_quick_action : Indicates if this trigger action is also a quick action or not.\n    - number_quick_actions : count of quick actions.\n    - priority : The trigger action priority.\n    - action : List of actions. It can be device action, door action and email action\n    - trigger : List of triggers. It can be device, door, and zone.\n- Response : The web server response.\n    - code : success/error code.\n    - link : suprema link\n    - message : success/error message\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<ul>\n<li><p><code>400 Bad Request</code>: The request was malformed or missing required parameters.</p>\n</li>\n<li><p><code>401 Unauthorized</code>: The API key provided was invalid or missing.</p>\n</li>\n<li><p><code>404 Not Found</code>: The requested resource was not found.</p>\n</li>\n<li><p><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","multiple","trigger_actions",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Trigger and Action which will be viewed.</p>\n","type":"text/plain"},"type":"any","value":"","key":"id"}]}},"response":[],"_postman_id":"2be0ada3-68b3-4959-a50b-294389596240"}],"id":"55545e69-f418-4575-8aab-9f79383a9c66","_postman_id":"55545e69-f418-4575-8aab-9f79383a9c66","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Quick Action","item":[{"name":"Trigger Quick Action by ID","id":"a4e0500e-62fc-4b94-bf01-b86e43a7f986","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/quick_action/:id","description":"<p>This API is used to trigger Quick Action by ID. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"QuickActionID\": \"1\",\n  \"Response\": {\n    \"code\": \"0\",\n    \"link\": \"https://support.supremainc.com/en/support/home\",\n    \"message\": \"Success\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- QuickActionID : quick action ID.\n- Response : The web server response.\n    - code : success/error code.\n    - link : suprema link\n    - message : success/error message\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<p>This API uses the following error codes:</p>\n<ul>\n<li><code>400 Bad Request</code>: The request was malformed or missing required parameters.</li>\n<li><code>401 Unauthorized</code>: The API key provided was invalid or missing.</li>\n<li><code>404 Not Found</code>: The requested resource was not found.</li>\n<li><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","quick_action",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"f5a23782-f2f3-4870-a77f-228ce064dd38","description":{"content":"<p>ID of the Quick Action which will be viewed.</p>\n","type":"text/plain"},"type":"any","value":"2","key":"id"}]}},"response":[],"_postman_id":"a4e0500e-62fc-4b94-bf01-b86e43a7f986"},{"name":"View Trigger Action with Quick Action Enabled","id":"57857661-67e4-4a7f-bcaf-02cda150bc7a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/quick_action/alarm_set","description":"<p>This API is used to fetch Trigger Actions with Quick Action status enabled. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Response\": {\n    \"code\": \"0\"\n  },\n  \"alarm_sets\": [\n    {\n      \"alarmSetUID\": 1,\n      \"name\": \"ta 1\",\n      \"prio\": 0,\n      \"scheduleUID\": 1,\n      \"alarmType\": 1,\n      \"alarmActionUID\": 800001,\n      \"quickAction\": \"Y\"\n    }\n  ]\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- Response : The response from web server.\n    - code : success/error code.\n- alarm_sets : An array of trigger action objects, each with the following properties:\n    - alarmActionUID : The alarm action ID.\n    - alarmSetUID: The trigger action ID.\n    - alarmType: The alarm type.\n    - name : The trigger action name.\n    - prio : The priority.\n    - quickAction : is quick action enabled or not.\n    - scheduleUID : The schedule ID\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<p>This API uses the following error codes:</p>\n<ul>\n<li><p><code>400 Bad Request</code>: The request was malformed or missing required parameters.</p>\n</li>\n<li><p><code>401 Unauthorized</code>: The API key provided was invalid or missing.</p>\n</li>\n<li><p><code>404 Not Found</code>: The requested resource was not found.</p>\n</li>\n<li><p><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","quick_action","alarm_set"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"57857661-67e4-4a7f-bcaf-02cda150bc7a"},{"name":"View All Quick Action","id":"f340e744-c347-4a2e-8d15-b243dbc8dd6a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/quick_action","description":"<p>This API is used to fetch all configured quick actions. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Response\": {\n    \"code\": \"0\"\n  },\n  \"quick_action\": [\n    {\n      \"id\": 1,\n      \"name\": \"qc 1\",\n      \"description\": \"quick action test\",\n      \"order_number\": 1,\n      \"status\": \"I\",\n      \"confirm_before_run\": \"Y\",\n      \"operator_levels\": [\n        {\n          \"id\": 1,\n          \"permission\": {\n            \"id\": 1,\n            \"name\": \"Administrator\",\n            \"description\": \"this is a permission for Administrator\",\n            \"jsonText\": \"{\\n \\n   \\\"module\\\": {\\n \\n     \\\"Dashboard\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"User\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Device\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Door\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Elevator\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Zone\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"AccessControl\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Monitoring\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"TA\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Setting\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Video\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Visitor\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n  \\\"Report\\\": {\\n \\n    \\\"read\\\": true,\\n \\n    \\\"write\\\": true\\n \\n  }\\n \\n   },\\n \\n   \\\"filter\\\": {\\n \\n     \\\"UserGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"DeviceGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"DoorGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"ElevatorGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"ZoneType\\\": [\\n \\n       \\\"-1\\\"\\n \\n     ],\\n \\n     \\\"AccessGroup\\\": [\\n \\n       0\\n \\n     ],\\n \\n     \\\"GraphicMapGroup\\\": [\\n \\n       1\\n \\n     ]\\n \\n   }\\n \\n }\",\n            \"createdAt\": \"2023-11-06T10:00:55.000+00:00\"\n          }\n        }\n      ],\n      \"trigger_actions\": [\n        {\n          \"id\": 1,\n          \"alarm_set\": {\n            \"alarmSetUID\": 1,\n            \"name\": \"ta 1\",\n            \"prio\": 0,\n            \"scheduleUID\": 1,\n            \"alarmType\": 1,\n            \"alarmActionUID\": 800001,\n            \"quickAction\": \"Y\"\n          }\n        }\n      ]\n    }\n  ]\n}\n\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- Response : The web server response.\n    - code : success/error code\n- quick_action : An array of quick action objects, each with the following properties:\n    - confirm_before_run : The confirm before run flag. Y = enabled, N = disabled.\n    - description : The description of quick action.\n    - id : The quick action ID.\n    - name : The quick action name.\n    - operator_levels : The operator levels.\n    - order_number : The order number of quick action.\n    - status : The status of quick action.\n    - trigger_actions: The trigger actions.\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<p>This API uses the following error codes:</p>\n<ul>\n<li><code>400 Bad Request</code>: The request was malformed or missing required parameters.</li>\n<li><code>401 Unauthorized</code>: The API key provided was invalid or missing.</li>\n<li><code>404 Not Found</code>: The requested resource was not found.</li>\n<li><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","quick_action"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"f340e744-c347-4a2e-8d15-b243dbc8dd6a"},{"name":"View All Quick Action by Permission ID","id":"13036ca5-de04-46f7-8692-338eeab700ca","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/quick_action/permission/:id","description":"<p>This API is used to fetch Quick Actions by Permission ID. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Response\": {\n    \"code\": \"0\"\n  },\n  \"quick_action\": [\n    {\n      \"id\": 1,\n      \"name\": \"qc 1 bla\",\n      \"description\": \"quick action bla\",\n      \"order_number\": 2,\n      \"status\": \"I\",\n      \"confirm_before_run\": \"Y\",\n      \"operator_levels\": [\n        {\n          \"id\": 2,\n          \"permission\": {\n            \"id\": 1,\n            \"name\": \"Administrator\",\n            \"description\": \"this is a permission for Administrator\",\n            \"jsonText\": \"{\\n \\n   \\\"module\\\": {\\n \\n     \\\"Dashboard\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"User\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Device\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Door\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Elevator\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Zone\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"AccessControl\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Monitoring\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"TA\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Setting\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Video\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Visitor\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n  \\\"Report\\\": {\\n \\n    \\\"read\\\": true,\\n \\n    \\\"write\\\": true\\n \\n  }\\n \\n   },\\n \\n   \\\"filter\\\": {\\n \\n     \\\"UserGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"DeviceGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"DoorGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"ElevatorGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"ZoneType\\\": [\\n \\n       \\\"-1\\\"\\n \\n     ],\\n \\n     \\\"AccessGroup\\\": [\\n \\n       0\\n \\n     ],\\n \\n     \\\"GraphicMapGroup\\\": [\\n \\n       1\\n \\n     ]\\n \\n   }\\n \\n }\",\n            \"createdAt\": \"2023-11-06T10:00:55.000+00:00\"\n          }\n        }\n      ],\n      \"trigger_actions\": [\n        {\n          \"id\": 2,\n          \"alarm_set\": {\n            \"alarmSetUID\": 1,\n            \"name\": \"ta 1\",\n            \"prio\": 0,\n            \"scheduleUID\": 1,\n            \"alarmType\": 1,\n            \"alarmActionUID\": 800001,\n            \"quickAction\": \"Y\"\n          }\n        }\n      ]\n    }\n  ]\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- Response : The web server response.\n    - code : success/error code\n- quick_action : An array of quick action objects, each with the following properties:\n    - confirm_before_run : The confirm before run flag. Y = enabled, N = disabled.\n    - description : The description of quick action.\n    - id : The quick action ID.\n    - name : The quick action name.\n    - operator_levels : The operator levels.\n    - order_number : The order number of quick action.\n    - status : The status of quick action.\n    - trigger_actions: The trigger actions.\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<p>This API uses the following error codes:</p>\n<ul>\n<li><code>400 Bad Request</code>: The request was malformed or missing required parameters.</li>\n<li><code>401 Unauthorized</code>: The API key provided was invalid or missing.</li>\n<li><code>404 Not Found</code>: The requested resource was not found.</li>\n<li><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","quick_action","permission",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"81920e46-4040-4a8b-8717-559a4a575ebd","description":{"content":"<p>Permission ID of the Quick Action which will be viewed.</p>\n","type":"text/plain"},"type":"any","value":"","key":"id"}]}},"response":[],"_postman_id":"13036ca5-de04-46f7-8692-338eeab700ca"},{"name":"View Quick Action by ID","id":"f9ad1f0f-303a-48a6-8660-57efb7b239c6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/quick_action/:id","description":"<p>This API is used to fetch Quick Action information by ID. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Response\": {\n    \"code\": \"0\"\n  },\n  \"quick_action\": [\n    {\n      \"id\": 1,\n      \"name\": \"qc 1 bla\",\n      \"description\": \"quick action bla\",\n      \"order_number\": 2,\n      \"status\": \"I\",\n      \"confirm_before_run\": \"Y\",\n      \"operator_levels\": [\n        {\n          \"id\": 2,\n          \"permission\": {\n            \"id\": 1,\n            \"name\": \"Administrator\",\n            \"description\": \"this is a permission for Administrator\",\n            \"jsonText\": \"{\\n \\n   \\\"module\\\": {\\n \\n     \\\"Dashboard\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"User\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Device\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Door\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Elevator\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Zone\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"AccessControl\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Monitoring\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"TA\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Setting\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Video\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n     \\\"Visitor\\\": {\\n \\n       \\\"read\\\": true,\\n \\n       \\\"write\\\": true\\n \\n     },\\n \\n  \\\"Report\\\": {\\n \\n    \\\"read\\\": true,\\n \\n    \\\"write\\\": true\\n \\n  }\\n \\n   },\\n \\n   \\\"filter\\\": {\\n \\n     \\\"UserGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"DeviceGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"DoorGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"ElevatorGroup\\\": [\\n \\n       1\\n \\n     ],\\n \\n     \\\"ZoneType\\\": [\\n \\n       \\\"-1\\\"\\n \\n     ],\\n \\n     \\\"AccessGroup\\\": [\\n \\n       0\\n \\n     ],\\n \\n     \\\"GraphicMapGroup\\\": [\\n \\n       1\\n \\n     ]\\n \\n   }\\n \\n }\",\n            \"createdAt\": \"2023-11-06T10:00:55.000+00:00\"\n          }\n        }\n      ],\n      \"trigger_actions\": [\n        {\n          \"id\": 2,\n          \"alarm_set\": {\n            \"alarmSetUID\": 1,\n            \"name\": \"ta 1\",\n            \"prio\": 0,\n            \"scheduleUID\": 1,\n            \"alarmType\": 1,\n            \"alarmActionUID\": 800001,\n            \"quickAction\": \"Y\"\n          }\n        }\n      ]\n    }\n  ]\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- Response : The web server response.\n    - code : success/error code\n- quick_action : An array of quick action objects, each with the following properties:\n    - confirm_before_run : The confirm before run flag. Y = enabled, N = disabled.\n    - description : The description of quick action.\n    - id : The quick action ID.\n    - name : The quick action name.\n    - operator_levels : The operator levels.\n    - order_number : The order number of quick action.\n    - status : The status of quick action.\n    - trigger_actions: The trigger actions.\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<p>This API uses the following error codes:</p>\n<ul>\n<li><code>400 Bad Request</code>: The request was malformed or missing required parameters.</li>\n<li><code>401 Unauthorized</code>: The API key provided was invalid or missing.</li>\n<li><code>404 Not Found</code>: The requested resource was not found.</li>\n<li><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","quick_action",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"1eb490c2-4a7c-46af-bc6a-f158fc1981d3","description":{"content":"<p>ID of the Quick Action which will be viewed.</p>\n","type":"text/plain"},"type":"any","value":"","key":"id"}]}},"response":[],"_postman_id":"f9ad1f0f-303a-48a6-8660-57efb7b239c6"},{"name":"Save/Update/Delete Quick Action","id":"c5b4791a-721c-4aa1-b27b-986dd8f869bd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"QuickActions\": [\r\n        {\r\n            \"name\": \"qa 1\",\r\n            \"description\": \"sfsf\",\r\n            \"confirm_before_run\": \"Y\",\r\n            \"operator_level_ids\": [\r\n                2,\r\n                3\r\n            ],\r\n            \"trigger_action_ids\": [\r\n                3\r\n            ],\r\n            \"order_number\": 1\r\n        },\r\n        {\r\n            \"name\": \"qa 2\",\r\n            \"description\": \"dsfsdf\",\r\n            \"confirm_before_run\": \"Y\",\r\n            \"operator_level_ids\": [\r\n                1,\r\n                254\r\n            ],\r\n            \"trigger_action_ids\": [\r\n                4\r\n            ],\r\n            \"order_number\": 2,\r\n            \"id\": 1\r\n        }\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/quick_action","description":"<p>This API is used to save/update/delete Quick Action. It is accessible in BioStar 2 version 2.9.5 and later.</p>\n<p><code>To CREATE:</code> Fill in all Quick Action(s) parameter (excluding ID). It is possible to create multiple Quick Action in one payload.<br />In the case creating new one while there's existing Quick Action(s), the new one doesn't require ID while the existing require it.</p>\n<p><code>To DELETE:</code> Fill in all Quick Action(s) parameter (including ID). Input all Quick Action(s) besides the one that will be deleted. To delete all, simply send an empty payload.</p>\n<p><code>To UPDATE:</code> Fill in all Quick Action(s) parameter (including ID). Input all Quick Action(s) including any which will not be updated.</p>\n<h4 id=\"body-parameter\">BODY Parameter:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Quick Action name.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>Y</td>\n<td>Quick Action description.</td>\n</tr>\n<tr>\n<td>confirm_before_run</td>\n<td>String</td>\n<td>Y</td>\n<td>Confirmation before run (enabled/disabled). Y = enabled, N = disabled.</td>\n</tr>\n<tr>\n<td>operator_level_ids</td>\n<td>Array</td>\n<td>Y</td>\n<td>List Operator Level ID(s) which allowed to run the Quick Action.</td>\n</tr>\n<tr>\n<td>trigger_action_ids</td>\n<td>Array</td>\n<td>Y</td>\n<td>List Trigger &amp; Action ID(s) which will be executed when Quick Action triggered.</td>\n</tr>\n<tr>\n<td>order_number</td>\n<td>Number</td>\n<td>Y</td>\n<td>Quick Action order number.</td>\n</tr>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>N</td>\n<td>Quick Action's ID. Will be generated after Quick Action created. Required to be filled when update or adding.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"Response\": {\n    \"code\": \"0\"\n  }\n}\n\n</code></pre>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>- Response : The web server response.\n    - code : success/error code.\n\n</code></pre><h4 id=\"errors\">Errors:</h4>\n<p>This API uses the following error codes:</p>\n<ul>\n<li><p><code>400 Bad Request</code>: The request was malformed or missing required parameters.</p>\n</li>\n<li><p><code>401 Unauthorized</code>: The API key provided was invalid or missing.</p>\n</li>\n<li><p><code>404 Not Found</code>: The requested resource was not found.</p>\n</li>\n<li><p><code>500 Internal Server Error</code>: An unexpected error occurred on the server.</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","quick_action"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"c5b4791a-721c-4aa1-b27b-986dd8f869bd"}],"id":"c62adf2e-0f09-41e8-b766-d9418c5f5351","_postman_id":"c62adf2e-0f09-41e8-b766-d9418c5f5351","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Setting","item":[{"name":"Active Directory","item":[{"name":"Check Active Directory Connection","id":"2277f367-7b43-43d1-bdc7-6443499e5030","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"serverAddress\": \"\",\r\n    \"userName\": \"3323232-1111-33b6-a0a0-dfeq6bc7a762\",\r\n    \"password\": \"asdfasdfas~!2sdfsdfasdf\",\r\n    \"userDomainName\": \"test.onmicrosoft.com\",\r\n    \"useSSL\": false,\r\n    \"adlogin\": false,\r\n    \"adType\": \"E\",\r\n    \"scheduleSyncInterval\": 0,\r\n    \"adEnable\": \"0\",\r\n    \"syncEvtCheck\": false,\r\n    \"resetSync\": false,\r\n    \"RedirectionUri\": \"https://127.0.0.1/api/v2/entraid/auth\",\r\n    \"syncType\": \"N\",\r\n    \"prevAdType\": \"E\",\r\n    \"prevDomainName\": \"test.onmicrosoft.com\",\r\n    \"prevServerAddr\": \"\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/setting/adserverconnect","description":"<p>This API is used to test BioStar 2 connection with Windows Active Directory.</p>\n<p>Successful connection will return code : 0.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>serverAddress</td>\n<td>String</td>\n<td>Y</td>\n<td>IP Address of the Domain Controller</td>\n</tr>\n<tr>\n<td>userName</td>\n<td>String</td>\n<td>Y</td>\n<td>User Name which will be used to connect to the Domain Controller</td>\n</tr>\n<tr>\n<td>password</td>\n<td>String</td>\n<td>Y</td>\n<td>User Name's corresponding password</td>\n</tr>\n<tr>\n<td>userDomainName</td>\n<td>String</td>\n<td>Y</td>\n<td>BaseDN of the Domain Controller</td>\n</tr>\n<tr>\n<td>useSSL</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Option to use encryption when communicating with a Windows Active Directory server.  <br />  <br />Install Active Directory Certificate Services and set the keystore password by referring to Active Directory Encryption.</td>\n</tr>\n<tr>\n<td>adlogin</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Enable logging into BioStar 2 using the Windows Active Directory account.</td>\n</tr>\n<tr>\n<td>RedirectionUri</td>\n<td>String</td>\n<td>Y</td>\n<td>Required for EntraId interworking.</td>\n</tr>\n<tr>\n<td>adEnable</td>\n<td>String</td>\n<td>Y</td>\n<td>If BioStar2 is upgraded from a version earlier than 2.9.9, it needs to be set to 'U'. Otherwise, set to 0.</td>\n</tr>\n<tr>\n<td>adType</td>\n<td>String</td>\n<td>Y</td>\n<td>Interworking target classification.  <br />Active Directory: A  <br />EntraId: E</td>\n</tr>\n<tr>\n<td>prevAdType</td>\n<td>String</td>\n<td>Y</td>\n<td>It is required to enter the previous connection information when modifying the interworking target. If there is no change, enter the current connection information.</td>\n</tr>\n<tr>\n<td>prevDomainName</td>\n<td>String</td>\n<td>Y</td>\n<td>It is required to enter the previous connection information when modifying the interworking target. If there is no change, enter the current connection information.</td>\n</tr>\n<tr>\n<td>prevServerAddr</td>\n<td>String</td>\n<td>Y</td>\n<td>It is required to enter the previous connection information when modifying the interworking target. If there is no change, enter the current connection information.</td>\n</tr>\n<tr>\n<td>resetSync</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Delete existing users and user groups due to changes in connection information and set them to <strong>true</strong> if new settings are required. default is <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>scheduleSyncInterval</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set the time interval for automatic synchronization.  <br />0: Manual synchronization  <br />30 to 10080: Automatic synchronization</td>\n</tr>\n<tr>\n<td>syncEvtCheck</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Settings for whether to leave event logs on BioStar2.  <br /><strong>true</strong>: event logs are kept on BioStar 2 as usual.</td>\n</tr>\n<tr>\n<td>syncType</td>\n<td>String</td>\n<td>Y</td>\n<td>Toggle automatic synchronization.  <br />Manual synchronization: N  <br />Automatic synchronization: A</td>\n</tr>\n</tbody>\n</table>\n</div><p>See these articles for more information on connecting BioStar 2 with Active Directory:</p>\n<ul>\n<li><p><a href=\"https://support.supremainc.com/en/support/solutions/articles/24000044140\">https://support.supremainc.com/en/support/solutions/articles/24000044140</a></p>\n</li>\n<li><p><a href=\"https://support.supremainc.com/en/support/solutions/articles/24000041940--biostar-2-how-to-confirm-active-directory-information/en\">https://support.supremainc.com/en/support/solutions/articles/24000041940--biostar-2-how-to-confirm-active-directory-information/en</a></p>\n</li>\n</ul>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.9:</p>\n<ul>\n<li><p>Supports both Active Directory and EntraID</p>\n</li>\n<li><p>Added parameter: RedirectionUri, adEnable, adType, prevAdType, prevDomainName, prevServerAddr, resetSync, scheduleSyncInterval, syncEvtCheck, syncType.</p>\n</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","adserverconnect"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2277f367-7b43-43d1-bdc7-6443499e5030"},{"name":"User Group Search","id":"f1f52eff-0c43-4c47-bfe1-2cdba94e2c77","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"DC=domain,DC=com","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/setting/adUserGroupList","description":"<p>To run BioStar 2 AD APIs, it is required to be connected to the AD server.</p>\n<p>This API is used to get User Group information from the Domain Controller.</p>\n<p>It is required to put domain name information on the body.</p>\n<p>The response value is returned in JSON format. At this time, Collection.rows.userGroups is used for the next user group update.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","adUserGroupList"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"f1f52eff-0c43-4c47-bfe1-2cdba94e2c77"},{"name":"User Group Update","id":"7ca7578d-e226-417a-9233-78af611745d6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"allUserGroup\": true,\r\n    \"dn\": \"DC=domain,DC=com\",\r\n    \"lastSyncVersion\": 0,\r\n    \"userGroups\": [\r\n        {\r\n            \"id\": 0,\r\n            \"dn\": \"oddtest.id\",\r\n            \"name\": \"oddtest.id\",\r\n            \"objectGuid\": \"oddtest.id\",\r\n            \"children\": [\r\n                {\r\n                    \"id\": 1,\r\n                    \"dn\": \"OU=Domain Controllers,DC=oddtest,DC=id\",\r\n                    \"name\": \"Domain Controllers\",\r\n                    \"objectGuid\": \"0921243F0254453F3F3F72273F4F7C\",\r\n                    \"children\": [],\r\n                    \"isGroup\": true\r\n                }\r\n            ],\r\n            \"isGroup\": true\r\n        }\r\n    ],\r\n    \"userGroupFilters\": [\r\n        {\r\n            \"id\": 10,\r\n            \"name\": \"Guests\"\r\n        }\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/setting/adUserGroupFilterSetting","description":"<p>Based on the user group information queried in User Group Search, the user group which will be linked is updated.</p>\n<p>Update the user group and save it to the Biostar server.</p>\n<p>BODY Parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>allUserGroup</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle True when selecting all User Groups.</td>\n</tr>\n<tr>\n<td>dn</td>\n<td>String</td>\n<td>Y</td>\n<td>Domain Name</td>\n</tr>\n<tr>\n<td>lastSyncVersion</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set to 0</td>\n</tr>\n<tr>\n<td>userGroups</td>\n<td>Array</td>\n<td>Y</td>\n<td>Put Collection.rows.userGroups from User Group Search</td>\n</tr>\n<tr>\n<td>userGroupFilters</td>\n<td>Array</td>\n<td>Y</td>\n<td>Place the id and name of the user groups to be synchronized into an array.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","adUserGroupFilterSetting"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"7ca7578d-e226-417a-9233-78af611745d6"},{"name":"Change AD User Mapping","id":"e324b5f5-a05b-4200-bb83-2e9d2e69bf9b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"[\r\n    {\r\n        \"columnm\": \"usrid\",\r\n        \"adcolumnm\": \"initials\",\r\n        \"use\": \"true\",\r\n        \"columnmdescription\": \"User ID\"\r\n    },\r\n    {\r\n        \"columnm\": \"nm\",\r\n        \"columnmdescription\": \"User Name\",\r\n        \"use\": \"true\",\r\n        \"adcolumnm\": \"displayName\"\r\n    }\r\n]","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/setting/changeadusrmappinglist","description":"<p>This API is used to set the user field configuration.</p>\n<p>The payload is in the form of a JSON array.<br />Each array has BioStar 2 column name (columnm), AD column name (adcolumnm), whether to use (use), and column description (columnmdescription).</p>\n<blockquote>\n<p>[</p>\n</blockquote>\n<blockquote>\n<p>{\"columnm\":\"usrid\",\"adcolumnm\":\"sAMAccountName\",\"use\":\"true\",\"columnmdescription\":\"userid\"} {\"columnm\":\"nm\",\"adcolumnm\":\"displayName\" ,\"use\":\"true\",\"columnmdescription\":\"User NAME\"}</p>\n</blockquote>\n<blockquote>\n<p>]</p>\n</blockquote>\n<p>If you set the payload as above, you can sync the username as well.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","changeadusrmappinglist"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"e324b5f5-a05b-4200-bb83-2e9d2e69bf9b"},{"name":"Synchronize","id":"5e172fd4-9bff-4ede-a14e-fb171fc4cdb6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"adType\": \"E\",\r\n    \"RedirectionUri\": \"https://192.168.12.161/api/v2/entraid/auth\",\r\n    \"scheduleSyncInterval\": 0,\r\n    \"syncType\": \"N\",\r\n    \"useSSL\": false,\r\n    \"adlogin\": false,\r\n    \"adEnable\": \"0\",\r\n    \"serverAddress\": \"\",\r\n    \"userName\": \"3323232-1111-33b6-a0a0-dfeq6bc7a762\",\r\n    \"password\": \"asdfasdfas~!2sdfsdfasdf\",\r\n    \"userDomainName\": \"test.onmicrosoft.com\",\r\n    \"syncEvtCheck\": true,\r\n    \"prevAdType\": \"N\",\r\n    \"prevDomainName\": \"\",\r\n    \"prevServerAddr\": \"\",\r\n    \"resetSync\": false,\r\n    \"useCustomField\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/setting/syncadserver","description":"<p>This API is used to synchronizes AD user information with Biostar 2.<br />If there is no user group change or field reorganization then only this synchronization operation is sufficient.</p>\n<p>serverAddress, userName, password, userDomainName, and useSSL must be sent in the payload.</p>\n<p>lastSyncTime, lastSyncResult, lastUpdateTime fields on response are \"recent sync time with ad server\", \"recent sync result\", \"recent update time of ad server information\",<br />It can be checked through <code>GET /api/v2/setting/adserversetting</code></p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>serverAddress</td>\n<td>String</td>\n<td>Y</td>\n<td>IP Address of the Domain Controller</td>\n</tr>\n<tr>\n<td>userName</td>\n<td>String</td>\n<td>Y</td>\n<td>User Name which will be used to connect to the Domain Controller</td>\n</tr>\n<tr>\n<td>password</td>\n<td>String</td>\n<td>Y</td>\n<td>User Name's corresponding password</td>\n</tr>\n<tr>\n<td>userDomainName</td>\n<td>String</td>\n<td>Y</td>\n<td>BaseDN of the Domain Controller</td>\n</tr>\n<tr>\n<td>useSSL</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Option to use encryption when communicating with a Windows Active Directory server.  <br />  <br />Install Active Directory Certificate Services and set the keystore password by referring to Active Directory Encryption.</td>\n</tr>\n<tr>\n<td>adlogin</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Enable logging into BioStar 2 using the Windows Active Directory account.</td>\n</tr>\n<tr>\n<td>RedirectionUri</td>\n<td>String</td>\n<td>Y</td>\n<td>Required for EntraId interworking.</td>\n</tr>\n<tr>\n<td>adEnable</td>\n<td>String</td>\n<td>Y</td>\n<td>If BioStar2 is upgraded from a version earlier than 2.9.9, it needs to be set to 'U'. Otherwise, set to 0.</td>\n</tr>\n<tr>\n<td>adType</td>\n<td>String</td>\n<td>Y</td>\n<td>Interworking target classification.  <br />Active Directory: A  <br />EntraId: E</td>\n</tr>\n<tr>\n<td>prevAdType</td>\n<td>String</td>\n<td>Y</td>\n<td>It is required to enter the previous connection information when modifying the interworking target. If there is no change, enter the current connection information.</td>\n</tr>\n<tr>\n<td>prevDomainName</td>\n<td>String</td>\n<td>Y</td>\n<td>It is required to enter the previous connection information when modifying the interworking target. If there is no change, enter the current connection information.</td>\n</tr>\n<tr>\n<td>prevServerAddr</td>\n<td>String</td>\n<td>Y</td>\n<td>It is required to enter the previous connection information when modifying the interworking target. If there is no change, enter the current connection information.</td>\n</tr>\n<tr>\n<td>resetSync</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Delete existing users and user groups due to changes in connection information and set them to <strong>true</strong> if new settings are required. default is <strong>false</strong>.</td>\n</tr>\n<tr>\n<td>scheduleSyncInterval</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set the time interval for automatic synchronization.  <br />0: Manual synchronization  <br />30 to 10080: Automatic synchronization</td>\n</tr>\n<tr>\n<td>syncEvtCheck</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Settings for whether to leave event logs on BioStar2.  <br /><strong>true</strong>: event logs are kept on BioStar 2 as usual.</td>\n</tr>\n<tr>\n<td>syncType</td>\n<td>String</td>\n<td>Y</td>\n<td>Toggle automatic synchronization.  <br />Manual synchronization: N  <br />Automatic synchronization: A</td>\n</tr>\n<tr>\n<td>useCustomField</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Set this parameter to <strong>true</strong> if a custom user field has been added via <strong>Change AD User Mapping</strong>. If no custom user field is being used, set the parameter to <strong>false</strong>.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.9:</p>\n<ul>\n<li>Added parameter: RedirectionUri, adEnable, adType, prevAdType, prevDomainName, prevServerAddr, resetSync, scheduleSyncInterval, syncEvtCheck, syncType, useCustomField.</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","syncadserver"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"5e172fd4-9bff-4ede-a14e-fb171fc4cdb6"},{"name":"View AD Server Setting","id":"51c03f3c-7ac0-48e7-a023-b3d3a64bad8c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adserversetting","description":"<p>Retrieves AD server configurations.</p>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.9:</p>\n<ul>\n<li>Added example response for AD and EntraID.</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","adserversetting"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"cf68bee1-bd88-4651-ae30-e4f36e809672","name":"AD Status","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adserversetting"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"ADServerSettingCollection\": {\n        \"total\": 1,\n        \"rows\": [\n            {\n                \"serverAddress\": \"192.111.22.3\",\n                \"userName\": \"test\",\n                \"password\": \"test1!\",\n                \"userDomainName\": \"DC=test,DC=co,DC=kr\",\n                \"lastSyncTime\": 1748311298580,\n                \"lastSyncResult\": \"0\",\n                \"lastUpdateTime\": 1748311298580,\n                \"useSSL\": false,\n                \"adlogin\": false,\n                \"adType\": \"A\",\n                \"scheduleSyncInterval\": 0,\n                \"adEnable\": \"0\",\n                \"syncEvtCheck\": false,\n                \"resetSync\": false,\n                \"targetUserIds\": []\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"success\",\n        \"by\": \"web\"\n    }\n}"},{"id":"9e027eca-db70-4598-be0a-b5bf0ca33027","name":"EntraID Status","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adserversetting"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"ADServerSettingCollection\": {\n        \"total\": 1,\n        \"rows\": [\n            {\n                \"serverAddress\": \"\",\n                \"userName\": \"3323232-1111-33b6-a0a0-dfeq6bc7a762\",\n                \"password\": \"asdfasdfas~!2sdfsdfasdf\",\n                \"userDomainName\": \"test.onmicrosoft.com\",\n                \"useSSL\": false,\n                \"adlogin\": false,\n                \"adType\": \"E\",\n                \"scheduleSyncInterval\": 0,\n                \"adEnable\": \"0\",\n                \"syncEvtCheck\": false,\n                \"resetSync\": false,\n                \"targetUserIds\": []\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"success\",\n        \"by\": \"web\"\n    }\n}"}],"_postman_id":"51c03f3c-7ac0-48e7-a023-b3d3a64bad8c"},{"name":"View AD User Mapping List","id":"8c876213-aaf5-4256-bb6a-727f30227ba5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adusrmappinglist","description":"<p>Retrieves the mapping relationships between user attribute fields in BioStar 2 and those used in Active Directory or Entra ID.</p>\n<p>Please note that the required mapping information differs between Entra ID and Active Directory.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","adusrmappinglist"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"f856d849-ab36-400a-8dca-abaa03adccda","name":"When Linked with EntraID","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adusrmappinglist"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"ADUsrMappingCollection\": {\n        \"total\": 9,\n        \"rows\": [\n            {\n                \"columnm\": \"userID\",\n                \"adcolumnm\": \"none\"\n            },\n            {\n                \"columnm\": \"userName\",\n                \"adcolumnm\": \"displayName\"\n            },\n            {\n                \"columnm\": \"email\",\n                \"adcolumnm\": \"mail\"\n            },\n            {\n                \"columnm\": \"phone\",\n                \"adcolumnm\": \"businessPhones\"\n            },\n            {\n                \"columnm\": \"expiry_datetime\",\n                \"adcolumnm\": \"employeeLeaveDateTime\"\n            },\n            {\n                \"columnm\": \"department\",\n                \"adcolumnm\": \"department\"\n            },\n            {\n                \"columnm\": \"user_title\",\n                \"adcolumnm\": \"jobTitle\"\n            },\n            {\n                \"columnm\": \"usergroup\",\n                \"adcolumnm\": \"memberOf\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"success\",\n        \"by\": \"web\"\n    }\n}"},{"id":"91aa11b1-857a-4d01-ba7d-05fc08cee6e6","name":"When Linked with Active Directory","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adusrmappinglist"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"ADUsrMappingCollection\": {\n        \"total\": 9,\n        \"rows\": [\n            {\n                \"columnm\": \"userID\",\n                \"adcolumnm\": \"sAMAccountName\"\n            },\n            {\n                \"columnm\": \"userName\",\n                \"adcolumnm\": \"displayName\"\n            },\n            {\n                \"columnm\": \"email\",\n                \"adcolumnm\": \"mail\"\n            },\n            {\n                \"columnm\": \"phone\",\n                \"adcolumnm\": \"telephoneNumber\"\n            },\n            {\n                \"columnm\": \"expiry_datetime\",\n                \"adcolumnm\": \"accountExpires\"\n            },\n            {\n                \"columnm\": \"department\",\n                \"adcolumnm\": \"department\"\n            },\n            {\n                \"columnm\": \"user_title\",\n                \"adcolumnm\": \"title\"\n            },\n            {\n                \"columnm\": \"usergroup\",\n                \"adcolumnm\": \"distinguishedName\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"success\",\n        \"by\": \"web\"\n    }\n}"}],"_postman_id":"8c876213-aaf5-4256-bb6a-727f30227ba5"},{"name":"View AD Column List","id":"3ef86fe9-8fe9-4fe2-b2e4-c2bf7a66035a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adcolumnlist","description":"<p>Retrieve user property information used by Active Directory or EntraID.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","adcolumnlist"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"dbee8921-52a9-4f0d-8570-7bfee2c3e7fc","name":"View AD Column List","originalRequest":{"method":"GET","header":[],"url":""},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\r\n    \"List<String>\": {\r\n        \"total\": 286,\r\n        \"rows\": [\r\n            {\r\n                \"seq\": 208,\r\n                \"adcolumnm\": \"aboutMe\",\r\n                \"adtype\": \"E\"\r\n            },\r\n            {\r\n                \"seq\": 209,\r\n                \"adcolumnm\": \"accountEnabled\",\r\n                \"adtype\": \"E\"\r\n            },\r\n            {\r\n                \"seq\": 1,\r\n                \"adcolumnm\": \"accountExpires\",\r\n                \"adtype\": \"A\"\r\n            },\r\n            {\r\n                \"seq\": 2,\r\n                \"adcolumnm\": \"accountNameHistory\",\r\n                \"adtype\": \"A\"\r\n            },\r\n            {\r\n                \"seq\": 3,\r\n                \"adcolumnm\": \"aCSPolicyName\",\r\n                \"adtype\": \"A\"\r\n            },\r\n            {\r\n                \"seq\": 4,\r\n                \"adcolumnm\": \"adminCount\",\r\n                \"adtype\": \"A\"\r\n            }\r\n        ]\r\n    },\r\n    \"Response\": {\r\n        \"code\": \"0\",\r\n        \"link\": \"https://support.supremainc.com/en/support/home\",\r\n        \"message\": \"success\",\r\n        \"by\": \"web\"\r\n    },\r\n    \"ADColumnCollection\": {\r\n        \"total\": 286,\r\n        \"rows\": [\r\n            {\r\n                \"seq\": 208,\r\n                \"adcolumnm\": \"aboutMe\",\r\n                \"adtype\": \"E\"\r\n            },\r\n            {\r\n                \"seq\": 209,\r\n                \"adcolumnm\": \"accountEnabled\",\r\n                \"adtype\": \"E\"\r\n            },\r\n            {\r\n                \"seq\": 1,\r\n                \"adcolumnm\": \"accountExpires\",\r\n                \"adtype\": \"A\"\r\n            },\r\n            {\r\n                \"seq\": 2,\r\n                \"adcolumnm\": \"accountNameHistory\",\r\n                \"adtype\": \"A\"\r\n            },\r\n            {\r\n                \"seq\": 3,\r\n                \"adcolumnm\": \"aCSPolicyName\",\r\n                \"adtype\": \"A\"\r\n            },\r\n            {\r\n                \"seq\": 4,\r\n                \"adcolumnm\": \"adminCount\",\r\n                \"adtype\": \"A\"\r\n            }\r\n        ]\r\n    }\r\n}"}],"_postman_id":"3ef86fe9-8fe9-4fe2-b2e4-c2bf7a66035a"},{"name":"View AD User Group Filter List","id":"8a270792-6751-40f6-a0ab-a559d0ef5fb0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adUserGroupFilterSetting","description":"<p>View group information, subgroup information and filter information that Active Directory or EntraID is using.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","adUserGroupFilterSetting"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"bdb2e018-e1b4-4d42-83e6-27514873442e","name":"View AD User Group Filter List","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/adUserGroupFilterSetting"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"success\",\n        \"by\": \"web\"\n    },\n    \"Collection\": {\n        \"total\": 1,\n        \"rows\": [\n            {\n                \"allUserGroup\": false,\n                \"dn\": \"supremabss.onmicrosoft.com\",\n                \"lastSyncVersion\": 0,\n                \"userGroups\": [\n                    {\n                        \"id\": 0,\n                        \"dn\": \"supremabss.onmicrosoft.com\",\n                        \"name\": \"supremabss.onmicrosoft.com\",\n                        \"objectGuid\": \"supremabss.onmicrosoft.com\",\n                        \"filter\": false,\n                        \"children\": [\n                            {\n                                \"id\": 1,\n                                \"dn\": \"OU=A,DC=supremabss.onmicrosoft.com\",\n                                \"name\": \"A\",\n                                \"objectGuid\": \"e1dd535c-76ce-4181-9f3b-869eea61b0b1\",\n                                \"filter\": true,\n                                \"children\": [\n                                    {\n                                        \"id\": 2,\n                                        \"dn\": \"OU=B,OU=A,DC=supremabss.onmicrosoft.com\",\n                                        \"name\": \"B\",\n                                        \"objectGuid\": \"9745e0df-1723-4c42-8ea5-febb02865f28\",\n                                        \"filter\": true,\n                                        \"children\": [\n                                            {\n                                                \"id\": 3,\n                                                \"dn\": \"OU=C,OU=B,OU=A,DC=supremabss.onmicrosoft.com\",\n                                                \"name\": \"C\",\n                                                \"objectGuid\": \"8754dd0a-d1a6-455d-8ffc-04357322ff1e\",\n                                                \"filter\": true,\n                                                \"children\": [],\n                                                \"depth\": 3,\n                                                \"isGroup\": true\n                                            }\n                                        ],\n                                        \"depth\": 2,\n                                        \"isGroup\": true\n                                    }\n                                ],\n                                \"depth\": 1,\n                                \"isGroup\": true\n                            },\n                            {\n                                \"id\": 4,\n                                \"dn\": \"OU=Test3,DC=supremabss.onmicrosoft.com\",\n                                \"name\": \"Test3\",\n                                \"objectGuid\": \"77952318-d550-4616-b516-6a65c3f44b57\",\n                                \"filter\": true,\n                                \"children\": [],\n                                \"depth\": 1,\n                                \"isGroup\": true\n                            },\n                            {\n                                \"id\": 5,\n                                \"dn\": \"OU=Test4,DC=supremabss.onmicrosoft.com\",\n                                \"name\": \"Test4\",\n                                \"objectGuid\": \"cffad5c5-afe5-4029-a44e-4f67ba96baf9\",\n                                \"filter\": true,\n                                \"children\": [],\n                                \"depth\": 1,\n                                \"isGroup\": true\n                            },\n                            {\n                                \"id\": 6,\n                                \"dn\": \"OU=Test9,DC=supremabss.onmicrosoft.com\",\n                                \"name\": \"Test9\",\n                                \"objectGuid\": \"ea407a19-c769-4db5-b4f6-c8e2ba28fc70\",\n                                \"filter\": true,\n                                \"children\": [],\n                                \"depth\": 1,\n                                \"isGroup\": true\n                            }\n                        ],\n                        \"depth\": 0,\n                        \"isGroup\": true\n                    }\n                ],\n                \"userGroupFilters\": [\n                    {\n                        \"id\": 1,\n                        \"dn\": \"OU=A,DC=supremabss.onmicrosoft.com\",\n                        \"name\": \"A\",\n                        \"objectGuid\": \"e1dd535c-76ce-4181-9f3b-869eea61b0b1\",\n                        \"filter\": true,\n                        \"children\": [\n                            {\n                                \"id\": 2,\n                                \"dn\": \"OU=B,OU=A,DC=supremabss.onmicrosoft.com\",\n                                \"name\": \"B\",\n                                \"objectGuid\": \"9745e0df-1723-4c42-8ea5-febb02865f28\",\n                                \"filter\": true,\n                                \"children\": [\n                                    {\n                                        \"id\": 3,\n                                        \"dn\": \"OU=C,OU=B,OU=A,DC=supremabss.onmicrosoft.com\",\n                                        \"name\": \"C\",\n                                        \"objectGuid\": \"8754dd0a-d1a6-455d-8ffc-04357322ff1e\",\n                                        \"filter\": true,\n                                        \"children\": [],\n                                        \"depth\": 3,\n                                        \"isGroup\": true\n                                    }\n                                ],\n                                \"depth\": 2,\n                                \"isGroup\": true\n                            }\n                        ],\n                        \"depth\": 1,\n                        \"isGroup\": true\n                    },\n                    {\n                        \"id\": 2,\n                        \"dn\": \"OU=B,OU=A,DC=supremabss.onmicrosoft.com\",\n                        \"name\": \"B\",\n                        \"objectGuid\": \"9745e0df-1723-4c42-8ea5-febb02865f28\",\n                        \"filter\": true,\n                        \"children\": [\n                            {\n                                \"id\": 3,\n                                \"dn\": \"OU=C,OU=B,OU=A,DC=supremabss.onmicrosoft.com\",\n                                \"name\": \"C\",\n                                \"objectGuid\": \"8754dd0a-d1a6-455d-8ffc-04357322ff1e\",\n                                \"filter\": true,\n                                \"children\": [],\n                                \"depth\": 3,\n                                \"isGroup\": true\n                            }\n                        ],\n                        \"depth\": 2,\n                        \"isGroup\": true\n                    },\n                    {\n                        \"id\": 3,\n                        \"dn\": \"OU=C,OU=B,OU=A,DC=supremabss.onmicrosoft.com\",\n                        \"name\": \"C\",\n                        \"objectGuid\": \"8754dd0a-d1a6-455d-8ffc-04357322ff1e\",\n                        \"filter\": true,\n                        \"children\": [],\n                        \"depth\": 3,\n                        \"isGroup\": true\n                    },\n                    {\n                        \"id\": 4,\n                        \"dn\": \"OU=Test3,DC=supremabss.onmicrosoft.com\",\n                        \"name\": \"Test3\",\n                        \"objectGuid\": \"77952318-d550-4616-b516-6a65c3f44b57\",\n                        \"filter\": true,\n                        \"children\": [],\n                        \"depth\": 1,\n                        \"isGroup\": true\n                    },\n                    {\n                        \"id\": 5,\n                        \"dn\": \"OU=Test4,DC=supremabss.onmicrosoft.com\",\n                        \"name\": \"Test4\",\n                        \"objectGuid\": \"cffad5c5-afe5-4029-a44e-4f67ba96baf9\",\n                        \"filter\": true,\n                        \"children\": [],\n                        \"depth\": 1,\n                        \"isGroup\": true\n                    },\n                    {\n                        \"id\": 6,\n                        \"dn\": \"OU=Test9,DC=supremabss.onmicrosoft.com\",\n                        \"name\": \"Test9\",\n                        \"objectGuid\": \"ea407a19-c769-4db5-b4f6-c8e2ba28fc70\",\n                        \"filter\": true,\n                        \"children\": [],\n                        \"depth\": 1,\n                        \"isGroup\": true\n                    }\n                ]\n            }\n        ]\n    }\n}"}],"_postman_id":"8a270792-6751-40f6-a0ab-a559d0ef5fb0"},{"name":"Check EntraID SSO Login Setting","id":"9f321def-667f-47e5-9b68-e51835201dc2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/checkEntraIDSetting","description":"<p>Checks whether Entra ID SSO Login is enabled.  </p>\n<p>If the <strong>\"BioStar 2 Login with Entra ID\"</strong> option is enabled in the Directory Integration settings, the returned value is <code>'E'</code>. If it is disabled (default), the value is <code>'D'</code>.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","setting","checkEntraIDSetting"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"76d5662c-a1a5-49b0-a842-3c01eaa9c1de","name":"Disabled","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/checkEntraIDSetting"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": \"0\",\n    \"link\": \"https://support.supremainc.com/en/support/home\",\n    \"message\": \"D\",\n    \"by\": \"web\"\n}"},{"id":"76955843-9e53-4773-8646-4cbb885b3bb0","name":"Enabled","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/setting/checkEntraIDSetting"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":""}],"cookie":[],"responseTime":null,"body":"{\n    \"code\": \"0\",\n    \"link\": \"https://support.supremainc.com/en/support/home\",\n    \"message\": \"E\",\n    \"by\": \"web\"\n}"}],"_postman_id":"9f321def-667f-47e5-9b68-e51835201dc2"}],"id":"e94f538a-af3b-465e-bcff-774d64af1d40","_postman_id":"e94f538a-af3b-465e-bcff-774d64af1d40","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Email Setting","item":[{"name":"View Email Setting","id":"311f4d2c-2a84-4a27-91b7-2df0ba0f53a0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"body":{"mode":"raw","raw":"","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting_email","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting_email"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"311f4d2c-2a84-4a27-91b7-2df0ba0f53a0"},{"name":"Create Email Setting (Visual Face / QR)","id":"3eaf1c0e-3c60-443b-9a9f-edd7dfb6854b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"VisualFace\",\r\n    \"company_name\": \"Oddbit\",\r\n    \"company_logo\": \"\",\r\n    \"admin_contact\": \"Hello\",\r\n    \"use_setting\": \"1\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting_email?email_type=1","description":"<p>This API is used to set email template for Visual Face and BioStar 2 QR.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>title</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the title of the email.</td>\n</tr>\n<tr>\n<td>company_name</td>\n<td>String</td>\n<td>N</td>\n<td>Enter the company name.</td>\n</tr>\n<tr>\n<td>company_logo</td>\n<td>Base64</td>\n<td>N</td>\n<td>Supported image file formats are GIF, JPG, JPEG, JPE, JFIF, PNG.  <br />Supported image file size is up to 5MB.</td>\n</tr>\n<tr>\n<td>admin_contact</td>\n<td>String</td>\n<td>N</td>\n<td>Enter the contact information of the person in charge.</td>\n</tr>\n<tr>\n<td>use_setting</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>To use the enrollment set it as Use. If you set it as Not Use, BioStar 2 will be unable to send the visual face mobile enrollment link or QR to users.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting_email"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>1:Visual face mobile enrollment contents, 2:QR credential contents</p>\n","type":"text/plain"},"key":"email_type","value":"1"}],"variable":[]}},"response":[],"_postman_id":"3eaf1c0e-3c60-443b-9a9f-edd7dfb6854b"},{"name":"Update Email Setting (Visual Face / QR)","id":"c7317225-67bc-4e16-9709-db250eec1d9a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"title\": \"VisualFace\",\r\n    \"company_name\": \"Oddbit\",\r\n    \"company_logo\": \"\",\r\n    \"admin_contact\": \"Hello\",\r\n    \"use_setting\": \"1\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting_email?email_type=1","description":"<p>This API is used to set email template for Visual Face and BioStar 2 QR.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>title</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the title of the email.</td>\n</tr>\n<tr>\n<td>company_name</td>\n<td>String</td>\n<td>N</td>\n<td>Enter the company name.</td>\n</tr>\n<tr>\n<td>company_logo</td>\n<td>Base64</td>\n<td>N</td>\n<td>Supported image file formats are GIF, JPG, JPEG, JPE, JFIF, PNG.  <br />Supported image file size is up to 5MB.</td>\n</tr>\n<tr>\n<td>admin_contact</td>\n<td>String</td>\n<td>N</td>\n<td>Enter the contact information of the person in charge.</td>\n</tr>\n<tr>\n<td>use_setting</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>To use the enrollment set it as Use. If you set it as Not Use, BioStar 2 will be unable to send the visual face mobile enrollment link or QR to users.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting_email"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>1:Visual face mobile enrollment contents, 2:QR credential contents</p>\n","type":"text/plain"},"key":"email_type","value":"1"}],"variable":[]}},"response":[],"_postman_id":"c7317225-67bc-4e16-9709-db250eec1d9a"},{"name":"View SMTP Setting","id":"32dbb4f2-445e-4d5d-92de-0d303b69a541","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/setting/alarm_smtps","description":"<p>This API is used to view the SMTP (Simple Mail Transfer Protocol) for sending emails.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","alarm_smtps"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"32dbb4f2-445e-4d5d-92de-0d303b69a541"},{"name":"Create SMTP Setting","id":"2349937d-8e16-4e79-87cb-9edb0a2251f9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AlarmSmtp\": {\r\n        \"name\": \"smtp.gmail.com\",\r\n        \"smtp_server_addr\": \"smtp.gmail.com\",\r\n        \"smtp_server_port\": \"465\",\r\n        \"smtp_username\": \"shin6518@gmail.com\",\r\n        \"smtp_password\": \"whhdsfysgrwffcxb\",\r\n        \"smtp_security\": \"2\",\r\n        \"smtp_sender\": \"shin6518@gmail.com\",\r\n        \"description\": \"gmail\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting/alarm_smtps","description":"<p>This API is used to set the SMTP (Simple Mail Transfer Protocol) for sending emails.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the SMTP server name.</td>\n</tr>\n<tr>\n<td>smtp_server_addr</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the SMTP server address. SMTP server address is the same form as 'smtp. Email Service Provider.com', and you can check it on the settings screen of email to use as an SMTP.</td>\n</tr>\n<tr>\n<td>smtp_server_port</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the port number of the SMTP server. you can check it on the settings screen of email to use as an SMTP.</td>\n</tr>\n<tr>\n<td>smtp_username</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the account of the SMTP service.  <br /></td>\n</tr>\n<tr>\n<td>smtp_password</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the password of the SMTP service.</td>\n</tr>\n<tr>\n<td>smtp_security</td>\n<td>String</td>\n<td>Y</td>\n<td>Select security type.</td>\n</tr>\n<tr>\n<td>smtp_sender</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the email address of the sender.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter the description.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Note:</p>\n<ul>\n<li>When using the SMTP server as an email account with two-factor authentication and change the password of the account, note the following: Once you set up two-factor authentication, the SMTP password is the same as the app password generated using two-factor authentication, not the password of the email account. At this time, if the password of the email account is changed, the app<br />password is automatically deleted, and the SMTP password is no longer available. When changing the password for the email account, regenerate the app password and then set the SMTP password again.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","alarm_smtps"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2349937d-8e16-4e79-87cb-9edb0a2251f9"},{"name":"Update SMTP Setting","id":"cd4c003f-2fb2-4b30-be26-b7e846a1c5bf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AlarmSmtp\": {\r\n        \"name\": \"smtp.gmail.com\",\r\n        \"smtp_server_addr\": \"smtp.gmail.com\",\r\n        \"smtp_server_port\": \"465\",\r\n        \"smtp_username\": \"shin6518@gmail.com\",\r\n        \"smtp_password\": \"whhdsfysgrwffcxb\",\r\n        \"smtp_security\": \"2\",\r\n        \"smtp_sender\": \"shin6518@gmail.com\",\r\n        \"description\": \"gmail\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting/alarm_smtps/:id","description":"<p>This API is used to update the SMTP (Simple Mail Transfer Protocol) for sending emails.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the SMTP server name.</td>\n</tr>\n<tr>\n<td>smtp_server_addr</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the SMTP server address. SMTP server address is the same form as 'smtp. Email Service Provider.com', and you can check it on the settings screen of email to use as an SMTP.</td>\n</tr>\n<tr>\n<td>smtp_server_port</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the port number of the SMTP server. you can check it on the settings screen of email to use as an SMTP.</td>\n</tr>\n<tr>\n<td>smtp_username</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the account of the SMTP service.  <br /></td>\n</tr>\n<tr>\n<td>smtp_password</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the password of the SMTP service.</td>\n</tr>\n<tr>\n<td>smtp_security</td>\n<td>String</td>\n<td>Y</td>\n<td>Select security type.</td>\n</tr>\n<tr>\n<td>smtp_sender</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter the email address of the sender.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter the description.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Note:</p>\n<ul>\n<li>When using the SMTP server as an email account with two-factor authentication and change the password of the account, note the following: Once you set up two-factor authentication, the SMTP password is the same as the app password generated using two-factor authentication, not the password of the email account. At this time, if the password of the email account is changed, the app<br />password is automatically deleted, and the SMTP password is no longer available. When changing the password for the email account, regenerate the app password and then set the SMTP password again.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","alarm_smtps",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the SMTP setting which will be updated.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"cd4c003f-2fb2-4b30-be26-b7e846a1c5bf"},{"name":"Test SMTP Connection","id":"e46eaff0-5268-4441-a23a-5a7c7012083c","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"target_email\": \"email address here\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/test_smtp_connection","description":"<p>This API is used to test SMTP connection by sending an email to the specified address.</p>\n<p>Do note that the address input here need to be a complete email address.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","test_smtp_connection"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"e46eaff0-5268-4441-a23a-5a7c7012083c"}],"id":"384f54d9-7e05-478f-b22d-85b2195d5f8c","_postman_id":"384f54d9-7e05-478f-b22d-85b2195d5f8c","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Preference","item":[{"name":"View","id":"6e55d665-b3f0-46a3-ac02-d1c877754934","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/preferences/:id","description":"<p>This API is used to view preference information.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","preferences",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the user which preference will be viewed.</p>\n","type":"text/plain"},"type":"any","value":"1","key":"id"}]}},"response":[],"_postman_id":"6e55d665-b3f0-46a3-ac02-d1c877754934"},{"name":"Add","id":"b4541f55-76e2-4976-88a3-850023f3fd73","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Preference\": {\r\n        \"language\": \"en\",\r\n        \"date_format\": \"yyyy/MM/dd\",\r\n        \"time_format\": \"HH:mm\",\r\n        \"time_long_term_format\": \"HH:mm:ss\",\r\n        \"time_zone\": \"25\",\r\n        \"dst1\": \"0\",\r\n        \"dst2\": \"0\",\r\n        \"depend_on_os\": true,\r\n        \"user_id\": {\r\n            \"user_id\": \"6\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/preferences","description":"<p>This API is used to add preference configuration.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>language</td>\n<td>String</td>\n<td>N</td>\n<td>Preference language. Example: ko, en</td>\n</tr>\n<tr>\n<td>date_format</td>\n<td>String</td>\n<td>N</td>\n<td>Format of the date</td>\n</tr>\n<tr>\n<td>time_format</td>\n<td>String</td>\n<td>N</td>\n<td>Format of the time</td>\n</tr>\n<tr>\n<td>time_long_term_format</td>\n<td>String</td>\n<td>N</td>\n<td>Format for long term time</td>\n</tr>\n<tr>\n<td>time_zone</td>\n<td>String</td>\n<td>N</td>\n<td>UTC-12 0  <br />UTC-11 1  <br />UTC-10 2  <br />UTC-9.30 3-1  <br />UTC-9 3  <br />UTC-8 4  <br />UTC-7 5  <br />UTC-6 6  <br />UTC-5 7  <br />UTC-4.30 8-1  <br />UTC-4 8  <br />UTC-3.30 9  <br />UTC-3 10  <br />UTC-2 11  <br />UTC-1 12  <br />UTC 13  <br />UTC+1 14  <br />UTC+2 15  <br />UTC+3 16  <br />UTC+3.30 17  <br />UTC+4 18  <br />UTC+4.30 19  <br />UTC+5 20  <br />UTC+5.30 21  <br />UTC+5.45 22  <br />UTC+6 23  <br />UTC+6.30 23+1  <br />UTC+7 24  <br />UTC+8 25  <br />UTC+8.30 25+1  <br />UTC+8.45 25+2  <br />UTC+9 26  <br />UTC+9.30 27  <br />UTC+10 28  <br />UTC+10.30 28+1  <br />UTC+11 29  <br />UTC+12 30  <br />UTC+12.45 30+1  <br />UTC+13 31  <br />UTC+14 32</td>\n</tr>\n<tr>\n<td>dst1</td>\n<td>String</td>\n<td>N</td>\n<td>ID of the first Daylight Saving Time applied. 0 for none.</td>\n</tr>\n<tr>\n<td>dst2</td>\n<td>String</td>\n<td>N</td>\n<td>ID of the second Daylight Saving Time applied. 0 for none.</td>\n</tr>\n<tr>\n<td>depend_on_os</td>\n<td>Boolean</td>\n<td>N</td>\n<td></td>\n</tr>\n<tr>\n<td>user_id:user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>ID of the user</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","preferences"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"b4541f55-76e2-4976-88a3-850023f3fd73"},{"name":"Update","id":"61a5375c-bb21-45da-9648-d4f56ecf8aea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Preference\": {\r\n        \"language\": \"en\",\r\n        \"date_format\": \"yyyy/MM/dd\",\r\n        \"time_format\": \"HH:mm\",\r\n        \"time_long_term_format\": \"HH:mm:ss\",\r\n        \"time_zone\": \"25\",\r\n        \"dst1\": \"0\",\r\n        \"dst2\": \"0\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/preferences/:id","description":"<p>This API is used to update preference configuration.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>language</td>\n<td>String</td>\n<td>N</td>\n<td>Preference language. Example: ko, en</td>\n</tr>\n<tr>\n<td>date_format</td>\n<td>String</td>\n<td>N</td>\n<td>Format of the date</td>\n</tr>\n<tr>\n<td>time_format</td>\n<td>String</td>\n<td>N</td>\n<td>Format of the time</td>\n</tr>\n<tr>\n<td>time_long_term_format</td>\n<td>String</td>\n<td>N</td>\n<td>Format for long term time</td>\n</tr>\n<tr>\n<td>time_zone</td>\n<td>String</td>\n<td>N</td>\n<td>UTC-12 0  <br />UTC-11 1  <br />UTC-10 2  <br />UTC-9.30 3-1  <br />UTC-9 3  <br />UTC-8 4  <br />UTC-7 5  <br />UTC-6 6  <br />UTC-5 7  <br />UTC-4.30 8-1  <br />UTC-4 8  <br />UTC-3.30 9  <br />UTC-3 10  <br />UTC-2 11  <br />UTC-1 12  <br />UTC 13  <br />UTC+1 14  <br />UTC+2 15  <br />UTC+3 16  <br />UTC+3.30 17  <br />UTC+4 18  <br />UTC+4.30 19  <br />UTC+5 20  <br />UTC+5.30 21  <br />UTC+5.45 22  <br />UTC+6 23  <br />UTC+6.30 23+1  <br />UTC+7 24  <br />UTC+8 25  <br />UTC+8.30 25+1  <br />UTC+8.45 25+2  <br />UTC+9 26  <br />UTC+9.30 27  <br />UTC+10 28  <br />UTC+10.30 28+1  <br />UTC+11 29  <br />UTC+12 30  <br />UTC+12.45 30+1  <br />UTC+13 31  <br />UTC+14 32</td>\n</tr>\n<tr>\n<td>dst1</td>\n<td>String</td>\n<td>N</td>\n<td>ID of the first Daylight Saving Time applied. 0 for none.</td>\n</tr>\n<tr>\n<td>dst2</td>\n<td>String</td>\n<td>N</td>\n<td>ID of the second Daylight Saving Time applied. 0 for none.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","preferences",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"1","key":"id"}]}},"response":[],"_postman_id":"61a5375c-bb21-45da-9648-d4f56ecf8aea"}],"id":"ec44287b-506e-4ea7-a11f-3b193bdff0cd","_postman_id":"ec44287b-506e-4ea7-a11f-3b193bdff0cd","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"View BioStar Settings","id":"359faf5b-fea5-4f00-8f99-75c0d1ccfb90","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/setting/biostar","description":"<p>This API is used to view BioStar 2 settings.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","biostar"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"359faf5b-fea5-4f00-8f99-75c0d1ccfb90"},{"name":"Create Custom Field(s)","id":"1e1f7686-fcf6-4641-918e-5d08dafb188f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CustomFieldCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"order\": 5,\r\n                \"name\": \"text input box\",\r\n                \"type\": 0,\r\n                \"enable\": true\r\n            },\r\n            {\r\n                \"order\": 2,\r\n                \"name\": \"number input\",\r\n                \"type\": \"1\",\r\n                \"enable\": true\r\n            },\r\n            {\r\n                \"order\": 3,\r\n                \"name\": \"combo box\",\r\n                \"type\": \"2\",\r\n                \"data\": \"abc; def\",\r\n                \"enable\": true\r\n            },\r\n            {\r\n                \"order\": 4,\r\n                \"name\": \"file upload\",\r\n                \"type\": \"3\"\r\n            }            \r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting/custom_fields","description":"<p>This API is used to create user custom field(s) on BioStar 2.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>order</td>\n<td>Number</td>\n<td>Y</td>\n<td>Unique</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Unique</td>\n</tr>\n<tr>\n<td>type</td>\n<td>Number</td>\n<td>Y</td>\n<td>0: Text Input, 1: Number Input, 2: Combo Box, 3: File Upload.</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle true to enable custom field.</td>\n</tr>\n<tr>\n<td>data</td>\n<td>String</td>\n<td>N</td>\n<td>Combo Box options, use (;) as separator of each value.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}\n\n</code></pre>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.8:</p>\n<ul>\n<li>Added type 3 for File Upload</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","custom_fields"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"1e1f7686-fcf6-4641-918e-5d08dafb188f"},{"name":"Update Custom Field(s)","id":"8d2d685c-8247-4625-88e2-4e2b583bba00","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"CustomFieldCollection\": {\r\n        \"rows\": [\r\n            {\r\n                \"id\": \"1\",\r\n                \"order\": 1,\r\n                \"name\": \"text input box\",\r\n                \"type\": 0\r\n            },\r\n            {\r\n                \"id\": \"2\",\r\n                \"order\": 2,\r\n                \"name\": \"number input\",\r\n                \"type\": \"1\"\r\n            },\r\n            {\r\n                \"id\": \"3\",\r\n                \"order\": 3,\r\n                \"name\": \"combo box\",\r\n                \"type\": \"2\",\r\n                \"data\": \"abc; def\"\r\n            },\r\n            {\r\n                \"id\": \"4\",\r\n                \"order\": 4,\r\n                \"name\": \"file upload\",\r\n                \"type\": \"3\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting/custom_fields","description":"<p>This example shows how to update custom field.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the custom field.</td>\n</tr>\n<tr>\n<td>order</td>\n<td>Number</td>\n<td>Y</td>\n<td>Order sequence of the custom field.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the custom field.</td>\n</tr>\n<tr>\n<td>type</td>\n<td>Number</td>\n<td>Y</td>\n<td>0: Text Input, 1: Number Input, 2: Combo Box, 3: File Upload.</td>\n</tr>\n<tr>\n<td>data</td>\n<td>String</td>\n<td>N</td>\n<td>Combo Box options, use (;) as separator of each value.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"note\">Note:</h4>\n<ul>\n<li><p>The main difference between Create and Updating custom field(s) is on Update, ID needs to be specified.</p>\n</li>\n<li><p>To get the custom field's ID, use GET /api/setting/custom_fields</p>\n</li>\n<li><p>When updating a custom field when there are more than 1 custom fields, the custom fields which are not updated need to be specified since the API is using PUT method.</p>\n</li>\n</ul>\n<h4 id=\"changes\">Changes:</h4>\n<ul>\n<li><p>v2.9.8:</p>\n<ul>\n<li>Added type 3 for File Upload.</li>\n</ul>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","custom_fields"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"8d2d685c-8247-4625-88e2-4e2b583bba00"},{"name":"Delete Custom Field(s)","id":"b97490cf-881b-47c1-a699-d8d99dbe6482","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/setting/custom_fields?id","description":"<p>This API is used to delete user custom fields which recorded on BioStar 2.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","custom_fields"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>ID of the Custom Field(s) which will be deleted. Use space ( ) as separator for multiple IDs.</p>\n","type":"text/plain"},"key":"id","value":null}],"variable":[]}},"response":[],"_postman_id":"b97490cf-881b-47c1-a699-d8d99dbe6482"},{"name":"List Available Custom Field(s)","id":"864660d4-fafd-46f0-8489-f3fb371faae6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/setting/custom_fields","description":"<p>This API is used to view all available user custom fields.</p>\n<h4 id=\"response-properties\">Response Properties:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>total</td>\n<td>Number</td>\n<td>Total of Custom Fields</td>\n</tr>\n<tr>\n<td>rows</td>\n<td>Array</td>\n<td>List of Custom Fields definition</td>\n</tr>\n<tr>\n<td>rows.id</td>\n<td>Number</td>\n<td>ID of the Custom Field</td>\n</tr>\n<tr>\n<td>rows.name</td>\n<td>String</td>\n<td>Name of the Custom Field</td>\n</tr>\n<tr>\n<td>rows.type</td>\n<td>Number</td>\n<td>Type of the Custom Field.  <br />0 = Text Input  <br />1 = Number Input  <br />2 = Combo Box  <br />3 = File Upload</td>\n</tr>\n<tr>\n<td>rows.order</td>\n<td>Number</td>\n<td>Display order of the Custom Field</td>\n</tr>\n<tr>\n<td>rows.data</td>\n<td>String</td>\n<td>Only for Combo Box Type. Data for combo box options, delimited by semicolon.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","custom_fields"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"fddaf24d-3720-49e0-ba00-413eb2e7e7e4","name":"List Available Custom Field(s)","originalRequest":{"method":"GET","header":[],"url":"https://127.0.0.1/api/setting/custom_fields"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Type","value":"application/json","description":""},{"key":"Content-Length","value":"478"},{"key":"Date","value":"Mon, 17 Feb 2025 06:58:03 GMT"},{"key":"Keep-Alive","value":"timeout=5"},{"key":"Connection","value":"keep-alive"}],"cookie":[],"responseTime":null,"body":"{\n    \"CustomFieldCollection\": {\n        \"total\": \"5\",\n        \"rows\": [\n            {\n                \"id\": \"1\",\n                \"name\": \"combo box 1\",\n                \"type\": \"2\",\n                \"order\": \"1\",\n                \"data\": \"1; 2; 3\"\n            },\n            {\n                \"id\": \"3\",\n                \"name\": \"number input\",\n                \"type\": \"1\",\n                \"order\": \"2\"\n            },\n            {\n                \"id\": \"4\",\n                \"name\": \"combo box 2\",\n                \"type\": \"2\",\n                \"order\": \"3\",\n                \"data\": \"Option 1; Option 2\"\n            },\n            {\n                \"id\": \"5\",\n                \"name\": \"file upload\",\n                \"type\": \"3\",\n                \"order\": \"4\"\n            },\n            {\n                \"id\": \"2\",\n                \"name\": \"text input box\",\n                \"type\": \"0\",\n                \"order\": \"5\"\n            }\n        ]\n    },\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"}],"_postman_id":"864660d4-fafd-46f0-8489-f3fb371faae6"},{"name":"View Output Signal","id":"6aba274a-cc2d-478e-a2be-e72db0bca8b5","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/setting/output_signals","description":"<p>This API is used to view output signals which used on certain actions for setting the relay of the device to trigger in certain signals. The trigger &amp; action from the device configuration is one of them.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","output_signals"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"6aba274a-cc2d-478e-a2be-e72db0bca8b5"},{"name":"Create Output Signal","id":"9a11afe9-3a1d-4130-bcd7-00573a5a14ea","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"OutputSignal\": {\r\n        \"name\": \"TestElevatorSignal2\",\r\n        \"delay\": 0,\r\n        \"count\": 0,\r\n        \"on_duration\": 0,\r\n        \"off_duration\": 0\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting/output_signals","description":"<p>This API is used to create output signal.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the output signal</td>\n</tr>\n<tr>\n<td>delay</td>\n<td>Number</td>\n<td>N</td>\n<td>Set the signal delay</td>\n</tr>\n<tr>\n<td>count</td>\n<td>Number</td>\n<td>N</td>\n<td>Set the signal count</td>\n</tr>\n<tr>\n<td>on_duration</td>\n<td>Number</td>\n<td>N</td>\n<td>Set the signal ON duration</td>\n</tr>\n<tr>\n<td>off_duration</td>\n<td>Number</td>\n<td>N</td>\n<td>Set the signal OFF duration</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","output_signals"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"9a11afe9-3a1d-4130-bcd7-00573a5a14ea"},{"name":"Update Output Signal","id":"733664a4-9d61-42b3-822f-1d6315dcd616","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"url":"https://127.0.0.1/api/setting/output_signals/:id","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","output_signals",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the output signal which will be updated.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"733664a4-9d61-42b3-822f-1d6315dcd616"},{"name":"Delete Output Signal","id":"2776ea0d-98d2-4567-8468-71fcfffc9fc1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/setting/output_signals/:id","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","output_signals",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the output signal which will be deleted.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"2776ea0d-98d2-4567-8468-71fcfffc9fc1"},{"name":"Update Server Matching","id":"f3ecec25-b0f5-4d90-a58e-613357b9fb37","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"BioStar\": {\r\n        \"server_matching\": {\r\n            \"use-server-matching\": \"false\",\r\n            \"security-level\": 6,\r\n            \"face-security-level\": 1,\r\n            \"fast-mode\": \"true\",\r\n            \"matching-concurrency-count\": \"2\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting/biostar/server_matching","description":"<p>If server matching enabled, the user’s fingerprint will be matched from BioStar 2, not the device. The Server Matching can be used when the Advance or higher license is activated.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>use-server-matching</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Activates/Deactivates server matching.</td>\n</tr>\n<tr>\n<td>security-level</td>\n<td>Number</td>\n<td>N</td>\n<td>Configure the server matching’s security level for fingerprints. The higher the security level is set, the more the false rejection rate (FRR) can occur.</td>\n</tr>\n<tr>\n<td>face-security-level</td>\n<td>Number</td>\n<td>N</td>\n<td>Configure the server matching’s security level for faces. The higher the security level is set, the more the false rejection rate (FRR) can occur.</td>\n</tr>\n<tr>\n<td>fast-mode</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Configure the fingerprint matching speed.</td>\n</tr>\n<tr>\n<td>matching-concurrency-count</td>\n<td>Number</td>\n<td>N</td>\n<td>Configure how many matchings can be done simultaneously.  <br />Max. Simultaneous Server Matching Count depends on the PC's CPU performance.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","biostar","server_matching"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"f3ecec25-b0f5-4d90-a58e-613357b9fb37"},{"name":"Update BioStar Settings","id":"a12ff119-be40-4392-bcf9-1eba63e888ef","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"BioStar\": {\r\n        \"session_timeout\": \"216000\",\r\n        \"server_port\": \"51212\",\r\n        \"server_matching\": {\r\n            \"matching-concurrency-count\": \"2\",\r\n            \"use-server-matching\": \"false\",\r\n            \"security-level\": \"6\",\r\n            \"fast-mode\": \"true\",\r\n            \"face-security-level\": \"1\"\r\n        },\r\n        \"user_sync_method\": \"1\",\r\n        \"user_by_device_sync_method\": \"0\",\r\n        \"log_sync_method\": \"0\",\r\n        \"check_duplicate_id_at_devices\": \"0\",\r\n        \"automatic_server_upgrade\": \"0\",\r\n        \"upgrade_when\": \"0\",\r\n        \"fingerprint_format\": \"0\",\r\n        \"licese_server_addr\": \"http://license.biostar2.com\",\r\n        \"backup\": {\r\n            \"use\": \"false\",\r\n            \"cycle\": \"2\",\r\n            \"day\": \"28\",\r\n            \"weekday\": \"2\",\r\n            \"time\": \"10800\",\r\n            \"path\": \".\\\\bk\",\r\n            \"overwritable\": \"false\"\r\n        },\r\n        \"support_mobile_credential\": \"true\",\r\n        \"language\": \"en\",\r\n        \"server_addr\": \"\",\r\n        \"delete_credential_after_aoc\": \"false\",\r\n        \"secure_communication\": {\r\n            \"mode\": \"0\",\r\n            \"use_external_cert\": \"false\",\r\n            \"enable_data_encryption\": \"false\",\r\n            \"enable_db_data_encryption\": \"false\",\r\n            \"ischanged_data_encryption\": \"false\",\r\n            \"ischanged_db_data_encryption\": \"false\",\r\n            \"enable_db_encryption\": \"false\",\r\n            \"is_random_encryption_key\": \"true\",\r\n            \"is_random_hash_key\": \"true\",\r\n            \"has_encryption_key\": \"false\",\r\n            \"has_hash_key\": \"true\"\r\n        },\r\n        \"system_security\": {\r\n            \"password_strength\": \"2\",\r\n            \"use_password_update_cycle\": \"false\",\r\n            \"password_update_cycle\": \"60\",\r\n            \"use_allow_login_failed\": \"false\",\r\n            \"allow_login_failed_count\": \"5\",\r\n            \"allow_login_failed_minutes\": \"10\",\r\n            \"use_allow_password_change\": \"false\",\r\n            \"allow_password_change_count\": \"1\",\r\n            \"use_allow_simultaneous_connection\": \"true\"\r\n        },\r\n        \"web_request_timeout\": \"60\",\r\n        \"imglog_dir\": \".\\\\imagelog\\\\\",\r\n        \"websocket_cors\": \"*\",\r\n        \"enable_websocket_connection_bsSessionId\": \"false\",\r\n        \"enckey_dir\": \"C:\\\\Program Files\\\\BioStar 2(x64)\\\\util\",\r\n        \"device_event_log_skip_enroll_success_user\": \"false\",\r\n        \"http\": {\r\n            \"port\": \"80\",\r\n            \"root_path\": \"html\"\r\n        },\r\n        \"https\": {\r\n            \"use_ssl\": \"1\",\r\n            \"port\": \"443\",\r\n            \"ssl_addr\": \"192.168.1.5\",\r\n            \"server.ssl.key-store-password.use_enc\": \"1\"\r\n        },\r\n        \"cloud\": {\r\n            \"use_cloud\": \"0\",\r\n            \"server_address\": \"api.biostar2.com\",\r\n            \"http_port\": \"52000\",\r\n            \"version\": \"v2\",\r\n            \"sub_domain\": \"oddbit\",\r\n            \"email\": \"team-suprema@oddbit.id\",\r\n            \"account_id\": \"611dcbe1f3e8e50a179b105c\",\r\n            \"email_use_enc\": \"1\"\r\n        },\r\n        \"tna\": {\r\n            \"use_tna\": \"true\",\r\n            \"http_port\": \"3000\",\r\n            \"https_port\": \"3002\",\r\n            \"ngrok_port\": \"51000\"\r\n        },\r\n        \"video\": {\r\n            \"use_video\": \"true\",\r\n            \"http_port\": \"3010\",\r\n            \"https_port\": \"3012\",\r\n            \"ngrok_port\": \"52002\"\r\n        },\r\n        \"licenses\": [\r\n            {\r\n                \"product_type\": \"1\",\r\n                \"name\": \"biostar_def\",\r\n                \"available\": {\r\n                    \"ZONE\": \"false\",\r\n                    \"ELEVATOR\": \"false\",\r\n                    \"SERVER_MATCHING\": \"false\",\r\n                    \"CLOUD\": \"false\",\r\n                    \"MOBILE_CARD\": \"false\",\r\n                    \"GRAPHICMAP\": \"false\"\r\n                },\r\n                \"activated\": \"true\"\r\n            },\r\n            {\r\n                \"product_type\": \"2\",\r\n                \"name\": \"biostar_std\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"3\",\r\n                \"name\": \"biostar_tna\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"4\",\r\n                \"name\": \"biostar2_basic\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"5\",\r\n                \"name\": \"biostar2_std\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"6\",\r\n                \"name\": \"biostar2_adv\",\r\n                \"available\": {\r\n                    \"ZONE\": \"true\",\r\n                    \"ELEVATOR\": \"true\",\r\n                    \"SERVER_MATCHING\": \"true\",\r\n                    \"CLOUD\": \"true\",\r\n                    \"MOBILE_CARD\": \"true\",\r\n                    \"GRAPHICMAP\": \"true\"\r\n                },\r\n                \"activated\": \"true\",\r\n                \"customer\": \"Oddbit\",\r\n                \"expires_on\": \"permanent\"\r\n            },\r\n            {\r\n                \"product_type\": \"7\",\r\n                \"name\": \"biostar2_pro\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"8\",\r\n                \"name\": \"biostar2_ent\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"9\",\r\n                \"name\": \"biostar2_video\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"10\",\r\n                \"name\": \"biostar2_visitor\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"11\",\r\n                \"name\": \"biostar2_tna_std\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"12\",\r\n                \"name\": \"biostar2_tna_adv\",\r\n                \"activated\": \"false\"\r\n            },\r\n            {\r\n                \"product_type\": \"13\",\r\n                \"name\": \"biostar2_tna_pro\",\r\n                \"activated\": \"false\"\r\n            }\r\n        ],\r\n        \"mobile\": {\r\n            \"use_mobile_credential\": \"1\",\r\n            \"email\": \"agni@supremainc.com\",\r\n            \"password\": \"****************\",\r\n            \"mc_server_addr\": \"https://api.mc.suprema.io\",\r\n            \"mc_port\": \"443\",\r\n            \"siteid\": \"6482\",\r\n            \"site_type\": \"REGULAR\"\r\n        },\r\n        \"log_level\": {\r\n            \"enable\": \"true\",\r\n            \"log_retain_days\": \"60\",\r\n            \"level\": \"none\",\r\n            \"filter\": {\r\n                \"SYS\": \"info\",\r\n                \"DBG\": \"none\",\r\n                \"NET\": \"info\",\r\n                \"WEB\": \"info\",\r\n                \"SQL\": \"none\",\r\n                \"WSS\": \"none\"\r\n            }\r\n        },\r\n        \"server_ip_list\": [\r\n            {\r\n                \"ip\": \"192.168.1.5\",\r\n                \"version\": \"v4\"\r\n            }\r\n        ],\r\n        \"use_alphanumeric\": \"false\",\r\n        \"is_set_new_administrator_password\": \"false\",\r\n        \"ischanged_db_data_encryption\": \"false\",\r\n        \"ischanged_data_encryption\": \"false\",\r\n        \"eventlog\": {\r\n            \"event_log_retain_days\": \"60\",\r\n            \"active\": \"false\"\r\n        },\r\n        \"log\": {\r\n            \"log_retain_days\": \"60\",\r\n            \"cron\": \"0 0 0 * * *\",\r\n            \"path\": \"logs\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/setting/biostar","description":"<p>This API is used to update various BioStar 2 settings.</p>\n<p>BODY Parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>session_timeout</td>\n<td>String</td>\n<td>N</td>\n<td>Set a session timeout period. If there is no activity on BioStar 2 for the set time after logging in, the session is logged out automatically. This value represents second.</td>\n</tr>\n<tr>\n<td>server_port</td>\n<td>String</td>\n<td>N</td>\n<td>Port number that BioStar 2 uses.</td>\n</tr>\n<tr>\n<td>server_matching  <br />&gt;use-server-matching</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Activates/Deactivates server matching. Toggle true to activate.</td>\n</tr>\n<tr>\n<td>&gt;matching-concurrency-count</td>\n<td>Number</td>\n<td>N</td>\n<td>Configure how many matchings can be done simultaneously.</td>\n</tr>\n<tr>\n<td>&gt;security-level</td>\n<td>Number</td>\n<td>N</td>\n<td>Configure the server matching’s security level for fingerprints. The higher the security level is set, the more the false rejection rate (FRR) can occur.</td>\n</tr>\n<tr>\n<td>&gt;fast-mode</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Configure the fingerprint matching speed.</td>\n</tr>\n<tr>\n<td>&gt;face-security-level</td>\n<td>Number</td>\n<td>N</td>\n<td>Configure the server matching’s security level for faces. The higher the security level is set, the more the false rejection rate (FRR) can occur.</td>\n</tr>\n<tr>\n<td>user_sync_method</td>\n<td>Number</td>\n<td>N</td>\n<td>Automatic user synchronization setting. Need to be combined with user_by_device_sync_method to use.  <br />Not Used : user_sync_method : \"0\" &amp; user_by_device_sync_method:\"0\"  <br />All Devices : user_sync_method : \"1\" &amp; user_by_device_sync_method:\"0\"  <br />All Devices (Including user update from device) : user_sync_method : \"1\" &amp; user_by_device_sync_method:\"1\"  <br />Specific Devices (Only devices belonging to the access group) : user_sync_method : \"3\" &amp; user_by_device_sync_method:\"0\"</td>\n</tr>\n<tr>\n<td>user_by_device_sync_method</td>\n<td>Number</td>\n<td>N</td>\n<td>See user_sync_method</td>\n</tr>\n<tr>\n<td>log_sync_method</td>\n<td>Number</td>\n<td>N</td>\n<td>Toggle value to 1 to set the Log Upload to manual, and 0 for automatic.</td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","biostar"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"a12ff119-be40-4392-bcf9-1eba63e888ef"},{"name":"Check BioStar 2 Version","id":"3a7410a2-69d2-4db0-bb67-b737b00d631d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/js/info.json","description":"<p>This API is used to check BioStar 2's version.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["js","info.json"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"3a7410a2-69d2-4db0-bb67-b737b00d631d"}],"id":"d2ecc875-db45-4094-91d2-9200c5c75401","_postman_id":"d2ecc875-db45-4094-91d2-9200c5c75401","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Mobile Access","item":[{"name":"Delete Mobile Access Card in Airfob Portal: Card ID","id":"9391ffd4-18f0-409d-90bf-556d7bb655d4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"MobileCollection\": {\r\n        \"mobile\": {\r\n            \"card_id\": [\r\n                \"23\",\r\n                \"24\",\r\n                \"25\"\r\n            ],\r\n            \"user_id\": []\r\n        }\r\n    }\r\n}"},"url":"https://127.0.0.1/api/v2/mobile/delete","description":"<p>This API is used to delete Mobile Access Card in Airfob Portal.</p>\n<p>There are three variations in using this API:</p>\n<ol>\n<li>Using Card ID</li>\n<li>Using User ID</li>\n<li>Using ALL parameter on User ID</li>\n</ol>\n<p>BODY Parameters in this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_id</td>\n<td>Array</td>\n<td>Y</td>\n<td>Mobile Access Card's card ID</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>Array</td>\n<td>Y</td>\n<td>ID of the user which Mobile Access Card will be removed.</td>\n</tr>\n</tbody>\n</table>\n</div><p>To delete multiple card_id or user_id, separate each value with comma (,). Ex: [\"1\", \"2\", \"3\"]</p>\n<p>Response:</p>\n<ul>\n<li>200 OK</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"failedUsers\": [],\n    \"failedCards\": [],\n    \"mobileUsers\": [],\n    \"status\": 0,\n    \"errorMessage\": \"\",\n    \"Response\": {\n        \"code\": \"0\"\n    }\n}\n\n</code></pre>\n<ul>\n<li><p>failedUsers : User information that fails after requesting to delete airfob</p>\n</li>\n<li><p>failedCards : Card information that fails after requesting to delete airfob</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","mobile","delete"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"9391ffd4-18f0-409d-90bf-556d7bb655d4"},{"name":"Delete Mobile Access Card in Airfob Portal: User ID","id":"414010d6-5657-4874-86e1-e6c9c59947ed","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"MobileCollection\": {\r\n        \"mobile\": {\r\n            \"card_id\": [],\r\n            \"user_id\": [\r\n                \"3\",\r\n                \"4\"\r\n            ]\r\n        }\r\n    }\r\n}"},"url":"https://127.0.0.1/api/v2/mobile/delete","description":"<p>This API is used to delete Mobile Access Card in Airfob Portal.</p>\n<p>There are three variations in using this API:</p>\n<ol>\n<li>Using Card ID</li>\n<li>Using User ID</li>\n<li>Using ALL parameter on User ID</li>\n</ol>\n<p>BODY Parameters in this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_id</td>\n<td>Array</td>\n<td>Y</td>\n<td>Mobile Access Card's card ID</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>Array</td>\n<td>Y</td>\n<td>ID of the user which Mobile Access Card will be removed.</td>\n</tr>\n</tbody>\n</table>\n</div><p>To delete multiple card_id or user_id, separate each value with comma (,). Ex: [\"1\", \"2\", \"3\"]</p>\n<p>Response:</p>\n<ul>\n<li>200 OK</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"failedUsers\": [],\n    \"failedCards\": [],\n    \"mobileUsers\": [\n        \"3\",\n        \"4\"\n    ],\n    \"status\": 0,\n    \"errorMessage\": \"\",\n    \"Response\": {\n        \"code\": \"0\"\n    }\n}\n\n</code></pre>\n<ul>\n<li><p>failedUsers : User information that fails after requesting to delete airfob</p>\n</li>\n<li><p>failedCards : Card information that fails after requesting to delete airfob</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","mobile","delete"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"414010d6-5657-4874-86e1-e6c9c59947ed"},{"name":"Delete Mobile Access Card in Airfob Portal: ALL on User ID","id":"3b98c2a7-f7c9-41b4-a576-ce573df43343","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"MobileCollection\": {\r\n        \"mobile\": {\r\n            \"user_id\": \"ALL\",\r\n            \"card_id\": [],\r\n            \"param\": {\r\n                \"UserIDs\": \"ALL\",\r\n                \"query\": {\r\n                    \"group_id\": 1\r\n                }\r\n            }\r\n        }\r\n    }\r\n}"},"url":"https://127.0.0.1/api/v2/mobile/delete","description":"<p>This API is used to delete Mobile Access Card in Airfob Portal.</p>\n<p>There are three variations in using this API:</p>\n<ol>\n<li>Using Card ID</li>\n<li>Using User ID</li>\n<li>Using ALL parameter on User ID</li>\n</ol>\n<p>BODY Parameters in this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>card_id</td>\n<td>Array</td>\n<td>Y</td>\n<td>Mobile Access Card's card ID</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>The use of ALL parameter will remove Airfob's Mobile Access Card from all user which have Mobile Access Card on their credential list.</td>\n</tr>\n<tr>\n<td>param:UserIDs</td>\n<td>String</td>\n<td>Y</td>\n<td>Will only be required if using ALL parameter on mobile:user_id. Default value: ALL</td>\n</tr>\n<tr>\n<td>param:query:group_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Will only be required if using ALL parameter on mobile:user_id. Default value: 1</td>\n</tr>\n</tbody>\n</table>\n</div><ul>\n<li>To delete multiple card_id or user_id, separate each value with comma (,). Ex: [\"1\", \"2\", \"3\"]</li>\n<li>This API only remove Mobile Access Card information from Airfob Portal. To remove Mobile Access credential from the user, use <code>PUT /api/users/:id</code></li>\n</ul>\n<p>Response:</p>\n<ul>\n<li>200 OK</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"failedUsers\": [],\n    \"failedCards\": [],\n    \"mobileUsers\": [\n        \"3\",\n        \"4\"\n    ],\n    \"status\": 0,\n    \"errorMessage\": \"\",\n    \"Response\": {\n        \"code\": \"0\"\n    }\n}\n\n</code></pre>\n<ul>\n<li>failedUsers : User information that fails after requesting to delete airfob</li>\n<li>failedCards : Card information that fails after requesting to delete airfob</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","mobile","delete"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"3b98c2a7-f7c9-41b4-a576-ce573df43343"},{"name":"Create Mobile Access Card in Airfob Portal","id":"2561af5d-1743-45e3-aacf-7f33d26d8987","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"MobileCollection\": {\r\n        \"mobile\": {\r\n            \"user_id\": [\r\n                \"3\"\r\n            ],\r\n            \"name\": [\r\n                \"test2\"\r\n            ],\r\n            \"title\": [\r\n                null\r\n            ],\r\n            \"department\": [\r\n                null\r\n            ],\r\n            \"phone\": [\r\n                null\r\n            ],\r\n            \"email\": [\r\n                \"test2@suprema.com\"\r\n            ],\r\n            \"portraitData\": [\r\n                null\r\n            ],\r\n            \"card_id\": [\r\n                \"2\"\r\n            ],\r\n            \"startDate\": [\r\n                1703563320000\t\r\n            ],\r\n            \"endDate\": [\r\n                1703649720000\r\n            ],\r\n            \"startTime\": [\r\n                978274800000\r\n            ],\r\n            \"endTime\": [\r\n                1924959540000\r\n            ],\r\n            \"issueCount\": [\r\n                1\r\n            ],\r\n            \"duressMask\": [\r\n                null\r\n            ],\r\n            \"useAlphanumericID\": [\r\n                0\r\n            ],\r\n            \"cardAuthModeEx\": [\r\n                null\r\n            ],\r\n            \"pin\": [\r\n                null\r\n            ],\r\n            \"accessGroupId\": [\r\n                null\r\n            ],\r\n            \"mobileCardType\": [\r\n                \"4\"\r\n            ]\r\n        }\r\n    }\r\n}"},"url":"https://127.0.0.1/api/v2/mobile","description":"<p>This API is used to create Mobile Access Card in Airfob Portal.</p>\n<p><strong>BODY Parameters on this API:</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>User ID</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>N</td>\n<td>User Name</td>\n</tr>\n<tr>\n<td>title</td>\n<td>String</td>\n<td>N</td>\n<td>User's Title</td>\n</tr>\n<tr>\n<td>department</td>\n<td>String</td>\n<td>N</td>\n<td>Department Name</td>\n</tr>\n<tr>\n<td>phone</td>\n<td>String</td>\n<td>N</td>\n<td>Phone Number</td>\n</tr>\n<tr>\n<td>email</td>\n<td>String</td>\n<td>Y</td>\n<td>Email</td>\n</tr>\n<tr>\n<td>portraitData</td>\n<td>String</td>\n<td>N</td>\n<td>Photo encoding data. Base64.</td>\n</tr>\n<tr>\n<td>card_id</td>\n<td>String</td>\n<td>Y</td>\n<td>Card ID</td>\n</tr>\n<tr>\n<td>startDate</td>\n<td>Timestamp</td>\n<td>Y - Dynamic Site</td>\n<td>Start Date for Dynamic Site</td>\n</tr>\n<tr>\n<td>endDate</td>\n<td>Timestamp</td>\n<td>Y - Dynamic Site</td>\n<td>End Date for Dynamic Site</td>\n</tr>\n<tr>\n<td>startTime</td>\n<td>Timestamp</td>\n<td>Y</td>\n<td>User period start date</td>\n</tr>\n<tr>\n<td>endTime</td>\n<td>Timestamp</td>\n<td>Y</td>\n<td>User period end date</td>\n</tr>\n<tr>\n<td>issueCount</td>\n<td>Number</td>\n<td>Y - ToM</td>\n<td>ToM card issue round</td>\n</tr>\n<tr>\n<td>duressMask</td>\n<td>String</td>\n<td>N</td>\n<td>Duress value</td>\n</tr>\n<tr>\n<td>useAlphanumericID</td>\n<td>Number</td>\n<td>N</td>\n<td>0: Numeric  <br />1: Alphanumeric</td>\n</tr>\n<tr>\n<td>cardAuthModeEx</td>\n<td>String</td>\n<td>N</td>\n<td>See below</td>\n</tr>\n<tr>\n<td>pin</td>\n<td></td>\n<td>N</td>\n<td>PIN number</td>\n</tr>\n<tr>\n<td>accessGroupId</td>\n<td></td>\n<td>N</td>\n<td>Access Group ID</td>\n</tr>\n<tr>\n<td>mobileCardType</td>\n<td></td>\n<td>Y</td>\n<td>4: CSN Mobile  <br />14: ToM_AoC  <br />15: ToM_SCC</td>\n</tr>\n</tbody>\n</table>\n</div><ul>\n<li>When creating mobile access cards, Airfob portal sites are divided into regular and dynamic</li>\n<li>The startDate and endDate fields are used when the sites are dynamic sites</li>\n</ul>\n<p><strong>ToM</strong></p>\n<ul>\n<li>ToM uses Extend mode for personal authentication mode when creating a card</li>\n<li>If another device supports ToM in the future, a value mapped to cardAuthMode (standard) and cardAuthModeEx (extend) should be added for compatibility with devices that do not support Extend</li>\n<li>In API, if you put in the cardAuthModeEx value, the server internally maps the cardAuthMode value</li>\n</ul>\n<p><strong>Card AuthMode Mapping Table:</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>cardAuthModeEx</strong></th>\n<th><strong>cardAuthMode</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>21 - Card</td>\n<td>2 - Card only</td>\n</tr>\n<tr>\n<td>22 - Card + Face</td>\n<td>3 - Card + Fingerprint</td>\n</tr>\n<tr>\n<td>23 - Card + Fingerprint</td>\n<td>3 - Card + Fingerprint</td>\n</tr>\n<tr>\n<td>24 - Card + PIN</td>\n<td>4 - Card + PIN</td>\n</tr>\n<tr>\n<td>25 - Card + Face or Fingerprint</td>\n<td>5 - Card + Fingerprint or PIN</td>\n</tr>\n<tr>\n<td>26 - Card + Face or PIN</td>\n<td>5 - Card + Fingerprint or PIN</td>\n</tr>\n<tr>\n<td>27 - Card + Fingerprint or PIN</td>\n<td>5 - Card + Fingerprint or PIN</td>\n</tr>\n<tr>\n<td>28 - Card + Face or Fingerprint or PIN</td>\n<td>5 - Card + Fingerprint or PIN</td>\n</tr>\n<tr>\n<td>29 - Card + Face + Fingerprint</td>\n<td>6 - Card + Fingerprint + PIN</td>\n</tr>\n<tr>\n<td>30 - Card + Face + PIN</td>\n<td>6 - Card + Fingerprint + PIN</td>\n</tr>\n<tr>\n<td>31 - Card + Fingerprint + Face</td>\n<td>6 - Card + Fingerprint + PIN</td>\n</tr>\n<tr>\n<td>32 - Card + Fingerprint + PIN</td>\n<td>6 - Card + Fingerprint + PIN</td>\n</tr>\n<tr>\n<td>33 - Card + Face or Fingerprint + PIN</td>\n<td>6 - Card + Fingerprint + PIN</td>\n</tr>\n<tr>\n<td>34 - Card + Face + Fingerprint or PIN</td>\n<td>6 - Card + Fingerprint + PIN</td>\n</tr>\n<tr>\n<td>35 - Card + Fingerprint + Face or PIN</td>\n<td>6 - Card + Fingerprint + PIN</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Response:</strong><br />200 OK</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"MobileCollection\": {\n    \"listMobile\": [\n      {\n        \"apisnddt\": \"2023-12-26T04:03:17.382Z\",\n        \"userid\": \"2\",\n        \"crdid\": \"2\",\n        \"portalrslt\": \"\"\n      }\n    ],\n    \"recordMobile\": [\n      {\n        \"number\": \"2\",\n        \"status\": \"INACTIVE\",\n        \"cardType\": \"REGULAR\",\n        \"startDate\": \"0\",\n        \"endDate\": \"253402300799000\",\n        \"startTime\": \"978274800000\",\n        \"endTime\": \"1924959540000\",\n        \"name\": \"test2\",\n        \"department\": \"\",\n        \"title\": \"\",\n        \"issueCount\": \"1\",\n        \"cardAuthMode\": \"2\",\n        \"cardAuthModeEx\": \"21\",\n        \"mobileCardType\": \"4\"\n      }\n    ]\n  },\n  \"Response\": {\n    \"code\": \"0\"\n  }\n}\n\n</code></pre>\n<p><strong>Response Description:</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>apisnddt</td>\n<td>API send time</td>\n</tr>\n<tr>\n<td>userid</td>\n<td>User ID</td>\n</tr>\n<tr>\n<td>crdid</td>\n<td>Card ID</td>\n</tr>\n<tr>\n<td>portalrslt</td>\n<td>Not used</td>\n</tr>\n<tr>\n<td>number</td>\n<td>Card ID</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Sie status</td>\n</tr>\n<tr>\n<td>cardType</td>\n<td>Site type (Regular or Dynamic)</td>\n</tr>\n<tr>\n<td>startDate</td>\n<td>Start Date for Dynamic Site</td>\n</tr>\n<tr>\n<td>endDate</td>\n<td>End Date for Dynamic Site</td>\n</tr>\n<tr>\n<td>startTime</td>\n<td>User period start date</td>\n</tr>\n<tr>\n<td>endTime</td>\n<td>User period end date</td>\n</tr>\n<tr>\n<td>name</td>\n<td>User name</td>\n</tr>\n<tr>\n<td>department</td>\n<td>Department name</td>\n</tr>\n<tr>\n<td>title</td>\n<td>User's title</td>\n</tr>\n<tr>\n<td>issueCount</td>\n<td>ToM card issue round</td>\n</tr>\n<tr>\n<td>cardAuthMode</td>\n<td>Card standard AuthMode value (See ToM description above)</td>\n</tr>\n<tr>\n<td>cardAuthModeEx</td>\n<td>Card extended AuthMode value (See ToM description above)</td>\n</tr>\n<tr>\n<td>mobileCardType</td>\n<td>4: CSN Mobile  <br />14: ToM_AoC  <br />15: ToM_SCC</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","mobile"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2561af5d-1743-45e3-aacf-7f33d26d8987"},{"name":"View Deleted CSN Mobile","id":"5a08d497-bf1e-4372-b69f-ef96c14e3143","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/cards/mobile/search?limit=50&offset=0&search_type=DELETED_CSN_MOBILE","description":"<p>This API is available starting from BioStar 2 version 2.9.8.</p>\n<p>It is used to fetch CSN Mobile information deleted from the list.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"CardCollection\" : {\n    \"rows\" : [ {\n      \"id\" : \"11\",\n      \"card_id\" : \"1234\",\n      \"user_id\" : \"12\",\n      \"user_name\" : \"test3\",\n      \"display_card_id\" : \"1234\",\n      \"card_type\" : {\n        \"id\" : 4,\n        \"name\" : \"CSN Mobile\",\n        \"type\" : 4\n      }\n    }, {\n      \"id\" : \"12\",\n      \"card_id\" : \"5678\",\n      \"user_id\" : \"13\",\n      \"user_name\" : \"test4\",\n      \"display_card_id\" : \"5678\",\n      \"card_type\" : {\n        \"id\" : 4,\n        \"name\" : \"CSN Mobile\",\n        \"type\" : 4\n      }\n    }, {\n      \"id\" : \"15\",\n      \"card_id\" : \"2222\",\n      \"user_id\" : \"16\",\n      \"user_name\" : \"test7\",\n      \"display_card_id\" : \"2222\",\n      \"card_type\" : {\n        \"id\" : 4,\n        \"name\" : \"CSN Mobile\",\n        \"type\" : 4\n      }\n    } ],\n    \"total\" : \"3\"\n  },\n  \"Response\" : {\n    \"code\" : \"0\"\n  }\n}\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","cards","mobile","search"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Limit the number of responses by n records. Remove this parameter to view all.</p>\n","type":"text/plain"},"key":"limit","value":"50"},{"description":{"content":"<p>Offset the response shown by n records.</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"description":{"content":"<p>Filter the response by card type (DELETED_CSN_MOBILE).</p>\n","type":"text/plain"},"key":"search_type","value":"DELETED_CSN_MOBILE"}],"variable":[]}},"response":[],"_postman_id":"5a08d497-bf1e-4372-b69f-ef96c14e3143"},{"name":"Delete CSN Mobile from Database","id":"29bdcaee-1610-4564-804e-17ab4899ee26","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/v2/cards/mobile/enable?id=18,19,20","description":"<p>This API is available starting from BioStar 2 version 2.9.8.</p>\n<p>It is used to delete CSN Mobile information from the database.</p>\n<h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"code\": \"0\"\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","cards","mobile","enable"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Card UID value, separate using comma (,). Use asterisk (*) to select all.</p>\n","type":"text/plain"},"key":"id","value":"18,19,20"}],"variable":[]}},"response":[],"_postman_id":"29bdcaee-1610-4564-804e-17ab4899ee26"},{"name":"Count Deleted CSN Mobile","id":"eb1b5929-5725-4a12-b591-4c96bc31ef39","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"cardUids\": \"11,12,13,16,17\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/cards/mobile/count","description":"<p>This API is available starting from BioStar 2 version 2.9.8.</p>\n<p>It is used to count deleted CSN Mobile information.</p>\n<h4 id=\"body-parameter\">BODY Parameter:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>cardUids</td>\n<td>String</td>\n<td>Y</td>\n<td>List Mobile Card UID(s) which will be counted.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-example\">Response Example:</h4>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"CardCollection\" : {\n    \"count\" : 2\n  },\n  \"Response\" : {\n    \"code\" : \"0\"\n  }\n}\n\n</code></pre>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","cards","mobile","count"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"eb1b5929-5725-4a12-b591-4c96bc31ef39"}],"id":"6415fd09-10f9-4529-b00a-444a5d490213","_postman_id":"6415fd09-10f9-4529-b00a-444a5d490213","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Events","item":[{"name":"View Event Types","id":"d54843e3-6ce2-4ddc-94f4-0da88334c304","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/event_types?is_break_glass=false&setting_alert=true&setting_all=true","description":"<p>This API is used for listing event types recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","event_types"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Toggle true to list events that users have manually changed the name of. Toggle other parameters to false for this to work.</p>\n","type":"text/plain"},"key":"is_break_glass","value":"false"},{"description":{"content":"<p>Toggle true to list events which will trigger alert. Marked by 'alertable' parameter on the event. 'enable_alert' is used for marking which event will show a pop up notice on Bio Star 2.</p>\n","type":"text/plain"},"key":"setting_alert","value":"true"},{"description":{"content":"<p>Toggle true to list all events recorded on database.</p>\n","type":"text/plain"},"key":"setting_all","value":"true"}],"variable":[]}},"response":[],"_postman_id":"d54843e3-6ce2-4ddc-94f4-0da88334c304"},{"name":"Download Events Exported CSV","id":"6495f56c-cea9-4124-aa13-700d33344961","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/download/:exported_file","description":"<p>This API is used to download Events exported .csv from BioStar 2 Server.</p>\n<p>Use the filename which resulted from POST /api/events/export</p>\n<p>Put the filename to download on the PATH of the API.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["download",":exported_file"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>File name which will be downloaded</p>\n","type":"text/plain"},"type":"any","value":"Report_20220204T165145.csv","key":"exported_file"}]}},"response":[],"_postman_id":"6495f56c-cea9-4124-aa13-700d33344961"},{"name":"Search Events","id":"95c58101-69b4-45ab-b12d-d3b389964075","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"limit\": 20,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2022-03-01T15:00:00.000Z\",\r\n                    \"2024-03-02T16:59:59.000Z\"\r\n                ]\r\n            },\r\n            {\r\n                \"column\": \"id\",\r\n                \"operator\": 1,\r\n                \"values\": [\r\n                    \"60491\"\r\n                ]\r\n            },            \r\n            {\r\n                \"column\": \"user_id.user_id\",\r\n                \"operator\": 0,\r\n                \"values\": [\r\n                    \"2\"\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"descending\": true\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/events/search","description":"<p>This API is used to view events registered on BioStar 2.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>Limit the response records by the value stated on this parameter</td>\n</tr>\n<tr>\n<td>conditions</td>\n<td>Array</td>\n<td>N</td>\n<td>When in use, certain key-value is mandatory.</td>\n</tr>\n<tr>\n<td>conditions:column</td>\n<td>String</td>\n<td>Y</td>\n<td>Field which the conditions will be based from</td>\n</tr>\n<tr>\n<td>conditions:operator</td>\n<td>Number</td>\n<td>Y</td>\n<td>Condition Operator  <br />EQUAL : 0,  <br />NOT_EQUAL : 1,  <br />CONTAINS : 2,  <br />BETWEEN : 3,  <br />LIKE : 4,  <br />GREATER : 5,  <br />LESS : 6  <br />  <br />For field encrypted in encryption mode (ex. user_id.user_id), it only supports Equal (0), Not Equal (1), and Contains(2).</td>\n</tr>\n<tr>\n<td>conditions:values</td>\n<td>Datetime</td>\n<td>Y</td>\n<td>Value of the conditions</td>\n</tr>\n<tr>\n<td>orders</td>\n<td>Array</td>\n<td>N</td>\n<td>When in use, certain key-value is mandatory.</td>\n</tr>\n<tr>\n<td>orders:column</td>\n<td>String</td>\n<td>Y</td>\n<td>Field which the sorting will be based on</td>\n</tr>\n<tr>\n<td>orders:descending</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle true to set the sorting as descending</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","events","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"95c58101-69b4-45ab-b12d-d3b389964075"},{"name":"Fetch Event Image","id":"ec1464f4-9c2f-47d5-9817-0ddfa23a1c4b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/events/images/:image_data","description":"<p>When query events through <strong>Search Events</strong> (<code>/api/events/search</code>), events that contain image logs include the following fields in the response:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"image_id\": {\n  \"image_data\": \"1755062341_547838635_159337\",\n  \"image_type\": \"JPG\",\n  \"photo\": \"false\"\n}\n\n</code></pre>\n<p>The <code>image_data</code> value can be used to retrieve the corresponding image file.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","events","images",":image_data"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"b1e4be46-d7a8-4d41-9ba5-215ce4de9cff","description":{"content":"<p>(String, Required) – The identifier of the image, obtained from the event search response.</p>\n","type":"text/plain"},"type":"any","value":"","key":"image_data"}]}},"response":[],"_postman_id":"ec1464f4-9c2f-47d5-9817-0ddfa23a1c4b"},{"name":"Search Thermal Events","id":"3b7c9cc7-00ad-4abc-a0da-7a5b97dab633","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"limit\": 51,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2021-01-27T16:00:00.000Z\",\r\n                    \"2022-01-28T15:59:59.000Z\"\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"descending\": false\r\n            }\r\n        ]\r\n    }\r\n}\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/events/search/thermal","description":"<p>This API is used to view events with thermal data.</p>\n<p>Parameters on this API is the same as Search Events.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","events","search","thermal"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"3b7c9cc7-00ad-4abc-a0da-7a5b97dab633"},{"name":"Export as CSV","id":"f4af266d-24f8-4b65-8f93-d321d563ad1e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2022-01-27T16:00:00.000Z\",\r\n                    \"2022-01-28T15:59:59.000Z\"\r\n                ]\r\n            }\r\n        ],\r\n        \"offset\": 0,\r\n        \"columns\": [\r\n            \"datetime\",\r\n            \"door_id.name\",\r\n            \"device_id.id\",\r\n            \"device_id.name\",\r\n            \"user_group_id\",\r\n            \"user_id\",\r\n            \"temperature\",\r\n            \"event_type_id\",\r\n            \"tna_key\"\r\n        ],\r\n        \"headers\": [\r\n            \"Date\",\r\n            \"Door\",\r\n            \"Device ID\",\r\n            \"Device\",\r\n            \"User Group\",\r\n            \"User\",\r\n            \"Temperature\",\r\n            \"Event\",\r\n            \"TNA Key\"\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/events/export?time_offset=480&use_centigrade=true","description":"<p>This API is used to export events as a <code>.csv</code> file.</p>\n<p>Exported <code>.csv</code> will be saved on <code>[BioStar 2 Server installation path]/nginx/html/download</code>.</p>\n<p>To get it from the server, use <code>Download Events Exported CSV</code> API.</p>\n<h4 id=\"body-parameters\">BODY Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>conditions</td>\n<td>Array</td>\n<td>N</td>\n<td>A set of conditions to filter the response of the API. On this case, it's using the datetime field to filter according to the values given.</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Shift the response records by n records.</td>\n</tr>\n<tr>\n<td>columns</td>\n<td>Array</td>\n<td>Y</td>\n<td>List of fields which will be exported. Refer to the table below for list of available fields.</td>\n</tr>\n<tr>\n<td>headers</td>\n<td>Array</td>\n<td>Y</td>\n<td>Name of the header on the exported .csv file.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"available-column-fields\">Available Column Fields:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Fields</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>datetime</td>\n<td>Device timestamp (timezone/DST applied)</td>\n</tr>\n<tr>\n<td>device_id.id</td>\n<td>Device ID (numeric)</td>\n</tr>\n<tr>\n<td>device_id.name</td>\n<td>Device name</td>\n</tr>\n<tr>\n<td>door_id.name</td>\n<td>Door name</td>\n</tr>\n<tr>\n<td>elevator_id.name</td>\n<td>Elevator name + floor information</td>\n</tr>\n<tr>\n<td>event_type_id</td>\n<td>Event type name (multilingual support)</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>User ID + name + IP</td>\n</tr>\n<tr>\n<td>user_group_id</td>\n<td>User group name</td>\n</tr>\n<tr>\n<td>zone_id.name</td>\n<td>Zone name</td>\n</tr>\n<tr>\n<td>tna_key</td>\n<td>TNA caption/key</td>\n</tr>\n<tr>\n<td>temperature</td>\n<td>Temperature (°C or °F depending on <code>use_centigrade</code> setting)</td>\n</tr>\n<tr>\n<td>user_phone</td>\n<td>User phone number (thermal export)</td>\n</tr>\n<tr>\n<td>user_email</td>\n<td>User email address (thermal export)</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","events","export"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Shift time on the exported file by n minutes</p>\n","type":"text/plain"},"key":"time_offset","value":"480"},{"description":{"content":"<p>Toggle true to set temperature as celcius, false as fahrenheit.</p>\n","type":"text/plain"},"key":"use_centigrade","value":"true"}],"variable":[]}},"response":[],"_postman_id":"f4af266d-24f8-4b65-8f93-d321d563ad1e"},{"name":"List All Alerts","id":"5a04cabb-c65c-4528-87cf-bac9c2f4fd64","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"offset\": 0,\r\n        \"limit\": 50,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"status\",\r\n                \"operator\": 0,\r\n                \"values\": [\r\n                    \"1\"\r\n                ]\r\n            },\r\n            {\r\n                \"column\": \"event_id.datetime\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2023-01-01T00:00:00.00Z\",\r\n                    \"2023-03-02T00:00:00.00Z\"\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"event_id.datetime\",\r\n                \"descending\": true\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/alerts/search","description":"<p>This API is used to view alert events which can be filtered using available parameters.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Shift response records by n record(s)</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit response records by n record(s)</td>\n</tr>\n<tr>\n<td>conditions:column</td>\n<td>String</td>\n<td>N</td>\n<td>Field which the condition will be based on</td>\n</tr>\n<tr>\n<td>conditions:operator</td>\n<td>Number</td>\n<td>N</td>\n<td></td>\n</tr>\n<tr>\n<td>conditions:values</td>\n<td>String</td>\n<td>N</td>\n<td>Value of the condition based on the field selected on conditions:column</td>\n</tr>\n<tr>\n<td>orders:column</td>\n<td>String</td>\n<td>N</td>\n<td>Parameter which the sorting will be based on</td>\n</tr>\n<tr>\n<td>orders:descending</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Sort by descending or ascending. True for descending.</td>\n</tr>\n</tbody>\n</table>\n</div><p>It is required to at least put this on BODY to run the API successfully: {\"Query\": {}}</p>\n<p>Running the API without parameters will show all alerts.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","alerts","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"5a04cabb-c65c-4528-87cf-bac9c2f4fd64"},{"name":"List All Alerts: Filter by Status","id":"6d9586bb-77af-4221-b7dc-d8df6914d8a1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"status\",\r\n                \"operator\": 0,\r\n                \"values\": [\r\n                    \"1\"\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"event_id.datetime\",\r\n                \"descending\": true\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/alerts/search","description":"<p>This example shows how to use the parameters on this API to filter the response according to the status of the alert events.</p>\n<p>Where:<br />0 = Ignored Alert Events<br />1 = Acknowledged Alert Events</p>\n<p>To show all alert events regardless of status, remove the condition from the BODY.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","alerts","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"6d9586bb-77af-4221-b7dc-d8df6914d8a1"},{"name":"List All Alerts: Filter & Sort by Date","id":"85637d68-afcc-4a91-a264-858caa817f68","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"event_id.datetime\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2023-02-02T00:00:00.00Z\",\r\n                    \"2023-02-03T00:00:00.00Z\"\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"event_id.datetime\",\r\n                \"descending\": true\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/alerts/search","description":"<p>This example shows how to use the parameters on this API to filter responses according to the datetime of the alert events.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","alerts","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"85637d68-afcc-4a91-a264-858caa817f68"},{"name":"Update Alert History","id":"ea7f14f2-d604-4ea8-99f4-5374e895bf5b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Alert\": {\r\n        \"event_id\": {\r\n            \"datetime\": \"2022-02-02T00:00:00.00Z\"\r\n        },\r\n        \"status\": \"1\",\r\n        \"ack_user_id\": {\r\n            \"user_id\": \"1\"\r\n        },\r\n        \"ack_message\": \"test\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/alerts/:alert_id","description":"<p>This API is used to log <code>alertable: true</code> events (GET /api/event_types) to Alert Collection (POST /api/alerts/search)</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>event_id:datetime</td>\n<td>DateTime</td>\n<td>Y</td>\n<td>Datetime as shown on events</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Number</td>\n<td>Y</td>\n<td>Default: 1</td>\n</tr>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>User ID/Name which will be recorded on the Alert Log. Default: 1</td>\n</tr>\n<tr>\n<td>ack_message</td>\n<td>String</td>\n<td>Y</td>\n<td>Custom message which will be recorded on the Alert Log</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","alerts",":alert_id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>Unique ID recorded on hint parameter (POST /api/events/search)</p>\n","type":"text/plain"},"type":"any","value":"164379073505437203680000021611","key":"alert_id"}]}},"response":[],"_postman_id":"ea7f14f2-d604-4ea8-99f4-5374e895bf5b"},{"name":"View a Muster Zone Status","id":"b2a1125c-d5ff-47be-b723-0cf29024d0f0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"limit\": 51\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones/:id/tracking","description":"<p>This API is used to view a muster zone status.</p>\n<p>BODY Parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>Specify the number of records which shown on the response</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones",":id","tracking"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"32787","key":"id"}]}},"response":[],"_postman_id":"b2a1125c-d5ff-47be-b723-0cf29024d0f0"}],"id":"4df96784-3a5a-4a63-9868-f1df4dfaa657","_postman_id":"4df96784-3a5a-4a63-9868-f1df4dfaa657","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Audit","item":[{"name":"Audit Search","id":"738fd6b1-509e-4d5c-b571-a2dce74aa574","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n  \"Query\": {\r\n    \"offset\": 0,\r\n    \"limit\": 5,\r\n    \"conditions\": [\r\n      {\r\n        \"column\": \"DATE\",\r\n        \"operator\": 3,\r\n        \"values\": [\r\n          \"2024-02-17T16:00:00.000Z\",\r\n          \"2024-03-18T15:59:59.000Z\"\r\n        ]\r\n      }\r\n    ],\r\n    \"total\": false\r\n  }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/audit/search","description":"<p>This API is used to view Audit Trail logs.</p>\n<p>It is possible to use multiple conditions in a request. Separate each condition using comma (,).</p>\n<p>Example:</p>\n<p>[ {condition 1}, {condition 2}, .. ]</p>\n<h4 id=\"body-parameters-on-this-api\">BODY Parameters on this API:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Offset the response's records by the specified value.</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>Limit the number of response's records by the specified value.</td>\n</tr>\n<tr>\n<td>total</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Default: false  <br />Toggle true to get total count of the Audit Trail based on condition(s) set.</td>\n</tr>\n<tr>\n<td>conditions</td>\n<td>Array</td>\n<td>N</td>\n<td>A set of conditions to filter the Audit Trails logs.</td>\n</tr>\n<tr>\n<td>conditions.column</td>\n<td>String</td>\n<td>N</td>\n<td>See below</td>\n</tr>\n<tr>\n<td>conditions.operator</td>\n<td>Number</td>\n<td>N</td>\n<td>See belo</td>\n</tr>\n<tr>\n<td>conditions.values</td>\n<td>Array</td>\n<td>N</td>\n<td>See below</td>\n</tr>\n</tbody>\n</table>\n</div><h5 id=\"condition-operator\">Condition Operator:</h5>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>column</strong></th>\n<th><strong>operator</strong></th>\n<th><strong>values</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>DATE</td>\n<td>3</td>\n<td>ISO-8601 date format. Value of <strong>from</strong> and <strong>to</strong> are separated using comma (,)</td>\n</tr>\n<tr>\n<td>USRID</td>\n<td>2</td>\n<td>Make use of Audit Search User to get the required value. Value format: [\"UserName(UserID)\"].  <br />Use comma (,) to separate values.</td>\n</tr>\n<tr>\n<td>PERM</td>\n<td>2</td>\n<td>Make use of Audit Search Oerator Level to get the required value.  <br />Use comma (,) to separate values.</td>\n</tr>\n<tr>\n<td>IP</td>\n<td>2</td>\n<td>Make use of Audit Search IP List to get the required value.  <br />Use comma (,) to separate values.</td>\n</tr>\n<tr>\n<td>MENU</td>\n<td>2</td>\n<td>Values:  <br />\"access_level\"  <br />\"access_group\"  <br />\"setting\"  <br />\"setting.permission\"  <br />\"setting.preference\"  <br />\"setting.server\"  <br />\"setting.wiegand_format\"  <br />\"setting.smartcard\"  <br />\"setting.trigger_action\"  <br />\"setting.event_type\"  <br />\"setting.image_filter\"  <br />\"setting.custom_field\"  <br />\"setting.system_config\"  <br />\"setting.face_group\"  <br />\"setting.schedule\"  <br />\"setting.holiday_group\"  <br />\"setting.output_signal\"  <br />\"setting.dst\"  <br />\"setting.mobileCredential\"  <br />\"system\"  <br />\"user\"  <br />\"device\"  <br />\"door\"  <br />\"elevator\"  <br />\"zone\"  <br />\"floor_level\"  <br />\"graphicmap\"  <br />Use comma (,) to separate values.</td>\n</tr>\n<tr>\n<td>TARGET</td>\n<td>2</td>\n<td>Make use of Audit Search Target List to get the required value.  <br />Use comma (,) to separate values.</td>\n</tr>\n<tr>\n<td>METHOD</td>\n<td>2</td>\n<td>1: Add  <br />3: Update  <br />4: Delete  <br />5: Action  <br />Use comma (,) to separate values.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","audit","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"738fd6b1-509e-4d5c-b571-a2dce74aa574"},{"name":"Audit Search User","id":"459de01e-eb5d-4609-a3eb-9efb17d2d722","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Userlist\": {\r\n        \"search\": \"ag\",\r\n        \"limit\": 201,\r\n        \"offset\": 0\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/audit/userlist","description":"<p>This API is used to filter user by the specified input.</p>\n<p>Do note the API will only show records of user which have Audit Trail logs only.</p>\n<h4 id=\"body-parameters-on-this-api\">BODY Parameters on this API:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>search</td>\n<td>String</td>\n<td>N</td>\n<td>Search term to filter the user with Audit Trail log.  <br />To show all users which have Audit Trail logs, simply remove this parameter from the request.</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit the number of response's records by the specified value.</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Offset the response's records by the specified value.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","audit","userlist"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"459de01e-eb5d-4609-a3eb-9efb17d2d722"},{"name":"Audit Search Operator Level","id":"0bcc8e79-9c5d-431e-aaeb-79cb8ffa6e65","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Permlist\": {\r\n        \"search\": \"a\",\r\n        \"limit\": 201,\r\n        \"offset\": 0\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/audit/permlist","description":"<p>This API is used to filter Operator Level by the specified input.</p>\n<p>Do note the API will only show records of Operator Level which have Audit Trail logs only.</p>\n<h4 id=\"body-parameters-on-this-api\">BODY Parameters on this API:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>search</td>\n<td>String</td>\n<td>N</td>\n<td>Search term to filter the Operator Level with Audit Trail log.  <br />To show all Operator Level which have Audit Trail logs, simply remove this parameter from the request.</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit the number of response's records by the specified value.</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Offset the response's records by the specified value.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","audit","permlist"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"0bcc8e79-9c5d-431e-aaeb-79cb8ffa6e65"},{"name":"Audit Search IP List","id":"41042fcb-fb3f-42a6-87e6-d0ac62e91ddc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Iplist\": {\r\n        \"search\": \"1\",\r\n        \"limit\": 201,\r\n        \"offset\": 0\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/audit/iplist","description":"<p>This API is used to filter IP records by the specified input.</p>\n<p>Do note the API will only show records which have Audit Trail logs only.</p>\n<h4 id=\"body-parameters-on-this-api\">BODY Parameters on this API:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>search</td>\n<td>String</td>\n<td>N</td>\n<td>Search term to filter the IP with Audit Trail log.  <br />To show all IP which have Audit Trail logs, simply remove this parameter from the request.</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit the number of response's records by the specified value.</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Offset the response's records by the specified value.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","audit","iplist"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"41042fcb-fb3f-42a6-87e6-d0ac62e91ddc"},{"name":"Audit Search Target List","id":"07a9550a-9a75-4e89-99d7-630f3495a7a0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Targetlist\": {\r\n        \"search\": \"p\",\r\n        \"limit\": 201,\r\n        \"offset\": 0\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/audit/targetlist","description":"<p>This API is used to filter Target records by the specified input.</p>\n<p>Do note the API will only show records which have Audit Trail logs only.</p>\n<h4 id=\"body-parameters-on-this-api\">BODY Parameters on this API:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>search</td>\n<td>String</td>\n<td>N</td>\n<td>Search term to filter the Target with Audit Trail log.  <br />To show all Target which have Audit Trail logs, simply remove this parameter from the request.</td>\n</tr>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit the number of response's records by the specified value.</td>\n</tr>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Offset the response's records by the specified value.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","audit","targetlist"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"07a9550a-9a75-4e89-99d7-630f3495a7a0"},{"name":"Audit CSV Export","id":"8f8da8ed-5f59-4adf-8b6a-6e994b3de8c7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"offset\": 0,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"DATE\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2024-02-17T16:00:00.000Z\",\r\n                    \"2024-03-18T15:59:59.000Z\"\r\n                ]\r\n            }\r\n        ],\r\n        \"columns\": [\r\n            \"DATE\",\r\n            \"USRID\",\r\n            \"PERM\",\r\n            \"IP\",\r\n            \"MENU\",\r\n            \"TARGET\",\r\n            \"METHOD\",\r\n            \"CONTENT\"\r\n        ],\r\n        \"headers\": [\r\n            \"Datetime\",\r\n            \"User\",\r\n            \"Operator Level\",\r\n            \"IP\",\r\n            \"Category\",\r\n            \"Target\",\r\n            \"Action\",\r\n            \"Modification\"\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/audit/export?time_offset=480","description":"<p>This API is used to generate CSV file based on the parameters.</p>\n<p>Make use of <code>Events\\Download Events Exported CSV</code> API to download the exported CSV.</p>\n<h4 id=\"body-parameters-on-this-api\">BODY Parameters on this API:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>offset</td>\n<td>Number</td>\n<td>N</td>\n<td>Offset the response's records by the specified value.</td>\n</tr>\n<tr>\n<td>conditions</td>\n<td>Array</td>\n<td>N</td>\n<td>See <code>Audit Search</code> for usage.</td>\n</tr>\n<tr>\n<td>columns</td>\n<td>Array</td>\n<td>N</td>\n<td>List of columns which will be included on the CSV.</td>\n</tr>\n<tr>\n<td>headers</td>\n<td>Array</td>\n<td>N</td>\n<td>Header name which will be used on the CSV.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","audit","export"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Adjust the time value according to the required Time Zone. If the required TZ is UTC+8, then the value will be 480 (60 x 8).</p>\n","type":"text/plain"},"key":"time_offset","value":"480"}],"variable":[]}},"response":[],"_postman_id":"8f8da8ed-5f59-4adf-8b6a-6e994b3de8c7"}],"id":"dc98acd2-977b-4dc9-a3ae-fee45b709876","_postman_id":"dc98acd2-977b-4dc9-a3ae-fee45b709876","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"Zones","item":[{"name":"Occupancy Limit","item":[{"name":"Occupancy: Create New","id":"e5799555-fc5c-4c64-b934-940db9d9dcc1","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"is_enabled\": 1,\r\n    \"name\": \"OccupancyZone1\",\r\n    \"zone_type\": 11,\r\n    \"status\": 0,\r\n    \"occupancy_detail\": {\r\n        \"limit_count\": \"100\",\r\n        \"entry_devices\": [\r\n            \"543720368\"\r\n        ],\r\n        \"exit_devices\": [\r\n            \"542353521\"\r\n        ],\r\n        \"almost_full_alert_setting\": {\r\n            \"level\": 1,\r\n            \"step_1\": \"95\",\r\n            \"step_2\": 0\r\n        },\r\n        \"auto_reset_count_time\": {\r\n            \"is_enabled\": \"1\",\r\n            \"minute\": 1439\r\n        },\r\n        \"network_fail_action\": \"0\",\r\n        \"bypass_groups\": [\r\n            {\r\n                \"acsgruid\": \"1\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/zones/occupancy?time_zone=25","description":"<p>You can manage and control the population density of certain areas with Occupancy Limit Zone to prevent overcrowding. You can also monitor the occupancy limit zone status or set an alert to get notified when the zone has reached capacity.</p>\n<p>Up to 100 occupancy limit zones can be added.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>is_enabled</td>\n<td></td>\n<td></td>\n<td>Deactivate the occupancy limit zone. If the zone is deactivated, both Count that refers to the number of users in the zone and Count Bypass settings will be initialized. Select Active to enable it.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td></td>\n<td>Enter an occupancy limit zone name. Name can be up to 48 characters in length and cannot be set to the same name as other zones.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td></td>\n<td>View the zone type.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Number</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td>limit_count</td>\n<td>Number</td>\n<td></td>\n<td>Enter the number of users who will be restricted from entering the zone. If the number of users in the zone reaches the limit, entry will be restricted. You can enter a number from 0 to 10,000, and if it is set to 0, people can enter the zone without limit.</td>\n</tr>\n<tr>\n<td>entry_devices</td>\n<td>Number</td>\n<td></td>\n<td>Select a device to use for entry. You can select a device from the list of added devices.</td>\n</tr>\n<tr>\n<td>exit_devices</td>\n<td>Number</td>\n<td></td>\n<td>Select a device to use at exit. You can select a device from the list of added devices.</td>\n</tr>\n<tr>\n<td>almost_full_alert_setting:level</td>\n<td>Number</td>\n<td></td>\n<td>Set an alert to an administrator or set to save event logs before Count reaches the occupancy limit.</td>\n</tr>\n<tr>\n<td>almost_full_alert_setting:step_1</td>\n<td>Number</td>\n<td></td>\n<td>The first alert for occupancy limit.</td>\n</tr>\n<tr>\n<td>almost_full_alert_setting:step_2</td>\n<td>Number</td>\n<td></td>\n<td>The second alert for occupancy limit.</td>\n</tr>\n<tr>\n<td>auto_reset_count_time:is_enabled</td>\n<td>Boolean</td>\n<td></td>\n<td>Toggle to set the time to automatically reset occupancy limit Count.</td>\n</tr>\n<tr>\n<td>auto_reset_count_time:minute</td>\n<td>Number</td>\n<td></td>\n<td>The Count will be initialized at the time you set every day.</td>\n</tr>\n<tr>\n<td>network_fail_action</td>\n<td>Number</td>\n<td></td>\n<td>Set whether to allow users to enter or leave when a network error occurs in the device set in the zone. If you set it to Allow Entry and Exit, it stops entry restrictions when the device loses network connection, and people can enter the zone even if Count in the zone exceeds the occupancy limit.</td>\n</tr>\n<tr>\n<td>bypass_groups:acsgruid</td>\n<td>Number</td>\n<td></td>\n<td>Set Count Bypass by selecting bypass groups to allow users in the group to enter the zone at any time without affecting the number of Count. The Bypass Count column displays the number of people from Count Bypass in the zone list.  <br />It is not able to use the Count Bypass feature when you set Thermal &amp; Mask Check Mode as Check without authentication while using the device with a thermal camera.  <br />Up to 16 bypass groups can be added.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Notes:</p>\n<ul>\n<li>Devices and firmware versions that are compatible with the occupancy limit zone features are as follows:<ul>\n<li>FaceStation F2 firmware version 1.1.0 or later</li>\n<li>FaceStation 2 firmware version 1.5.0 or later</li>\n</ul>\n</li>\n<li>A device cannot be assigned to the entry device and exit device simultaneously.</li>\n<li>You can set entry devices and exit devices up to 128 in total.</li>\n<li>A device using Dual Authentication cannot be set as the entry or exit device.</li>\n<li>Set the time of Auto Count Reset based on UTC in the country where the zone is located. For example, if the time is set to 00:00 in UTC+9, the count is automatically reset at 01:00 in UTC+10.</li>\n<li>You can set up two alerts for Count Alert and only enter numbers smaller than the Limit value. The values of both alerts must be different.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Time Zone ID:\nid : 0, offset : -720\nid : 1, offset : -660\nid : 2, offset : -600\nid : 3-1, offset : -570\nid : 3, offset : -540\nid : 4, offset : -480\nid : 5, offset : -420\nid : 6, offset : -360\nid : 7, offset : -300\nid : 8-1, offset : -270\nid : 8, offset : -240\nid : 9, offset : -210\nid : 10, offset : -180\nid : 11, offset : -120\nid : 12, offset : -60\nid : 13, offset : 0\nid : 14, offset : +60\nid : 15, offset : +120\nid : 16, offset : +180\nid : 17, offset : +210\nid : 18, offset : +240\nid : 19, offset : +270\nid : 20, offset : +300\nid : 21, offset : +330\nid : 22, offset : +345\nid : 23, offset : +360\nid : 23+1, offset : +390\nid : 24, offset : +420\nid : 25, offset : +480\nid : 25+1, offset : +510\nid : 25+2, offset : +525\nid : 26, offset : +540\nid : 27, offset : +570\nid : 28, offset : +600\nid : 28+1, offset : +630\nid : 29, offset : +660\nid : 30, offset : +720\nid : 30+1, offset : +765\nid : 31, offset : +780\nid : 32, offset : +840</p>\n<p>Default value : 26</p>\n","type":"text/plain"},"key":"time_zone","value":"25"}],"variable":[]}},"response":[],"_postman_id":"e5799555-fc5c-4c64-b934-940db9d9dcc1"},{"name":"Occupancy: Update","id":"13faba69-6562-41a4-8d31-47de5499a435","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"is_enabled\": 1,\r\n    \"name\": \"OccupancyZone1\",\r\n    \"zone_type\": 11,\r\n    \"status\": 0,\r\n    \"occupancy_detail\": {\r\n        \"limit_count\": \"100\",\r\n        \"entry_devices\": [\r\n            \"543720368\"\r\n        ],\r\n        \"exit_devices\": [\r\n            \"542353521\"\r\n        ],\r\n        \"almost_full_alert_setting\": {\r\n            \"level\": 1,\r\n            \"step_1\": \"95\",\r\n            \"step_2\": 0\r\n        },\r\n        \"auto_reset_count_time\": {\r\n            \"is_enabled\": \"1\",\r\n            \"minute\": 1439\r\n        },\r\n        \"network_fail_action\": \"0\",\r\n        \"bypass_groups\": [\r\n            {\r\n                \"acsgruid\": \"1\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/zones/occupancy/:id?time_zone=25","description":"<p>This API is used to update occupancy zone configuration.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy",":id"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Time Zone ID:\nid : 0, offset : -720\nid : 1, offset : -660\nid : 2, offset : -600\nid : 3-1, offset : -570\nid : 3, offset : -540\nid : 4, offset : -480\nid : 5, offset : -420\nid : 6, offset : -360\nid : 7, offset : -300\nid : 8-1, offset : -270\nid : 8, offset : -240\nid : 9, offset : -210\nid : 10, offset : -180\nid : 11, offset : -120\nid : 12, offset : -60\nid : 13, offset : 0\nid : 14, offset : +60\nid : 15, offset : +120\nid : 16, offset : +180\nid : 17, offset : +210\nid : 18, offset : +240\nid : 19, offset : +270\nid : 20, offset : +300\nid : 21, offset : +330\nid : 22, offset : +345\nid : 23, offset : +360\nid : 23+1, offset : +390\nid : 24, offset : +420\nid : 25, offset : +480\nid : 25+1, offset : +510\nid : 25+2, offset : +525\nid : 26, offset : +540\nid : 27, offset : +570\nid : 28, offset : +600\nid : 28+1, offset : +630\nid : 29, offset : +660\nid : 30, offset : +720\nid : 30+1, offset : +765\nid : 31, offset : +780\nid : 32, offset : +840\nDefault value : 26</p>\n","type":"text/plain"},"key":"time_zone","value":"25"}],"variable":[{"description":{"content":"<p>ID of the occupancy zone which will be updated.</p>\n","type":"text/plain"},"type":"any","value":"32784","key":"id"}]}},"response":[],"_postman_id":"13faba69-6562-41a4-8d31-47de5499a435"},{"name":"Occupancy: Delete","id":"282acc49-892e-4e57-be67-53c14e1455af","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ids\": [\r\n        542189540\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/zones/occupancy","description":"<p>This API is used to delete Occupancy Zone.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"282acc49-892e-4e57-be67-53c14e1455af"},{"name":"Occupancy: List All","id":"64b85416-1e87-48a8-8835-654b2c808cdf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/zones/occupancy","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"64b85416-1e87-48a8-8835-654b2c808cdf"},{"name":"Occupancy: Search by Name","id":"f3fa6c63-097b-491e-86b4-69c9787dfd0d","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/zones/occupancy/search/:id","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","search",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>Name of the Occupancy Zone which will be searched.</p>\n","type":"text/plain"},"type":"any","value":"occ","key":"id"}]}},"response":[],"_postman_id":"f3fa6c63-097b-491e-86b4-69c9787dfd0d"},{"name":"Occupancy: View Details","id":"c221dc6f-b001-4a26-a9fc-851970489393","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/zones/occupancy/:id?time_zone=25","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy",":id"],"host":["https://127.0.0.1"],"query":[{"key":"time_zone","value":"25"}],"variable":[{"description":{"content":"<p>ID of the Occupancy Zone which will be viewed.</p>\n","type":"text/plain"},"type":"any","value":"32784","key":"id"}]}},"response":[],"_postman_id":"c221dc6f-b001-4a26-a9fc-851970489393"},{"name":"Occupancy: List Dual Auth. Devices","id":"817f4384-59d8-4adb-9dee-f04a426fb7f4","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/zones/occupancy/devices/dual","description":"<p>This API is used to get a list of dual authentication devices.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","devices","dual"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"817f4384-59d8-4adb-9dee-f04a426fb7f4"},{"name":"Occupancy: View Assigned Devices","id":"aa0fd0aa-fe94-4b3e-a6de-840ba83f10ff","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/v2/zones/occupancy/devices/:id","description":"<p>This API is used to list assigned devices on a Occupancy Zone.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","devices",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Occupancy Zone</p>\n","type":"text/plain"},"type":"any","value":"32784","key":"id"}]}},"response":[],"_postman_id":"aa0fd0aa-fe94-4b3e-a6de-840ba83f10ff"},{"name":"Occupancy: Increase Count","id":"48b05b7b-18a7-43bb-a4ef-186757d0da1f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"url":"https://127.0.0.1/api/v2/zones/occupancy/count/increase/:id","description":"<p>This API is used to increase an occupancy count.</p>\n<p>Count will be higher or equal to 0 and will be lower or equal to Count Limit.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","count","increase",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Occupancy Limit.</p>\n","type":"text/plain"},"type":"any","value":"32784","key":"id"}]}},"response":[],"_postman_id":"48b05b7b-18a7-43bb-a4ef-186757d0da1f"},{"name":"Occupancy: Decrease Count","id":"902b0ac7-62f3-4201-ae84-b8f15dbd8387","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"url":"https://127.0.0.1/api/v2/zones/occupancy/count/decrease/:id","description":"<p>This API is used to decrease an occupancy count.</p>\n<p>Count will be higher or equal to 0 and will be lower or equal to Count Limit.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","count","decrease",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Occupancy Limit</p>\n","type":"text/plain"},"type":"any","value":"32784","key":"id"}]}},"response":[],"_postman_id":"902b0ac7-62f3-4201-ae84-b8f15dbd8387"},{"name":"Occupancy: Set Count","id":"3032f53b-a055-4495-ae78-59a642822252","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"count\": \"85\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/zones/occupancy/count/set/:id","description":"<p>This API is used to set and occupancy limit count.</p>\n<p>Count value will be higher or equal to 0 and will be lower or equal to Count Limit.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>count</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set count value</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","count","set",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Occupancy Limit.</p>\n","type":"text/plain"},"type":"any","value":"32784","key":"id"}]}},"response":[],"_postman_id":"3032f53b-a055-4495-ae78-59a642822252"},{"name":"Occupancy: Reset Count","id":"6fe62423-874a-40fc-bc01-67b01f993987","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ids\": [\r\n        32784\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/zones/occupancy/reset","description":"<p>This API is used to reset current counts and bypass counts of the occupancy limit zone.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","reset"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"6fe62423-874a-40fc-bc01-67b01f993987"},{"name":"Occupancy: Disable","id":"78e201ef-3e05-42c7-ad9a-026d70568091","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ids\": [\r\n        32784\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/zones/occupancy/disable","description":"<p>This API is used to disable Occupancy Limit Zone.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","disable"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"78e201ef-3e05-42c7-ad9a-026d70568091"},{"name":"Occupancy: Enable","id":"01e0cad3-75c2-4a61-8c45-42419af53a34","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ids\": [\r\n        32784\r\n    ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/v2/zones/occupancy/enable","description":"<p>This API is used to enable Occupancy Limit Zone.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","v2","zones","occupancy","enable"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"01e0cad3-75c2-4a61-8c45-42419af53a34"}],"id":"c2897ca9-0e22-42bc-9dae-162c4867eb9a","_postman_id":"c2897ca9-0e22-42bc-9dae-162c4867eb9a","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"APB: Create","id":"1b928335-74b6-4307-aa27-66817c1e40bc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"APBZ1\",\r\n        \"description\": \"\",\r\n        \"zone_type\": \"0\",\r\n        \"is_global\": 1,\r\n        \"enable\": \"1\",\r\n        \"status\": 0,\r\n        \"antipassback\": {\r\n            \"apb_type\": 1,\r\n            \"reset_time\": 1440,\r\n            \"apb_use_door_sensor\": \"1\",\r\n            \"entry_devices\": [\r\n                {\r\n                    \"id\": 544140034\r\n                }\r\n            ],\r\n            \"exit_devices\": [\r\n                {\r\n                    \"id\": 542353521\r\n                }\r\n            ],\r\n            \"bypass_groups\": [\r\n                {\r\n                    \"id\": 1\r\n                }\r\n            ],\r\n            \"alarm_actions\": [],\r\n            \"apb_fail_action\": \"0\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones","description":"<p>Anti-passback zone provides an enhanced function than the door based anti-passback feature.  </p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter an anti-passback name.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter an anti-passback description.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>View the zone type.</td>\n</tr>\n<tr>\n<td>is_global</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>It is possible to set either Local or Global for the range of zone application. If Local is set, the zone can be set only with the entry devices and devices connected with RS-485, and if Global is set, the zone can be set with all devices enrolled in BioStar 2.</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle to disable the anti-passback zone.</td>\n</tr>\n<tr>\n<td>status</td>\n<td></td>\n<td>N</td>\n<td></td>\n</tr>\n<tr>\n<td>apb_type</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Select an Anti-passback type.</td>\n</tr>\n<tr>\n<td>reset_time</td>\n<td>Number</td>\n<td>Y</td>\n<td>You can set a time period so that all anti-passback violations can be deleted. This allows the user to be granted access after the time period. The maximum possible duration is 7 days (10080 minutes). If set to 0, anti-passpack violations will not be deleted and the users who have previously violated the anti-passback rule will not be granted access.</td>\n</tr>\n<tr>\n<td>apb_use_door_sensor</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>0=OFF, 1=ON, 2=Door Config.  <br />You can set the range to apply the anti-passback. If Entry Confirmed APB is set to ON, the anti-passback is applied according to the actual operation of the door that the entry and exit device are configured. If this option is set to OFF, the rule is applied according to the user's authentication regardless of the door operation. When set to Follows door configuration, the anti-passback rule is applied according to the setting of the Use sensor when Entry Confirmed APB enabled option of the door.</td>\n</tr>\n<tr>\n<td>entry_devices:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device to use for entry.</td>\n</tr>\n<tr>\n<td>exit_devices:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device to use at exit.</td>\n</tr>\n<tr>\n<td>bypass_groups:id</td>\n<td>Number</td>\n<td>N</td>\n<td>Select an access level. Users who have the access level will not be restricted by the anti-passback rule.</td>\n</tr>\n<tr>\n<td>alarm_actions</td>\n<td>Array</td>\n<td>N</td>\n<td>Choose the operation to be triggered when an APB violation occurs.</td>\n</tr>\n<tr>\n<td>apb_fail_action</td>\n<td>Number</td>\n<td>N</td>\n<td>0=Open by Auth ,1=Open by Auth &amp; Record APB Log ,2=Door Locked &amp; Record APB Log.  <br />It is possible to set the door operation in case the communication between BioStar 2 and the device where anti-passback is set has been lost. Setting is available when Global is set for Mode. When Open by auth is set, the door opens when the user has been authenticated normally. When Open by auth &amp; record APB log is set, an anti-passback violation alarm occurs and the door opens. When Door locked &amp; record APB log is set, an anti-passback violation alarm occurs and the door does not open.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"1b928335-74b6-4307-aa27-66817c1e40bc"},{"name":"APB: Clear APB","id":"e340ffa3-875c-4895-8fb8-b88392410bc3","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AntiPassBackConfig\": {\r\n        \"Zone\": {\r\n            \"ZoneCollection\": {\r\n                \"rows\": [\r\n                    {\r\n                        \"id\": \"32774\"\r\n                    }\r\n                ]\r\n            }\r\n        },\r\n        \"UserType\": 1\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones/clear_apb_ex","description":"<p>This endpoint allows administrators to reset the Anti-Passback state within a zone. It can be applied either to <strong>all users in the zone</strong> or to a <strong>specific set of users</strong>.</p>\n<h4 id=\"body-parameters\">Body Parameters:</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ZoneCollection.rows.id</td>\n<td>String</td>\n<td>Y</td>\n<td>The ID of the APB zone to be cleared.</td>\n</tr>\n<tr>\n<td>UserType</td>\n<td>Integer</td>\n<td>Y</td>\n<td>Specifies the clear mode:  <br />1 = Clear APB for all users.  <br />2 = Clear APB for specific users.</td>\n</tr>\n<tr>\n<td>User</td>\n<td>Array</td>\n<td>N</td>\n<td>List of user objects with user_id. Required when UserType = 2.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"response-codes\">Response Codes:</h4>\n<ul>\n<li><p>200 OK: Request successful</p>\n</li>\n<li><p>400 Bad Request (Code 671): Zone ID mismatch (zone not found)</p>\n</li>\n<li><p>401 Unauthorized: Login required or invalid session token</p>\n</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones","clear_apb_ex"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[{"id":"33f2d0f6-3894-43cd-8098-668583c84895","name":"APB: Clear All Users","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AntiPassBackConfig\": {\r\n        \"Zone\": {\r\n            \"ZoneCollection\": {\r\n                \"rows\": [\r\n                    {\r\n                        \"id\": \"32769\"\r\n                    }\r\n                ]\r\n            }\r\n        },\r\n        \"UserType\": 1\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones/clear_apb_ex"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"200 OK"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Security-Policy","value":"default-src 'self' *.biostar2.com:* localhost:* 127.0.0.1:* blob: data: filesystem: mediastream:;script-src 'self' https://*.biostar2.com https://cdn.jsdelivr.net 'unsafe-inline' 'unsafe-eval';style-src 'self' https://*.biostar2.com 'unsafe-inline';worker-src 'self' blob:;img-src 'self' blob: https://*.openstreetmap.org data:;connect-src 'self' localhost:* https://*:7001 https://*.openstreetmap.org;"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Content-Length","value":"106"},{"key":"Date","value":"Tue, 09 Sep 2025 09:43:33 GMT"},{"key":"Referrer-Policy","value":"no-referrer"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"0\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Success\"\n    }\n}"},{"id":"fe4dc19d-e657-4409-859d-f9028b4a82d7","name":"APB: Clear Specific Users","originalRequest":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"AntiPassBackConfig\": {\r\n        \"Zone\": {\r\n            \"ZoneCollection\": {\r\n                \"rows\": [\r\n                    {\r\n                        \"id\": \"32774\"\r\n                    }\r\n                ]\r\n            }\r\n        },\r\n        \"User\": [\r\n            {\r\n                \"user_id\": \"1\"\r\n            },\r\n            {\r\n                \"user_id\": \"3\"\r\n            }\r\n        ],\r\n        \"UserType\": 2\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones/clear_apb_ex"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Status","value":"400 Bad Request"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1"},{"key":"Cache-Control","value":"no-cache, no-store, max-age=0, must-revalidate"},{"key":"Pragma","value":"no-cache"},{"key":"Expires","value":"0"},{"key":"Strict-Transport-Security","value":"max-age=31536000 ; includeSubDomains"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Content-Security-Policy","value":"default-src 'self' *.biostar2.com:* localhost:* 127.0.0.1:* blob: data: filesystem: mediastream:;script-src 'self' https://*.biostar2.com https://cdn.jsdelivr.net 'unsafe-inline' 'unsafe-eval';style-src 'self' https://*.biostar2.com 'unsafe-inline';worker-src 'self' blob:;img-src 'self' blob: https://*.openstreetmap.org data:;connect-src 'self' localhost:* https://*:7001 https://*.openstreetmap.org;"},{"key":"Content-Type","value":"application/json;charset=UTF-8"},{"key":"Content-Length","value":"120"},{"key":"Date","value":"Tue, 09 Sep 2025 09:45:18 GMT"},{"key":"Referrer-Policy","value":"no-referrer"}],"cookie":[],"responseTime":null,"body":"{\n    \"Response\": {\n        \"code\": \"671\",\n        \"link\": \"https://support.supremainc.com/en/support/home\",\n        \"message\": \"Zone type mismatch.\"\n    }\n}"}],"_postman_id":"e340ffa3-875c-4895-8fb8-b88392410bc3"},{"name":"Fire Alarm: Create","id":"2420ca67-d9d0-4aa4-8abc-f065bc8d39b0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"FAZ5\",\r\n        \"description\": \"\",\r\n        \"zone_type\": \"1\",\r\n        \"is_global\": 1,\r\n        \"enable\": \"1\",\r\n        \"fire_alarm\": {\r\n            \"fire_alarm_inputs\": [\r\n                {\r\n                    \"device_id\": {\r\n                        \"id\": 547234951\r\n                    },\r\n                    \"input_index\": 0,\r\n                    \"type\": 0,\r\n                    \"duration\": \"1000\"\r\n                },\r\n                {\r\n                    \"device_id\": {\r\n                        \"id\": 547234968\r\n                    },\r\n                    \"input_index\": 1,\r\n                    \"type\": 0,\r\n                    \"duration\": \"1500\"\r\n                }\r\n            ],\r\n            \"doors\": [\r\n                {\r\n                    \"id\": 3\r\n                }\r\n            ],\r\n            \"alarm_actions\": [],\r\n            \"elevators\": [\r\n                {\r\n                    \"id\": 32769\r\n                }\r\n            ]\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones","description":"<p>This API is used to create new Fire Alarm Zone.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Name of the Fire Alarm Zone</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter a fire alarm zone description.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>View the zone type.</td>\n</tr>\n<tr>\n<td>is_global</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>You can set fire alarm in two different modes. Local mode will allow the master device and slave devices that are connected via RS-485 to be selected. Global mode will allow selection of all devices added to BioStar 2.</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle to disable the fire alarm zone.</td>\n</tr>\n<tr>\n<td>device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Add and configure the device to set off the fire alarm signal.  <br />When Local is set for Mode, either Door or Elevator can be set as the fire zone.  <br />When Global is set for Mode, both Door and Elevator can be set as the fire zone at the same time.</td>\n</tr>\n<tr>\n<td>input_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input port of the device</td>\n</tr>\n<tr>\n<td>type</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>0=Normally Open.  <br />1=Normally Closed.</td>\n</tr>\n<tr>\n<td>duration</td>\n<td>Number</td>\n<td>Y</td>\n<td>Duration of the Alarm</td>\n</tr>\n<tr>\n<td>doors:id</td>\n<td>Number</td>\n<td>N</td>\n<td>Select the door(s) to include in the fire alarm zone.</td>\n</tr>\n<tr>\n<td>elevators:id</td>\n<td>Number</td>\n<td>N</td>\n<td>Select the elevators to include in the fire alarm zone. You can select multiple elevators.</td>\n</tr>\n<tr>\n<td>alarm_actions</td>\n<td>Array</td>\n<td>N</td>\n<td>Choose the operation to be triggered when a fire alarm signal occurs.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"2420ca67-d9d0-4aa4-8abc-f065bc8d39b0"},{"name":"Muster: Create","id":"05803b9a-3a22-4c33-91ab-421550f59ada","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"testmuster11\",\r\n        \"zone_type\": 8,\r\n        \"is_global\": 1,\r\n        \"enable\": \"1\",\r\n        \"status\": \"64\",\r\n        \"muster\": {\r\n            \"access_groups\": [\r\n                {\r\n                    \"id\": \"1\"\r\n                }\r\n            ],\r\n            \"entry_devices\": [\r\n                {\r\n                    \"id\": \"731\"\r\n                }\r\n            ],\r\n            \"exit_devices\": [\r\n                {\r\n                    \"id\": \"729\"\r\n                }\r\n            ],\r\n            \"time_limit\": \"1200\",\r\n            \"alarm_actions\": []\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones","description":"<p>The muster zone is used as a place where users gather when an emergency occurs. It can also be used for the purpose of monitoring the number of users and list of users in a specific area, or for notifying the manager of alarms and alerts when a user stays in a specific area for a long time.</p>\n<p>BODY parameter on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a muster zone name.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>View the zone type.</td>\n</tr>\n<tr>\n<td>is_global</td>\n<td>Boolean</td>\n<td>N</td>\n<td>You can check the application range of the zone. Only Global mode is supported for muster zone, and the zone can be set with all devices added to BioStar 2.</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle to disable the muster zone.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Number</td>\n<td>N</td>\n<td></td>\n</tr>\n<tr>\n<td>access_groups:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set the access group to which the user who will be staying in the muster zone. Up to 16 access groups can be set.</td>\n</tr>\n<tr>\n<td>entry_devices:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device to use for entry.</td>\n</tr>\n<tr>\n<td>exit_devices:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device to use at exit.</td>\n</tr>\n<tr>\n<td>time_limit</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set the maximum amount of time that user can stay in the zone. It can be set up to 4320 minutes, and an alarm occurs when the user stays in the muster zone exceeding the specified time.</td>\n</tr>\n<tr>\n<td>alarm_actions</td>\n<td>Array</td>\n<td>N</td>\n<td>Set the alarm action to carry out when a specific event occurs at the muster zone.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"05803b9a-3a22-4c33-91ab-421550f59ada"},{"name":"Scheduled Lock: Create","id":"175f2acf-148c-430a-ae7d-47690cb5f82f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"SLZ2\",\r\n        \"description\": \"\",\r\n        \"zone_type\": \"2\",\r\n        \"is_global\": 0,\r\n        \"enable\": \"1\",\r\n        \"status\": 0,\r\n        \"forced_lock\": {\r\n            \"bi_directional_lock\": 0,\r\n            \"schedule_id\": {\r\n                \"id\": \"2\"\r\n            },\r\n            \"doors\": [\r\n                {\r\n                    \"id\": 17\r\n                }\r\n            ],\r\n            \"bypass_groups\": [\r\n                {\r\n                    \"id\": 9\r\n                }\r\n            ]\r\n        },\r\n        \"alarm_actions\":[]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones","description":"<p>You can configure the scheduled lock zone. The scheduled lock zone keeps the door locked based on the schedule that has been set.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a scheduled lock zone name.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter a scheduled lock zone description.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>View the zone type</td>\n</tr>\n<tr>\n<td>is_global</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>The scheduled lock zone only supports local mode (0).</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle to disable the scheduled lock zone.</td>\n</tr>\n<tr>\n<td>forced_lock:bi_directional_lock</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>0=Exit allowed.  <br />1=Access not allowed.  <br />You can configure the zone to lock only the entering device, or to lock both entering and exiting device.</td>\n</tr>\n<tr>\n<td>forced_lock:schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a schedule.  <br />You can configure a scheduled lock zone by selecting multiple doors in local mode.</td>\n</tr>\n<tr>\n<td>forced_lock:doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select the door(s) to include in the scheduled lock zone.</td>\n</tr>\n<tr>\n<td>forced_lock:bypass_groups:id</td>\n<td>Number</td>\n<td>N</td>\n<td>Select an access level. Users who have the access level will not be restricted by the scheduled lock rule.</td>\n</tr>\n<tr>\n<td>alarm_actions</td>\n<td>Array</td>\n<td>N</td>\n<td>Select an access level. Users who have the access level will not be restricted by the scheduled lock rule.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"175f2acf-148c-430a-ae7d-47690cb5f82f"},{"name":"Scheduled Unlock: Create (Door)","id":"912c9e04-1018-4692-bd6c-b87502711e56","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"SUZ1\",\r\n        \"description\": \"\",\r\n        \"zone_type\": \"3\",\r\n        \"is_global\": 0,\r\n        \"enable\": \"1\",\r\n        \"status\": 0,\r\n        \"forced_unlock\": {\r\n            \"first_man_in\": 1,\r\n            \"schedule_id\": {\r\n                \"id\": \"2\"\r\n            },\r\n            \"doors\": [\r\n                {\r\n                    \"id\": 1\r\n                }\r\n            ],\r\n            \"alarm_actions\": [],\r\n            \"first_man_in_groups\": [\r\n                {\r\n                    \"id\": 4\r\n                }\r\n            ]\r\n        },\r\n        \"isLift\": false\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones","description":"<p>You can configure the scheduled unlock zone. The scheduled unlock zone keeps the door open based on the schedule that has been set.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a scheduled unlock zone name.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter a scheduled unlock zone description.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>View the zone type.</td>\n</tr>\n<tr>\n<td>is_global</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>The scheduled unlock zone only supports local mode (0).</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle to disable the scheduled unlock zone.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Number</td>\n<td>N</td>\n<td></td>\n</tr>\n<tr>\n<td>isLift</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>You can set doors or elevators as schedule unlock zones.</td>\n</tr>\n<tr>\n<td>first_man_in</td>\n<td>Boolean</td>\n<td>N</td>\n<td>When set as Active (1), the user who belongs to the access group must authenticate in the configured schedule to start a schedule unlock.  <br />Inactive (2).</td>\n</tr>\n<tr>\n<td>schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a schedule.</td>\n</tr>\n<tr>\n<td>doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>If you select Door, the door list is activated. Select the door(s) to include in the scheduled unlock zone.  <br />You can configure a scheduled unlock zone by selecting multiple doors in local mode.</td>\n</tr>\n<tr>\n<td>first_man_in_groups:id</td>\n<td>Number</td>\n<td>N</td>\n<td>You can select the access group where the user belongs who can start a scheduled unlock.</td>\n</tr>\n<tr>\n<td>alarm_actions</td>\n<td>Array</td>\n<td>N</td>\n<td>Choose the operation to be triggered when a scheduled unlock signal occurs.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"912c9e04-1018-4692-bd6c-b87502711e56"},{"name":"Scheduled Unlock: Create (Elevator)","id":"5619fe5c-d9ac-4f58-a29d-abcd35adfd96","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"SUZ3\",\r\n        \"description\": \"\",\r\n        \"zone_type\": \"10\",\r\n        \"is_global\": 0,\r\n        \"enable\": \"1\",\r\n        \"status\": 0,\r\n        \"isLift\": true,\r\n        \"lift_unlock\": {\r\n            \"first_man_in\": 2,\r\n            \"schedule_id\": {\r\n                \"id\": \"3\"\r\n            },\r\n            \"lifts\": [\r\n                {\r\n                    \"id\": 32769,\r\n                    \"floors\": [\r\n                        {\r\n                            \"id\": 2\r\n                        },\r\n                        {\r\n                            \"id\": 3\r\n                        },\r\n                        {\r\n                            \"id\": 4\r\n                        }\r\n                    ],\r\n                    \"control_device_id\": {\r\n                        \"id\": 543408590\r\n                    }\r\n                }\r\n            ]\r\n        }\r\n    }\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones","description":"<p>You can configure the scheduled unlock zone. The scheduled unlock zone keeps the door open based on the schedule that has been set.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter a scheduled unlock zone name.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter a scheduled unlock zone description.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>View the zone type.</td>\n</tr>\n<tr>\n<td>is_global</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>The scheduled unlock zone only supports local mode (0).</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Toggle to disable the scheduled unlock zone.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Number</td>\n<td>N</td>\n<td></td>\n</tr>\n<tr>\n<td>isLift</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>You can set doors or elevators as schedule unlock zones.</td>\n</tr>\n<tr>\n<td>first_man_in</td>\n<td>Boolean</td>\n<td>N</td>\n<td>When set as Active (1), the user who belongs to the access group must authenticate in the configured schedule to start a schedule unlock.  <br />Inactive (2).</td>\n</tr>\n<tr>\n<td>schedule_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a schedule.</td>\n</tr>\n<tr>\n<td>doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>If you select Door, the door list is activated. Select the door(s) to include in the scheduled unlock zone.  <br />You can configure a scheduled unlock zone by selecting multiple doors in local mode.</td>\n</tr>\n<tr>\n<td>lifts:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>If you select Elevator, the elevator list is activated. Select the elevators to include in the scheduled unlock zone. You can select multiple elevators.</td>\n</tr>\n<tr>\n<td>lifts:floors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>You can select the floor of the selected elevator.</td>\n</tr>\n<tr>\n<td>lifts:control_device_id:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input the elevator control device id.</td>\n</tr>\n<tr>\n<td>first_man_in_groups:id</td>\n<td>Number</td>\n<td>N</td>\n<td>You can select the access group where the user belongs who can start a scheduled unlock.</td>\n</tr>\n<tr>\n<td>alarm_actions</td>\n<td>Array</td>\n<td>N</td>\n<td>Choose the operation to be triggered when a scheduled unlock signal occurs.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"5619fe5c-d9ac-4f58-a29d-abcd35adfd96"},{"name":"Intrusion: Create","id":"b43b325c-96d1-40d3-816b-1fb12c2699ab","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"INT1\",\r\n        \"description\": \"\",\r\n        \"zone_type\": 6,\r\n        \"is_global\": 0,\r\n        \"enable\": \"1\",\r\n        \"status\": \"0\",\r\n        \"intrusion_alarm\": {\r\n            \"arm_delay\": \"1\",\r\n            \"disarm_delay\": \"2\",\r\n            \"doors\": [\r\n                {\r\n                    \"id\": 32\r\n                }\r\n            ],\r\n            \"access_groups\": [\r\n                {\r\n                    \"id\": 24\r\n                }\r\n            ],\r\n            \"cards\": [\r\n                {\r\n                    \"id\": \"10034\"\r\n                }\r\n            ],\r\n            \"arm_inputs\": [\r\n                {\r\n                    \"device\": {\r\n                        \"id\": 544140034\r\n                    },\r\n                    \"arm_type\": \"arm\",\r\n                    \"input_type\": \"card\"\r\n                },\r\n                {\r\n                    \"device\": {\r\n                        \"id\": \"544140034\"\r\n                    },\r\n                    \"input_index\": \"0\",\r\n                    \"duration\": \"200\",\r\n                    \"normal_open\": \"1\",\r\n                    \"arm_type\": \"toggle\",\r\n                    \"input_type\": \"input\"\r\n                }\r\n            ],\r\n            \"intrusion_inputs\": [\r\n                {\r\n                    \"device\": {\r\n                        \"id\": \"544140034\"\r\n                    },\r\n                    \"input_index\": \"1\",\r\n                    \"duration\": \"300\",\r\n                    \"normal_open\": \"1\",\r\n                    \"input_type\": \"input\"\r\n                }\r\n            ],\r\n            \"intrusion_actions\": []\r\n        }\r\n    }\r\n}\r\n","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones","description":"<p>When intrusion alarm zone is used, you can detect trespassing of an unauthorized user to a designated zone without permission.</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter an intrusion alarm zone name.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter an intrusion alarm zone description.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input the zone type.</td>\n</tr>\n<tr>\n<td>is_global</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Application range of the zone. Only Local mode is supported for intrusion alarm zone, and the zone can be set only with devices connected to the entry device and RS-485.</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle to disable the intrusion alarm zone.</td>\n</tr>\n<tr>\n<td>status</td>\n<td>Number</td>\n<td>N</td>\n<td></td>\n</tr>\n<tr>\n<td>arm_delay</td>\n<td>Number</td>\n<td>Y</td>\n<td>Delay time from the authentication to the arm</td>\n</tr>\n<tr>\n<td>disarm_delay</td>\n<td>Number</td>\n<td>Y</td>\n<td>Delay time from the intrusion detection to the alarm occurs.</td>\n</tr>\n<tr>\n<td>doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select the doors to include in the intrusion alarm zone.</td>\n</tr>\n<tr>\n<td>access_groups:id</td>\n<td>Number</td>\n<td>N</td>\n<td>You can add an access group with permission to arm or disarm. You can register up to 128 access groups.</td>\n</tr>\n<tr>\n<td>cards:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>You can add a card with permission to arm or disarm. You can register up to 128 access cards.</td>\n</tr>\n<tr>\n<td>arm_inputs:device:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>You can set the arming and disarming by device or input signal.  <br />Select a device to control the intrusion alarm zone among the entry and exit devices of the door</td>\n</tr>\n<tr>\n<td>arm_inputs:arm_type</td>\n<td>String</td>\n<td>Y</td>\n<td>Option: arm, disarm, toggle</td>\n</tr>\n<tr>\n<td>arm_inputs:input_type</td>\n<td>String</td>\n<td>Y</td>\n<td>Option: card, input</td>\n</tr>\n<tr>\n<td>arm_inputs:input_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input port of the selected device.</td>\n</tr>\n<tr>\n<td>arm_inputs:duration</td>\n<td>Number</td>\n<td>Y</td>\n<td>Duration which the device sensor connected to arm/disarm.</td>\n</tr>\n<tr>\n<td>arm_inputs:normal_open</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Default door status</td>\n</tr>\n<tr>\n<td>intrusion_inputs:device:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select a device to control the intrusion alarm zone among the entry and exit devices of the door</td>\n</tr>\n<tr>\n<td>intrusion_inputs:input_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Input port of the selected device.</td>\n</tr>\n<tr>\n<td>intrusion_inputs:duration</td>\n<td>Number</td>\n<td>Y</td>\n<td>The device recognizes intrusion if N/O sensor connected to input port n for the set duration.</td>\n</tr>\n<tr>\n<td>intrusion_inputs:normal_open</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Default Door status</td>\n</tr>\n<tr>\n<td>intrusion_inputs:input_type</td>\n<td>String</td>\n<td>Y</td>\n<td>input</td>\n</tr>\n<tr>\n<td>intrusion_actions</td>\n<td>Array</td>\n<td>N</td>\n<td>Set the alarm action to carry out when a specific event occurs at the intrusion alarm zone.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Notes:</p>\n<ul>\n<li>arm_inputs, intrusion_inputs, intrusion_actions is activated only when Door is set from Configuration.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"b43b325c-96d1-40d3-816b-1fb12c2699ab"},{"name":"Interlock: Create","id":"6a67f924-6b5b-48e8-839f-202d4580d27e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"IN1\",\r\n        \"description\": \"\",\r\n        \"zone_type\": 7,\r\n        \"is_global\": 0,\r\n        \"enable\": \"1\",\r\n        \"inter_lock\": {\r\n            \"doors\": [\r\n                {\r\n                    \"id\": \"2\"\r\n                },\r\n                {\r\n                    \"id\": \"3\"\r\n                }\r\n            ],\r\n            \"sensor_inputs\": [\r\n                {\r\n                    \"device\": {\r\n                        \"id\": \"546091003\"\r\n                    },\r\n                    \"input_index\": \"0\",\r\n                    \"duration\": \"300\",\r\n                    \"normal_open\": 0,\r\n                    \"input_type\": \"input\"\r\n                }\r\n            ],\r\n            \"alarm_actions\": [\r\n                {\r\n                    \"input_event_id\": 41472,\r\n                    \"output_type\": \"3\",\r\n                    \"output_device_id\": {\r\n                        \"id\": \"546091003\",\r\n                        \"buzzer\": true\r\n                    },\r\n                    \"output_buzzer_volume\": \"1\"\r\n                }\r\n            ]\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones","description":"<p>Interlock zone monitors the status of two or more doors by door sensor and relay state to control that one door cannot be opened or close if other doors are open or<br />unlocked. You can also disable access if a user stays within the zone.</p>\n<ul>\n<li>An interlock zone can be configured with up to 4 doors.</li>\n<li>An interlock zone can only set the doors with the devices connected to the CoreStation.</li>\n<li>A device set as an interlock zone cannot be set to another zone.</li>\n<li>A door set as an interlock zone cannot be set to another zone other than the fire alarm zone.</li>\n</ul>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>Y</td>\n<td>Enter an interlock zone name.</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>N</td>\n<td>Enter an interlock zone description.</td>\n</tr>\n<tr>\n<td>zone_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>View the zone type.</td>\n</tr>\n<tr>\n<td>is_global</td>\n<td>Number</td>\n<td>Y</td>\n<td>You can check the application range of the zone. Only Local mode is supported for interlock zone, and the zone can be set only with devices connected to the CoreStation and RS-485.</td>\n</tr>\n<tr>\n<td>enable</td>\n<td>Number</td>\n<td>Y</td>\n<td>You can disable the interlock zone. input 1 to enable it.</td>\n</tr>\n<tr>\n<td>inter_lock:doors:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>Select the doors to include in the interlock zone. You must select at least two doors that are the door sensor is connected.</td>\n</tr>\n<tr>\n<td>sensor_inputs:device:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>If a user stays in the zone, this option can prevent others from entering the zone. Input the device ID which will be used as sensor.</td>\n</tr>\n<tr>\n<td>sensor_inputs:input_index</td>\n<td>Number</td>\n<td>Y</td>\n<td>Index of the sensor which will be used.</td>\n</tr>\n<tr>\n<td>sensor_inputs:duration</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set the duration.</td>\n</tr>\n<tr>\n<td>sensor_inputs:normal_open</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set status between Normally Open or Closed.</td>\n</tr>\n<tr>\n<td>sensor_inputs:input_type</td>\n<td>String</td>\n<td>Y</td>\n<td>Type of the input.</td>\n</tr>\n<tr>\n<td>alarm_actions</td>\n<td>Array</td>\n<td>N</td>\n<td>Set the alarm action to carry out when a specific event occurs at the interlock zone.</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"6a67f924-6b5b-48e8-839f-202d4580d27e"},{"name":"Zones: Update","id":"19f44187-35fb-4313-8987-fe232e551dd9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Zone\": {\r\n        \"name\": \"testmuster1\",\r\n        \"zone_type\": 8,\r\n        \"is_global\": 1,\r\n        \"enable\": \"1\",\r\n        \"status\": \"64\",\r\n        \"muster\": {\r\n            \"access_groups\": [\r\n                {\r\n                    \"id\": \"1\"\r\n                }\r\n            ],\r\n            \"entry_devices\": [\r\n                {\r\n                    \"id\": \"731\"\r\n                }\r\n            ],\r\n            \"exit_devices\": [\r\n                {\r\n                    \"id\": \"729\"\r\n                }\r\n            ],\r\n            \"time_limit\": \"1200\",\r\n            \"alarm_actions\": []\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/zones/:id","description":"<p>This API is used to update a Zone.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the Zone which will be updated.</p>\n","type":"text/plain"},"type":"any","value":null,"key":"id"}]}},"response":[],"_postman_id":"19f44187-35fb-4313-8987-fe232e551dd9"},{"name":"Zones: Delete","id":"774a90dc-3d11-458d-94a4-df5abe0c606b","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"DELETE","header":[],"url":"https://127.0.0.1/api/zones/:id","description":"<p>This API is used to delete a Zone.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the zone which will be deleted.</p>\n","type":"text/plain"},"type":"any","value":"32786","key":"id"}]}},"response":[],"_postman_id":"774a90dc-3d11-458d-94a4-df5abe0c606b"},{"name":"View Zones","id":"ed18b5d6-b67e-48a1-ae07-a3f03a171a64","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/zones","description":"<p>This API is used to view zones.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones"],"host":["https://127.0.0.1"],"query":[{"disabled":true,"description":{"content":"<p>Limit the number of responses by n records.</p>\n","type":"text/plain"},"key":"limit","value":"50"},{"disabled":true,"description":{"content":"<p>Offset the responses by n records.</p>\n","type":"text/plain"},"key":"offset","value":"0"},{"disabled":true,"description":{"content":"<p>Limit the responses according to the zone_type. Leave empty for show all.\n0=Anti Passback, 1=Fire Alarm, 2=Scheduled Lock, 3=Scheduled Unlock - Door, 6=Intrusion, 7=Interlock, 8=Muster, 10=Scheduled Unlock - Elevator, 11=Occupancy</p>\n","type":"text/plain"},"key":"group_id","value":"4"}],"variable":[]}},"response":[],"_postman_id":"ed18b5d6-b67e-48a1-ae07-a3f03a171a64"},{"name":"View a Zone Detail","id":"b9b614c2-dedc-487f-9bd8-539b1a745554","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/zones/:id","description":"<p>This API is used to view a zone detailed information.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","zones",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"description":{"content":"<p>ID of the zone which will be viewed.</p>\n","type":"text/plain"},"type":"any","value":"32787","key":"id"}]}},"response":[],"_postman_id":"b9b614c2-dedc-487f-9bd8-539b1a745554"}],"id":"1f573912-c490-4d42-a276-3bde153502d0","_postman_id":"1f573912-c490-4d42-a276-3bde153502d0","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"SbS: Event Log","item":[{"name":"01 Login","event":[{"listen":"test","script":{"id":"34b8a49c-73e2-49ae-b347-a879c8fce2d5","exec":["//put response's bs-session-id value to collection variable bsid\r","pm.test(\"Status code is 200\", function () {\r","    pm.response.to.have.status(200);\r","});\r","\r","if(pm.response.to.have.status(200)) {\r","    let params = pm.response.headers.get('bs-session-id');\r","    pm.collectionVariables.set(\"bsid\", params);\r","}"],"type":"text/javascript"}}],"id":"a4cbafee-2f27-4110-8ded-dff459c44a23","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"login_id\": \"admin\",\r\n        \"password\": \"admin1234!\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/login","description":"<p>In order to view event log through Suprema BioStar 2 API, you will need a Session ID which will be available after you’re logged in.</p>\n<p>To log in, make a form encoded server side POST request as shown on example below.</p>\n<p><code>POST /api/login</code></p>\n<p><code>Host: server_ip|domain_name[:port]</code></p>\n<p><code>{“User”: {“login_id”: “user_login_id_here”, “password”: “password_here”}}</code></p>\n<p>The parameters are:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>login_id</td>\n<td>String</td>\n<td>Y</td>\n<td>Your login ID</td>\n</tr>\n<tr>\n<td>password</td>\n<td>String</td>\n<td>Y</td>\n<td>Your password</td>\n</tr>\n</tbody>\n</table>\n</div><p>If successful, you will receive back the following response:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">Status: 200 OK\nbs-session-id: c52127fea7f645149083d04d89ad68e5\nContent-Type: application/json;charset=UTF-8\n{\"User\":{\"user_id\":\"1\",\"name\":\"Administrator\",\"gender\":\"1\",\"email\":\"admin111@gmail.com\",\"birthday\":\"1977-10-08T04:00:00.00Z\",\"photo_exists\":\"false\",\"pin_exists\":\"false\",\"login_id\":\"admin\",\"password_exists\":\"true\",\"updated_count\":\"15\",\"last_modified\":\"946\",\"idx_last_modified\":\"263\",\"start_datetime\":\"2001-01-01T00:00:00.00Z\",\"expiry_datetime\":\"2030-12-31T23:59:00.00Z\",\"security_level\":\"0\",\"display_duration\":\"20\",\"display_count\":\"3\",\"permission\":{\"id\":\"1\",\"name\":\"Administrator\",\"description\":\"this is a permission for Administrator\",\"filter\":{\"UserGroup\":[\"1\"],\"DeviceGroup\":[\"1\"],\"DoorGroup\":[\"1\"],\"ElevatorGroup\":[\"1\"],\"ZoneType\":[\"-1\"],\"AccessGroup\":[\"0\"],\"GraphicMapGroup\":[\"1\"]},\"module\":{\"Dashboard\":{\"read\":\"true\",\"write\":\"true\"},\"User\":{\"read\":\"true\",\"write\":\"true\"},\"Device\":{\"read\":\"true\",\"write\":\"true\"},\"Door\":{\"read\":\"true\",\"write\":\"true\"},\"Elevator\":{\"read\":\"true\",\"write\":\"true\"},\"Zone\":{\"read\":\"true\",\"write\":\"true\"},\"AccessControl\":{\"read\":\"true\",\"write\":\"true\"},\"Monitoring\":{\"read\":\"true\",\"write\":\"true\"},\"TA\":{\"read\":\"true\",\"write\":\"true\"},\"Setting\":{\"read\":\"true\",\"write\":\"true\"},\"Video\":{\"read\":\"true\",\"write\":\"true\"},\"Visitor\":{\"read\":\"true\",\"write\":\"true\"}},\"device\":{\"id\":\"542071155\",\"id\":\"543720368\",\"id\":\"939257394\"},\"user\":{\"id\":\"1\",\"id\":\"2\",\"id\":\"3\",\"id\":\"4\",\"id\":\"5\",\"id\":\"6\",\"id\":\"7\",\"id\":\"20\",\"id\":\"21\",\"id\":\"22\",\"id\":\"23\",\"id\":\"24\",\"id\":\"25\",\"id\":\"26\",\"id\":\"27\",\"id\":\"28\",\"id\":\"29\",\"id\":\"30\",\"id\":\"31\",\"id\":\"32\",\"id\":\"33\"}},\"inherited\":\"false\",\"user_group_id\":{\"id\":\"1\",\"name\":\"All Users\"},\"disabled\":\"false\",\"expired\":\"false\",\"department\":\"department 12\",\"user_title\":\"title\",\"idx_user_id\":\"1001\",\"idx_user_id_num\":\"1001\",\"idx_name\":\"2001\",\"idx_phone\":\"1001\",\"idx_email\":\"5001\",\"fingerprint_template_count\":\"0\",\"face_count\":\"0\",\"card_count\":\"0\",\"access_groups\":[{\"id\":\"1\",\"name\":\"Meeting Room 1 AG\"},{\"id\":\"2\",\"name\":\"Meeting Room 2 AG\"},{\"id\":\"22\",\"name\":\"Building Access\"}],\"user_custom_fields\":[{\"user_id\":{\"user_id\":\"1\",\"name\":\"Administrator\"},\"custom_field\":{\"id\":\"1\",\"name\":\"Test\",\"type\":\"0\",\"order\":\"1\"}},{\"user_id\":{\"user_id\":\"1\",\"name\":\"Administrator\"},\"custom_field\":{\"id\":\"2\",\"name\":\"33\",\"type\":\"0\",\"order\":\"2\"}}],\"need_to_update_pw\":\"false\"},\"Response\":{\"code\":\"0\",\"link\":\"https:\\/\\/support.supremainc.com\\/en\\/support\\/home\",\"message\":\"Success\"}}\n\n</code></pre>\n<p>There will be a key called bs-session-id, which is a consecutive strings of hex digits located on the header of the response:<br /><code>bs-session-id: 643f64efb7114485a2fd89de17ca13fb</code></p>\n<p>This value will be used as authorization of the APIs that will be called. To apply this value, put it on the header of the API that will be called with key name <code>bs-session-id</code>.</p>\n","urlObject":{"path":["api","login"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"a4cbafee-2f27-4110-8ded-dff459c44a23"},{"name":"02 Search Events","id":"7d5c2354-1d5a-42bb-9a73-b76051e3935e","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"limit\": 20,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2022-03-10T15:00:00.000Z\",\r\n                    \"2022-03-31T16:59:59.000Z\"\r\n                ]\r\n            },\r\n            {\r\n                \"column\": \"device_id\",\r\n                \"operator\": 1,\r\n                \"values\": [\r\n                    \"543308153\"\r\n                ]\r\n            },\r\n            {\r\n                \"column\": \"id\",\r\n                \"operator\": 0,\r\n                \"values\": [\r\n                    \"394\"\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"descending\": false\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/events/search","description":"<p>After logging in, you can use this API to view event log(s).</p>\n<p>BODY parameters on this API:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>limit</td>\n<td>Number</td>\n<td>N</td>\n<td>Limit the response records by the value stated on this parameter</td>\n</tr>\n<tr>\n<td>conditions:column</td>\n<td>String</td>\n<td></td>\n<td>Field which the conditions will be based from</td>\n</tr>\n<tr>\n<td>conditions:operator</td>\n<td>Number</td>\n<td></td>\n<td>Condition Operator  <br />EQUAL : 0,  <br />NOT_EQUAL : 1,  <br />CONTAINS : 2,  <br />BETWEEN : 3,  <br />LIKE : 4,  <br />GREATER : 5,  <br />LESS : 6</td>\n</tr>\n<tr>\n<td>conditions:values</td>\n<td>Datetime</td>\n<td></td>\n<td>Value of the conditions</td>\n</tr>\n<tr>\n<td>orders:column</td>\n<td>String</td>\n<td></td>\n<td>Field which the sorting will be based on</td>\n</tr>\n<tr>\n<td>orders:descending</td>\n<td>Boolean</td>\n<td></td>\n<td>Toggle true to set the sorting as descending</td>\n</tr>\n</tbody>\n</table>\n</div><p>There are two main components on this API: conditions and orders.</p>\n<p>On conditions, you can put multiple criteria to filter the API response according to your need.</p>\n<p>While on orders, it is used to sort the response according to specified parameter, either ascending or descending.</p>\n<p>On this example, there are three criteria on the conditions component:</p>\n<ul>\n<li>First criteria filter the response according to datetime parameter (column: datetime) with date range between (operator: 3) value specified on values: [].</li>\n<li>Second criteria filter the response to show event log where the device id (column: device_id) is not (operator: 1) as specified (values []).</li>\n<li>Third criteria filter the response to show event logs which have the specified value (values []) as its id (column:id, operator: 0).</li>\n<li>The relation between multiple criteria on a single API call is AND.</li>\n</ul>\n<p>For the orders component on this example, it will sort the response according to parameter datetime (column: datetime) ascending (descending: false).</p>\n<p>Do note that the datetime that is shown on the response is based on UTC-0, so if you want to view event log from a device which use UTC+8, then you need to convert the datetime from UTC+8 to UTC-0 and use the conversion result as criteria value on the conditions.</p>\n<p>Example:</p>\n<ul>\n<li>Device: UTC+8. Event log occurred when datetime on the device is 2022-06-02 01:37</li>\n<li>Convert the datetime to UTC-0 : 2022-06-01 17:37</li>\n<li>Use this converted value as criteria value on the condition</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","events","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"7d5c2354-1d5a-42bb-9a73-b76051e3935e"},{"name":"Search Events Example","id":"5a87847b-1027-402d-b28e-260fda61d7b7","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"Query\": {\r\n        \"limit\": 5,\r\n        \"conditions\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"operator\": 3,\r\n                \"values\": [\r\n                    \"2022-05-31T16:05:00.000Z\",\r\n                    \"2022-06-30T15:58:00.000Z\"\r\n                ]\r\n            },\r\n            {\r\n                \"column\": \"device_id\",\r\n                \"operator\": 0,\r\n                \"values\": [\r\n                    \"543308153\"\r\n                ]\r\n            }\r\n        ],\r\n        \"orders\": [\r\n            {\r\n                \"column\": \"datetime\",\r\n                \"descending\": true\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/events/search","description":"<p>This example shows how to view event log from device with id: 543308153 (device timezone set as UTC+8) and log with datetime between 2022-06-01 00:05 to 2022-06-30 23:58.</p>\n<p>Note that the datetime used on the API criteria is different from what the user would like to see. This is because the device was set to use UTC+8, so to view the correct log, use datetime which have been converted to UTC-0.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","events","search"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"5a87847b-1027-402d-b28e-260fda61d7b7"},{"name":"View Event Types","id":"857517e3-5903-4779-a83c-15f6623266b8","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/event_types?is_break_glass=false&setting_alert=false&setting_all=true","description":"<p>This API is used for listing event types recorded on BioStar 2 database.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","event_types"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>?</p>\n","type":"text/plain"},"key":"is_break_glass","value":"false"},{"description":{"content":"<p>Toggle true to list events which will trigger alert. Marked by 'alertable' parameter on the event. 'enable_alert' is used for marking which event will show a pop up notice on Bio Star 2.</p>\n","type":"text/plain"},"key":"setting_alert","value":"false"},{"description":{"content":"<p>Toggle true to list all events recorded on database.</p>\n","type":"text/plain"},"key":"setting_all","value":"true"}],"variable":[]}},"response":[],"_postman_id":"857517e3-5903-4779-a83c-15f6623266b8"}],"id":"141cd36d-b0a5-4714-a009-1c4dd650346e","_postman_id":"141cd36d-b0a5-4714-a009-1c4dd650346e","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}},{"name":"SbS: Create User","item":[{"name":"01 Login","event":[{"listen":"test","script":{"id":"34b8a49c-73e2-49ae-b347-a879c8fce2d5","exec":["//put response's bs-session-id value to collection variable bsid\r","pm.test(\"Status code is 200\", function () {\r","    pm.response.to.have.status(200);\r","});\r","\r","if(pm.response.to.have.status(200)) {\r","    let params = pm.response.headers.get('bs-session-id');\r","    pm.collectionVariables.set(\"bsid\", params);\r","}"],"type":"text/javascript"}}],"id":"d7a75454-12ca-4233-8c05-e0290714d0bf","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"login_id\": \"admin\",\r\n        \"password\": \"admin1234!\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/login","description":"<p>In order to create User through Suprema BioStar 2 API, you will need a Session ID which will be available after you’re logged in.</p>\n<p>To log in, make a form encoded server side POST request as shown on example below.</p>\n<p><code>POST /api/login</code></p>\n<p><code>Host: server_ip|domain_name[:port]</code></p>\n<p><code>{“User”: {“login_id”: “user_login_id_here”, “password”: “password_here”}}</code></p>\n<p>The parameters are:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>login_id</td>\n<td>String</td>\n<td>Y</td>\n<td>Your login ID</td>\n</tr>\n<tr>\n<td>password</td>\n<td>String</td>\n<td>Y</td>\n<td>Your password</td>\n</tr>\n</tbody>\n</table>\n</div><p>If successful, you will receive back the following response:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">Status: 200 OK\nbs-session-id: c52127fea7f645149083d04d89ad68e5\nContent-Type: application/json;charset=UTF-8\n{\"User\":{\"user_id\":\"1\",\"name\":\"Administrator\",\"gender\":\"1\",\"email\":\"admin111@gmail.com\",\"birthday\":\"1977-10-08T04:00:00.00Z\",\"photo_exists\":\"false\",\"pin_exists\":\"false\",\"login_id\":\"admin\",\"password_exists\":\"true\",\"updated_count\":\"15\",\"last_modified\":\"946\",\"idx_last_modified\":\"263\",\"start_datetime\":\"2001-01-01T00:00:00.00Z\",\"expiry_datetime\":\"2030-12-31T23:59:00.00Z\",\"security_level\":\"0\",\"display_duration\":\"20\",\"display_count\":\"3\",\"permission\":{\"id\":\"1\",\"name\":\"Administrator\",\"description\":\"this is a permission for Administrator\",\"filter\":{\"UserGroup\":[\"1\"],\"DeviceGroup\":[\"1\"],\"DoorGroup\":[\"1\"],\"ElevatorGroup\":[\"1\"],\"ZoneType\":[\"-1\"],\"AccessGroup\":[\"0\"],\"GraphicMapGroup\":[\"1\"]},\"module\":{\"Dashboard\":{\"read\":\"true\",\"write\":\"true\"},\"User\":{\"read\":\"true\",\"write\":\"true\"},\"Device\":{\"read\":\"true\",\"write\":\"true\"},\"Door\":{\"read\":\"true\",\"write\":\"true\"},\"Elevator\":{\"read\":\"true\",\"write\":\"true\"},\"Zone\":{\"read\":\"true\",\"write\":\"true\"},\"AccessControl\":{\"read\":\"true\",\"write\":\"true\"},\"Monitoring\":{\"read\":\"true\",\"write\":\"true\"},\"TA\":{\"read\":\"true\",\"write\":\"true\"},\"Setting\":{\"read\":\"true\",\"write\":\"true\"},\"Video\":{\"read\":\"true\",\"write\":\"true\"},\"Visitor\":{\"read\":\"true\",\"write\":\"true\"}},\"device\":{\"id\":\"542071155\",\"id\":\"543720368\",\"id\":\"939257394\"},\"user\":{\"id\":\"1\",\"id\":\"2\",\"id\":\"3\",\"id\":\"4\",\"id\":\"5\",\"id\":\"6\",\"id\":\"7\",\"id\":\"20\",\"id\":\"21\",\"id\":\"22\",\"id\":\"23\",\"id\":\"24\",\"id\":\"25\",\"id\":\"26\",\"id\":\"27\",\"id\":\"28\",\"id\":\"29\",\"id\":\"30\",\"id\":\"31\",\"id\":\"32\",\"id\":\"33\"}},\"inherited\":\"false\",\"user_group_id\":{\"id\":\"1\",\"name\":\"All Users\"},\"disabled\":\"false\",\"expired\":\"false\",\"department\":\"department 12\",\"user_title\":\"title\",\"idx_user_id\":\"1001\",\"idx_user_id_num\":\"1001\",\"idx_name\":\"2001\",\"idx_phone\":\"1001\",\"idx_email\":\"5001\",\"fingerprint_template_count\":\"0\",\"face_count\":\"0\",\"card_count\":\"0\",\"access_groups\":[{\"id\":\"1\",\"name\":\"Meeting Room 1 AG\"},{\"id\":\"2\",\"name\":\"Meeting Room 2 AG\"},{\"id\":\"22\",\"name\":\"Building Access\"}],\"user_custom_fields\":[{\"user_id\":{\"user_id\":\"1\",\"name\":\"Administrator\"},\"custom_field\":{\"id\":\"1\",\"name\":\"Test\",\"type\":\"0\",\"order\":\"1\"}},{\"user_id\":{\"user_id\":\"1\",\"name\":\"Administrator\"},\"custom_field\":{\"id\":\"2\",\"name\":\"33\",\"type\":\"0\",\"order\":\"2\"}}],\"need_to_update_pw\":\"false\"},\"Response\":{\"code\":\"0\",\"link\":\"https:\\/\\/support.supremainc.com\\/en\\/support\\/home\",\"message\":\"Success\"}}\n\n</code></pre>\n<p>There will be a key called bs-session-id, which is a consecutive strings of hex digits located on the header of the response:<br /><code>bs-session-id: 643f64efb7114485a2fd89de17ca13fb</code></p>\n<p>This value will be used as authorization of the APIs that will be called. To apply this value, put it on the header of the API that will be called with key name <code>bs-session-id</code>.</p>\n","urlObject":{"path":["api","login"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"d7a75454-12ca-4233-8c05-e0290714d0bf"},{"name":"02 View BioStar Settings","id":"a3f437f2-85c2-4514-8512-c21986dfd036","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/setting/biostar","description":"<p>After logged in, use this API to view the User ID setting of the BioStar 2, is it AlphaNumeric or Number.</p>\n<p>It can be seen on parameter <strong>use_alphanumeric</strong>, if the value is false then the current setting for User ID is Number, else it's AlphaNumeric.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","setting","biostar"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"a3f437f2-85c2-4514-8512-c21986dfd036"},{"name":"03 Find Next Available UserID","event":[{"listen":"test","script":{"id":"9e003e5c-2428-408a-82b3-ab3f5d8e98da","exec":["const jsonData = pm.response.json();\r","pm.collectionVariables.set(\"nuid\", jsonData.User.user_id);"],"type":"text/javascript"}}],"id":"9a16608c-6632-401e-b138-ce2c1b820ac0","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/users/next_user_id","description":"<p>After User ID setting of BioStar 2 is confirmed, use this API to get the next user_id for new user.</p>\n<p>This API will only shows next available ID in number format.</p>\n<p>Keep this ID for input on user_id parameter when creating new user.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users","next_user_id"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"9a16608c-6632-401e-b138-ce2c1b820ac0"},{"name":"04a Enroll Card Credential","id":"68545352-8f31-4eef-98af-c725400c2d71","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"url":"https://127.0.0.1/api/devices/:id/scan_card","description":"<p>Next step on creating a new user it to enroll the credential that the user will be using. Either it's Card, Face, Visual Face or Fingerprint.</p>\n<p>This API is used to enroll card credential using the specified device.</p>\n<p>Keep the card_id value on the response which shows after running this API to apply it to the user which will be created.</p>\n<p>To view device(s) with capability to enroll a card, use <code>View Device(s) Based on Enrollment Type</code> API.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","scan_card"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"af47d6a7-a885-47f4-ad4a-a79f2825a55b","description":{"content":"<p>ID of the device which will be used for enrollment</p>\n","type":"text/plain"},"type":"any","value":"543720368","key":"id"}]}},"response":[],"_postman_id":"68545352-8f31-4eef-98af-c725400c2d71"},{"name":"04b Enroll Face Credential","id":"8c3d54fa-2081-4e7a-aeff-a0eafcd32e26","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[],"url":"https://127.0.0.1/api/devices/:id/credentials/face?pose_sensitivity=4","description":"<p>Use this API to enroll face credential from a device.</p>\n<p>Set the pose_sensitivity to 0 if you're doing a Visual Face scan.</p>\n<p>Keep the response of this API after running to apply it to the user which will be created.</p>\n<p>To view device(s) with capability to enroll Face/Visual Face, use <code>View Device(s) Based on Enrollment Type</code> API.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":id","credentials","face"],"host":["https://127.0.0.1"],"query":[{"description":{"content":"<p>Set the sensitivity for the position, angle, and distance of a face when registering the face. Set the sensitivity high if you wish to obtain a detailed face template. 0-9</p>\n","type":"text/plain"},"key":"pose_sensitivity","value":"4"}],"variable":[{"id":"cca198be-6257-43ae-8227-869aeec5e345","description":{"content":"<p>ID of the device which will be used to enroll</p>\n","type":"text/plain"},"type":"any","value":"543408590","key":"id"}]}},"response":[],"_postman_id":"8c3d54fa-2081-4e7a-aeff-a0eafcd32e26"},{"name":"04c Enroll Fingerprint","id":"06d56942-1eac-41ec-b8f3-f2161af086bc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"ScanFingerprintOption\": {\r\n        \"enroll_quality\": \"80\",\r\n        \"raw_image\": false\r\n    },\r\n    \"noblockui\": true\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/devices/:dev_id/scan_fingerprint","description":"<p>Use this API to scan a fingerprint.</p>\n<p>On calling this API, it is required to specify the device which will be used as fingerprint scanner. It is done by specifying Device ID on the API Path, which marked by :dev_id.</p>\n<p>The procedure to add a fingerprint as follows:<br />- Scan a finger using this API<br />- Use POST /api/server_matching/identify_finger to check if it's already exist<br />- If it's not exist, then run a second scan using this API for the same finger<br />- Compare 1st and 2nd scan result using POST /api/devices/:dev_id/verify_fingerprint to make sure that 1st and 2nd scan are the same finger<br />- After running <code>Verify Fingerprint Scan</code>, keep the value of template 0 and 1 to assign the enrolled finger to a user using POST|PUT /api/users/:id</p>\n<p>BODY parameters on this API as follows:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>ScanFingerprintOption</td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td>:enroll_quality</td>\n<td>Number</td>\n<td>Y</td>\n<td>Set a fingerprint enrollment quality level. Any fingerprint which does not meet the quality requirement will not be enrolled.</td>\n</tr>\n<tr>\n<td>:raw_image</td>\n<td>Boolean</td>\n<td>Y</td>\n<td>Set this option to view the original image when a fingerprint is scanned.</td>\n</tr>\n<tr>\n<td>noblockui</td>\n<td>Boolean</td>\n<td>Y</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","devices",":dev_id","scan_fingerprint"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"a8144035-1456-4cc9-be5b-39c5f974fc14","type":"any","value":"544140034","key":"dev_id"}]}},"response":[],"_postman_id":"06d56942-1eac-41ec-b8f3-f2161af086bc"},{"name":"05 Create New User","event":[{"listen":"prerequest","script":{"id":"11ffbb22-8d89-49f0-a6b3-c97e38cc4e78","exec":["const postRequest = {\r","  url: pm.collectionVariables.get('baseUrl')+\"/api/users/next_user_id\",\r","  method: 'GET',\r","  header: {\r","    'bs-session-id': pm.collectionVariables.get('bsid')\r","  },\r","};\r","\r","pm.sendRequest(postRequest, (error, res) => {\r","  console.log(error ? error : res.json());\r","  const jsonData = res.json();\r","  pm.collectionVariables.set(\"nuid\", jsonData.User.user_id);\r","});"],"type":"text/javascript"}},{"listen":"test","script":{"id":"94918b56-bebc-4e1a-acdd-c7fc8d5d2c02","exec":["//Loop Request nLoop times\r","/*\r","pm.environment.set(\"nLoop\", 10);\r","var currentCount = pm.environment.get(\"nLoop\")\r","if (currentCount > 0){\r"," currentCount = currentCount -1 ;\r"," pm.environment.set(\"nLoop\", currentCount);\r"," postman.setNextRequest(\"Create New User\");\r","}*/\r",""],"type":"text/javascript"}}],"id":"3f2fdefa-84de-4294-a190-bd46573a1ddd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_id\": \"\",\r\n        \"user_group_id\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"start_datetime\": \"2001-01-01T00:00:00.00Z\",\r\n        \"expiry_datetime\": \"2030-12-31T23:59:00.00Z\",\r\n        \"disabled\": \"\",\r\n        \"name\": \"Titus\",\r\n        \"email\": \"Alessandro.Goodwin6@yahoo.com\",\r\n        \"department\": \"\",\r\n        \"title\": \"\",\r\n        \"photo\": \"\",\r\n        \"phone\": \"\",\r\n        \"permission\": {\r\n            \"id\": \"1\"\r\n        },\r\n        \"access_groups\": {\r\n            \"id\": \"\"\r\n        },\r\n        \"login_id\": \"\",\r\n        \"password\": \"maMQE8Zp1tEi1Bz\",\r\n        \"user_ip\": \"200.70.220.160\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users","description":"<p>After preparing available user_id and credential(s), use this API to create a new user using the basic configuration.</p>\n<p>For applying configuration beyond this, such as credential(s) or custom fields, refer to the subsequent example.</p>\n<p>The BODY parameters are:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameters</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>user_id</td>\n<td>String</td>\n<td>Y</td>\n<td>ID of the User. Unique.  <br />  <br />When User ID Type in Setting &gt; Server is set to Number, a number between 1 and 4294967295 can be entered. When Alphanumeric is set, a combination of alphabetic characters and numbers can be entered.  <br />Do not use spaces when entering ID.  <br />Numbers or Alphanumeric characters can be set for user_id. For more details, refer to Setting Section of this documentation.</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>N</td>\n<td>Name of the user. Up to 48 characters.</td>\n</tr>\n<tr>\n<td>user_group_id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the User Group that the user will be under. Refer to User Group Section of this documentation for listing available User Groups.</td>\n</tr>\n<tr>\n<td>disabled</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Toggle User active or not; false for active, true for non-active.</td>\n</tr>\n<tr>\n<td>start_datetime</td>\n<td>Date/Time</td>\n<td>Y</td>\n<td>Start active period for the User.</td>\n</tr>\n<tr>\n<td>expiry_datetime</td>\n<td>Date/Time</td>\n<td>Y</td>\n<td>End active period for the User.</td>\n</tr>\n<tr>\n<td>email</td>\n<td>String</td>\n<td>N</td>\n<td>Email address of the User.</td>\n</tr>\n<tr>\n<td>department</td>\n<td>String</td>\n<td>N</td>\n<td>Department of the User. Up to 64 characters.</td>\n</tr>\n<tr>\n<td>title</td>\n<td>String</td>\n<td>N</td>\n<td>Title of the User.</td>\n</tr>\n<tr>\n<td>photo</td>\n<td>Base64</td>\n<td>N</td>\n<td>Photo of the User.</td>\n</tr>\n<tr>\n<td>phone</td>\n<td>String</td>\n<td>N</td>\n<td>Phone number of the User.</td>\n</tr>\n<tr>\n<td>permission</td>\n<td>Number</td>\n<td>N</td>\n<td>Operator Level of the User.  <br />  <br /><strong>None</strong>: The user has no operator privilege. To use this Operator Level, remove permission parameter from the API Request.  <br /><strong>Administrator</strong>: The user can use all menus.  <br /><strong>User Operator</strong>: The user can only use the USER and PREFERENCE menus.  <br /><strong>Monitoring Operator</strong>: The user can use the MONITORING and PREFERENCE menus and only view the DASHBOARD, USER, DEVICE, DOOR, ZONE and ACCESS CONTROL menus.  <br /><strong>Video Operator</strong>: The user can only use the VIDEO menu.  <br /><strong>T&amp;A Operator</strong>: The user can only use the TIME ATTENDANCE menu and only view the USER menu.  <br /><strong>User</strong>: The user can only view own information and T&amp;A records.</td>\n</tr>\n<tr>\n<td>access_groups</td>\n<td>Number</td>\n<td>N</td>\n<td>ID of the Access Group that the User will have access. Refer to Access Group Section of this documentation for listing available Access Groups.  <br />Can enter more than 1 Access Group.</td>\n</tr>\n<tr>\n<td>login_id</td>\n<td>String</td>\n<td>N</td>\n<td>Required when permission parameter is not removed.</td>\n</tr>\n<tr>\n<td>password</td>\n<td>String</td>\n<td>N</td>\n<td>Required when permission parameter is not removed.</td>\n</tr>\n<tr>\n<td>user_ip</td>\n<td>String</td>\n<td>N</td>\n<td>Limit the access of the User so he/she can only login from the registered IP Address.  <br />  <br />The user IP can be entered in the format xxx.xxx.xxx.xxx. Each octet can only be entered in numbers between 0 and 255.  <br />Users whose user IP is not registered can log in from any IP.</td>\n</tr>\n<tr>\n<td>pin</td>\n<td>Number</td>\n<td>N</td>\n<td>PIN of the user. Maximum 32 digit.</td>\n</tr>\n</tbody>\n</table>\n</div><p>When Setting &gt; Server is set to Number, you can make use of endpoint /api/users/next_user_id to automatically get the next user_id. Refer to <code>GET</code> Find Next Available UserID for the detail of this endpoint.</p>\n<p>Known errors:</p>\n<ul>\n<li>name is more than 48 characters</li>\n<li>Using single quote on name</li>\n<li>Duplicate user_id, email, or login_id</li>\n<li>Empty user_id, user_group_id, start_datetime, expiry_datetime</li>\n<li>Using user_group_id:id which doesn't exist</li>\n<li>Putting \"/\" at the end of the endpoint</li>\n<li>Password with 3 or more subsequent letter or number</li>\n<li>Start and expiry date difference is more than 30 years</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users"],"host":["https://127.0.0.1"],"query":[],"variable":[]}},"response":[],"_postman_id":"3f2fdefa-84de-4294-a190-bd46573a1ddd"},{"name":"05a User:Custom Field","event":[{"listen":"prerequest","script":{"id":"8d98be47-f88b-41c7-b763-b73c0f51e4a0","exec":[""],"type":"text/javascript"}}],"id":"57c90d4e-e0dd-4166-8f5d-d3f1853a0bf6","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"user_custom_fields\": [\r\n            {\r\n                \"item\": \"TextInput here\",\r\n                \"custom_field\": {\r\n                    \"id\": \"1\"\r\n                }\r\n            },\r\n            {\r\n                \"item\": \"134669\",\r\n                \"custom_field\": {\r\n                    \"id\": \"2\"\r\n                }\r\n            },\r\n            {\r\n                \"item\": \"Motor\",\r\n                \"custom_field\": {\r\n                    \"id\": \"3\"\r\n                }\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>Use GET /api/setting/custom_fields to view available Custom Fields.</p>\n<p>There are 3 type of Custom Fields: Text Input, Number Input and Combo Box. Text Input and Combo Box will accept any value, and Number Input will only receive number.</p>\n<p>Body parameter for Creating/Updating Custom Field on a User:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>item</td>\n<td>String</td>\n<td>N</td>\n<td>Content of the Custom Field</td>\n</tr>\n<tr>\n<td>custom_field:id</td>\n<td>Number</td>\n<td>Y</td>\n<td>ID of the Custom Field</td>\n</tr>\n</tbody>\n</table>\n</div><p>To skip create/update a Custom Field, skip it from the Body.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"7b2369f0-58d4-429f-9162-d450246a5f94","type":"any","value":"10","key":"id"}]}},"response":[],"_postman_id":"57c90d4e-e0dd-4166-8f5d-d3f1853a0bf6"},{"name":"05b User Credential: Misc (Include Device Default Authentication Mode)","event":[{"listen":"prerequest","script":{"id":"70b51861-f9d6-46b0-b97b-34b1b9e74d47","exec":[""],"type":"text/javascript"}}],"id":"3961d7e7-df50-4f15-add1-709fe67a673f","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"pin\": \"\",\r\n        \"security_level\": 0,\r\n        \"private_operation_modes\": [\r\n            {\r\n                \"operation_method\": 2,\r\n                \"operation_mode\": 0,\r\n                \"exclude\": false\r\n            },\r\n            {\r\n                \"operation_method\": 2,\r\n                \"operation_mode\": 1,\r\n                \"exclude\": false\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>On this example you can see how to use stated parameters to adjust misc. credential values.</p>\n<p>Parameters on this example:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>pin</td>\n<td>Number</td>\n<td>N</td>\n<td>PIN of the User</td>\n</tr>\n<tr>\n<td>security_level</td>\n<td>Number</td>\n<td>N</td>\n<td>To set the security level of the credential. The higher the security level is set, the false rejection rate (FRR) gets higher, but the false acceptance rate (FAR) gets lower. Acceptable value: 0 to 5</td>\n</tr>\n<tr>\n<td>private_operation_modes</td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td>:operation_method</td>\n<td>Number</td>\n<td></td>\n<td>The first credential of an Authentication Mode (0: ID, 1: Card, 2: Fingerprint/Biometric (Standard), 3: Face)  <br /></td>\n</tr>\n<tr>\n<td>:operation_mode</td>\n<td>Number</td>\n<td></td>\n<td>Authentication Mode combination (see below for reference, \"-1\" = do not use)</td>\n</tr>\n<tr>\n<td>:exclude</td>\n<td>Boolean</td>\n<td></td>\n<td>If Include Device Default Authentication Mode option is on, so when you want to also follow the Auth Modes that the devices have, “private_operation_modes” will have same number of elements that you actually configured. But if Exclude Device Default Authentication Mode is on, you need to add four or more elements because all the values of “operation_method” should be included to override device’s Auth Modes.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Authentication Mode Combination Table:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Value</strong></th>\n<th><strong>Code</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Type</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>0</td>\n<td>BS2_AUTH_MODE_BIOMETRIC_ONLY</td>\n<td>Biometric only</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>1</td>\n<td>BS2_AUTH_MODE_BIOMETRIC_PIN</td>\n<td>Biometric + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>2</td>\n<td>BS2_AUTH_MODE_CARD_ONLY</td>\n<td>Card only</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>3</td>\n<td>BS2_AUTH_MODE_CARD_BIOMETRIC</td>\n<td>Card + Biometric</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>4</td>\n<td>BS2_AUTH_MODE_CARD_PIN</td>\n<td>Card + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>5</td>\n<td>BS2_AUTH_MODE_CARD_BIOMETRIC_OR_PIN</td>\n<td>Card + Biometric or PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>6</td>\n<td>BS2_AUTH_MODE_CARD_BIOMETRIC_PIN</td>\n<td>Card + Biometric + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>7</td>\n<td>BS2_AUTH_MODE_ID_BIOMETRIC</td>\n<td>ID + Biometric</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>8</td>\n<td>BS2_AUTH_MODE_ID_PIN</td>\n<td>ID + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>9</td>\n<td>BS2_AUTH_MODE_ID_BIOMETRIC_OR_PIN</td>\n<td>ID + Biometric or PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>10</td>\n<td>BS2_AUTH_MODE_ID_BIOMETRIC_PIN</td>\n<td>ID + Biometric + PIN</td>\n<td>Standard</td>\n</tr>\n<tr>\n<td>11</td>\n<td>BS2_EXT_AUTH_MODE_FACE_ONLY</td>\n<td>Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>12</td>\n<td>BS2_EXT_AUTH_MODE_FACE_FINGERPRINT</td>\n<td>Face + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>13</td>\n<td>BS2_EXT_AUTH_MODE_FACE_PIN</td>\n<td>Face + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>14</td>\n<td>BS2_EXT_AUTH_MODE_FACE_FINGERPRINT_OR_PIN</td>\n<td>Face + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>15</td>\n<td>BS2_EXT_AUTH_MODE_FACE_FINGERPRINT_PIN</td>\n<td>Face + Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>16</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_ONLY</td>\n<td>Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>17</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_FACE</td>\n<td>Fingerprint + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>18</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_PIN</td>\n<td>Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>19</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_FACE_OR_PIN</td>\n<td>Fingerprint + Face/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>20</td>\n<td>BS2_EXT_AUTH_MODE_FINGERPRINT_FACE_PIN</td>\n<td>Fingerprint + Face + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>21</td>\n<td>BS2_EXT_AUTH_MODE_CARD_ONLY</td>\n<td>Card</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>22</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE</td>\n<td>Cardn + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>23</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT</td>\n<td>Card + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>24</td>\n<td>BS2_EXT_AUTH_MODE_CARD_PIN</td>\n<td>Card + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>25</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT</td>\n<td>Card + Face/Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>26</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_OR_PIN</td>\n<td>Card + Face/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>27</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_OR_PIN</td>\n<td>Card + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>28</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT_OR_PIN</td>\n<td>Card + Face/Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>29</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_FINGERPRINT</td>\n<td>Card + Face + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>30</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_PIN</td>\n<td>Card + Face + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>31</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_FACE</td>\n<td>Card + Fingerprint + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>32</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_PIN</td>\n<td>Card + Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>33</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_OR_FINGERPRINT_PIN</td>\n<td>Card + Face/Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>34</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FACE_FINGERPRINT_OR_PIN</td>\n<td>Card + Face + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>35</td>\n<td>BS2_EXT_AUTH_MODE_CARD_FINGERPRINT_FACE_OR_PIN</td>\n<td>Card + Fingerprint + Face/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>36</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE</td>\n<td>ID + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>37</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT</td>\n<td>ID + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>38</td>\n<td>BS2_EXT_AUTH_MODE_ID_PIN</td>\n<td>ID + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>39</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT</td>\n<td>ID + Face/Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>40</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_OR_PIN</td>\n<td>ID + Face/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>41</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT_OR_PIN</td>\n<td>ID + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>42</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT_OR_PIN</td>\n<td>ID + Face/Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>43</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_FINGERPRINT</td>\n<td>ID + Face + Fingerprint</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>44</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_PIN</td>\n<td>ID + Face + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>45</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT_FACE</td>\n<td>ID + Fingerprint + Face</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>46</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT_PIN</td>\n<td>ID + Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>47</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_OR_FINGERPRINT_PIN</td>\n<td>ID + Face/Fingerprint + PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>48</td>\n<td>BS2_EXT_AUTH_MODE_ID_FACE_FINGERPRINT_OR_PIN</td>\n<td>ID + Face + Fingerprint/PIN</td>\n<td>Extended</td>\n</tr>\n<tr>\n<td>49</td>\n<td>BS2_EXT_AUTH_MODE_ID_FINGERPRINT_FACE_OR_PIN</td>\n<td>ID + Fingerprint + Face/PIN</td>\n<td>Extended</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"b694207a-c5f9-4f49-b3b6-c1e70a1fb29a","type":"any","value":"101","key":"id"}]}},"response":[],"_postman_id":"3961d7e7-df50-4f15-add1-709fe67a673f"},{"name":"05c User Credential: Misc (Exclude Device Default Authentication Mode)","event":[{"listen":"prerequest","script":{"id":"b9571059-b07c-462e-8ded-91a6e6ac57e8","exec":[""],"type":"text/javascript"}}],"id":"b9281936-bb14-4223-b437-da46ff0a7938","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"pin\": \"\",\r\n        \"security_level\": 0,\r\n        \"private_operation_modes\": [\r\n            {\r\n                \"operation_method\": 2,\r\n                \"operation_mode\": 0,\r\n                \"exclude\": false\r\n            },\r\n            {\r\n                \"operation_method\": 0,\r\n                \"operation_mode\": -1,\r\n                \"exclude\": true\r\n            },\r\n            {\r\n                \"operation_method\": 1,\r\n                \"operation_mode\": -1,\r\n                \"exclude\": true\r\n            },\r\n            {\r\n                \"operation_method\": 3,\r\n                \"operation_mode\": -1,\r\n                \"exclude\": true\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>As stated on previous example (User Credential: Misc (Include Device Default Authentication Mode)), when you want to use Exclude Device Default Authentication Mode then you need to state all values of the Authentication Method.</p>\n<p>On this example, the Authentication Mode that's being used is Biometric (operation_method: 2) only (operation_mode: 0) and the other Authentication Method: ID (0), Card (1), and Face (3) are set as do not use (operation_mode: -1) and hidden (exclude: true)</p>\n<p>To use Extended Auth Mode simply use code that starts from 11 (refer to Authentication Mode Combination Table on User Credential: Misc (Include Device Default Authentication Mode)), do note that this mode only supported by FaceStation F2.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"cad5c343-37b1-412f-a8e3-71d705c4c86d","type":"any","value":"101","key":"id"}]}},"response":[],"_postman_id":"b9281936-bb14-4223-b437-da46ff0a7938"},{"name":"05d User Credential: Card","event":[{"listen":"prerequest","script":{"id":"444ebbf2-a422-471c-ae92-9a9d316d5dfc","exec":[""],"type":"text/javascript"}}],"id":"c615a660-134c-4669-9cec-38e5b95b66dc","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"cards\": [\r\n            {\r\n                \"id\": \"30\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>This example shows how to assign a card to a User, which is applicable to CSN, Wiegand, Smart, Mobile, and QR/Barcode.</p>\n<p>First the card must be enrolled to the database by using <code>POST /api/cards</code>.</p>\n<p>After enrolled, use <code>GET /api/cards</code> to view all Cards or <code>GET /api/cards/unassigned</code> to view all Cards which are unassigned.</p>\n<p>Select a card from the response and apply it on the body as shown on the example to assign it to the selected user.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"d247f675-bfd0-45ec-8e29-68c0eb44d8b3","type":"any","value":"101","key":"id"}]}},"response":[],"_postman_id":"c615a660-134c-4669-9cec-38e5b95b66dc"},{"name":"05e User Credential: Face","event":[{"listen":"prerequest","script":{"id":"5fe5b456-32c7-4cfc-a6ed-97d9ed85bbbb","exec":[""],"type":"text/javascript"}}],"id":"5ba63fa5-129e-4dfa-91d8-849c8dce601a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"credentials\": {\r\n            \"faces\": [\r\n                {\r\n                    \"raw_image\": \"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAMCAgMCAgMDAwMEAwMEBQgFBQQEBQoHBwYIDAoMDAsKCwsNDhIQDQ4RDgsLEBYQERMUFRUVDA8XGBYUGBIUFRT/ This is a truncated RAW Data\",\r\n                    \"templates\": [\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABq83b11/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACs9nf9Ov5vAxz64gF2/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABY+AP9VfxIB1T5zANF/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABr9I79d/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADM+FX9O/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACZ90T6E/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAp+eAAtv4QBOz7MgJ5/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAm+OMHjP9OBZ/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADZ9Un40fkJCKDzsv/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACC9ET98/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADv9jv6m/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACL8834ZPf5B7XxmgLw+1kBifoSEMrp5PIDCx8acwKeCJ7a5gYSA5oDKAkB9UT6Ae17F18EWP1gAlDxW/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAh+Y8EXvwlAGD6+wOy/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADU8nL8pvcyA6H1lP9P+AABqPw1Du/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAB09TD+u/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADZ/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABi+U78LPkEAUH7LgPs/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAM/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAD69iL9v/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAH+jcCd/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAl+f0ERADdBj/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAb+9MHIgKaBe36dwFm/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAB6+HYH2P+QBYb42gA2/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABG+gsHjQLuBaX7pf86/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADE96kF5Pz4Bsb4Cv6S/ Truncated\"\r\n                        }\r\n                    ]\r\n                },\r\n                {\r\n                    \"raw_image\": \"/9j/4AAQSkZJRgABAQAAAQABAAD/ Truncated\",\r\n                    \"templates\": [\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABu8qP+lPvSCAj2eQXHAnkBPfqWD/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAA+9R733fQfCmn3UwVfAC0B4fgaEBPsWPJQB3IYmP+jB9ndMgcPCBAJvgp/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACN93D/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAB7+Y/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACS8Qb9mf2vCnL2QgU5AV8Bifq3D3vn4PMdClcYyf8nCtnbKgWg9igF0Bff+VP5p/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABO+Cv/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADn8j36PvezBVj1WAA491D/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAA19ar5EfSCCev5TQWJA6YAYPhUE97ppPLKB3Igs/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACb9Pz9EPzQBlv3bwJKAPf/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADy95n9o/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAa8lX8MvVkCQ7yDQIN+4ABtfp4DfvnC/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACU8t747PMICNDz9AAcAFEB6/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADl+en+if33BEL4oP7T+24EYvyfEmHpKfRrB/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACe/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADU+Pn/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAD49sL9HP5EA3j5NP7F+wYA1vl4ENnoJfbRCvES3v1ZCuDZrQWP/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADd+TsJu/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAAy8DgAn/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACY+noFNvzsBDP+mQLp+sP9LvxsFjflI/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACX9cL9evw0BET1Sv5G/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADW+ZIG2v2PAxj8nQHx+yb8xvq/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAAA79hL9qPxvAyX5wQA8+F7+pvfXDIPlkPOpB2EUVP8RBmvW7gF3+9oFfxEa9br1K/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAABU+/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAADg+74DUvxrBPL+NgSM+hX/ Truncated\"\r\n                        },\r\n                        {\r\n                            \"template\": \"AAAAgAAAAACW+10JkwElBy79hwNj/ Truncated\"\r\n                        }\r\n                    ]\r\n                }\r\n            ]\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>This example shows how to add a Face Credential on a User.</p>\n<p>You can add the user's faces if the device supports face authentication.</p>\n<ul>\n<li>When registering a face, maintain a distance of 40cm to 80cm between the device and the face.</li>\n<li>Be careful not to change the facial expression. (smiling face, drawn face, wink, etc.)</li>\n<li>If you do not follow the instructions on the screen, the face registration may take longer or may fail.</li>\n<li>Be careful not to cover the eyes or eyebrows.</li>\n<li>Do not wear hats, masks, sunglasses or eyeglasses.</li>\n<li>Be careful not to display two faces on the screen. Register one person at a time.</li>\n<li>It is recommended for a user wearing glasses to register both faces with and without glasses.</li>\n</ul>\n<p>Parameters on this example:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>faces</td>\n<td>Array</td>\n<td>Y</td>\n<td>Main container of the credential</td>\n</tr>\n<tr>\n<td>:raw_image</td>\n<td>Raw</td>\n<td>Y</td>\n<td>Raw image of the face scan</td>\n</tr>\n<tr>\n<td>:templates</td>\n<td>Array</td>\n<td>Y</td>\n<td>Container of the face templates</td>\n</tr>\n<tr>\n<td>::template</td>\n<td>Raw</td>\n<td>Y</td>\n<td>Face template of the User</td>\n</tr>\n</tbody>\n</table>\n</div><p>To get data for parameter raw_image and template, use GET /api/devices/:device_id/credentials/face</p>\n<p>Use POST /api/v2/devices/search to list all device which can support the selected credentials. See API documentation for details on the usage of the API.</p>\n<p>When updating a User, it is required to put the credential data as acquired from GET /api/users/:id<br />This is done so the data won't be lost after update.</p>\n<p>To delete a Face, skip the parameters on using this API.</p>\n<p>You can use raw_image value as value on photo parameter of a User.</p>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"1a42fe51-be34-42a9-915a-bcf4ba458d6d","type":"any","value":"102","key":"id"}]}},"response":[],"_postman_id":"5ba63fa5-129e-4dfa-91d8-849c8dce601a"},{"name":"05f User Credential: Visual Face","event":[{"listen":"prerequest","script":{"id":"593621bc-1f86-4e6d-8f5c-5bda84dba87b","exec":[""],"type":"text/javascript"}}],"id":"fda32f14-cdc4-44f4-b7c7-87f7ec647336","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"credentials\": {\r\n            \"visualFaces\": [\r\n                {\r\n                    \"template_ex_normalized_image\": \"/9j/4AAQSkZJRgABAQEASABIAAD/ Truncated\",\r\n                    \"templates\": [\r\n                        {\r\n                            \"credential_bin_type\": \"5\",\r\n                            \"template_ex\": \"AAABAAEAKgHyAaUA1wBj8vP2XEpVQSt0dQAAhQApwwBkcAAAOQAAAIR9eH6CiHmDeIJ+hHp/fX54eoOMdol5f4d9fYGHfoSAfHiAenuJgYZ8g3yAfXmBg36CgoGGhn6Ce3eDeXp3eIWGbnqGfJF4hIl4cX54gX+Ceod8cIJ9g32CgH+AhoeBgH12go57h4F4iXh6g31+gX+BdnyKhYKCfXqLeX2AgomMfYR/foKDgXt7hHp/fXh6g315dnp/f4N8f3h9g3Z+c3J7hH9/gYaFfoGKd3yHeXl/d3+AeXd+fYR8fn2Dd4OGfoF8hIGCgn+DfH+HhXp/e4V9fHiAhXeBgX94f3F6hIeBent8fYCAg4J1hnl+c4F6doZ9g32JhnuDg3l4fXyEg3uEfYmEh3yCf4Z2gH2BgoZ/g3p2hXuIhIOCfYKBfXd8hIeDdYSFfHSDg3R+d4eBeY98gXp1dH59fHyBhXl4hG+Aen2De4OCgIGKhXmFgnuHfH98hIl6fIZ0gIB2homJgHuFf4OKhYZ8hHqFgoB9jYeGgX57iYGCfIV6f4aBfnqAhoV9e4KBgYmDgH55g4Z8hoCDhIR8gIOHfniChIB5hXl/gIV4f4l+g3V5hn5/f45/fHmAgIB5gIR8fYiGeoKBdXZ+eIB+gneDenl+fIGBgIeEf4CCjIJ3eYKCiX13gHh9eIeChX6FdYGFfYSFhn6EhYCGf4h5e4OLfYl9gIN3fYR8\"\r\n                        },\r\n                        {\r\n                            \"credential_bin_type\": \"9\",\r\n                            \"template_ex\": \"AAABAAEAVgHZAa8A4wAAAAAAWFVLREUAAAAAdVANMQFkcAAAOQAAAIWEdn+Din+Ed4GCg3eAhHl4gX6OdI56foZ7e3yGe4d7d4OIfnaFgYJ/goB7eniCgXx8gYSEhHqBfXp/eoJ2f4GFcYCAfYV7gYZ3d3l4hHqEfI94cYCDg3+Bf397iYyAgHx7gIp4hol2gnx7hYGAe4KGf4J+gYR+fneJd319gouMf4CAgoWKe3p/hH1/g3pygH57eYGCfop/eoCAi3l6c3d7hIaAiICCfnyIc3qCdXx9en2AeH6DgXp9e4CDe4yGfIKEfoKGgXiCgYOEhnl4foCDf3uFg3qBgIF2g3J8foSBeXh7gYOCgYB6iIR9enx7dYR/fX6AgoCCgXh8fXyAeXuAfYmGiXd9f4p2gXqBgoh7hXl8hXuCgoGCgYZ+e3p/hYSBgomLgnOBf3uCe4WEhIx6fnt4eYZ8gnt7hnp7gHqFfoF/fYCAhIKCgnaDenyJf3t+goh4hYV2goN7g4eNfYOBd4KLgoSBh3qAhn5/joGDgYF6gH6HfYlzhop9hH6AeYGAgH9/gIt/iYJ+god9jYOCgoR/g4WCg3WCg4B4hXl8fYR5iYGAg353g3R6fYd7d3WHgX1xf3t4gYWIeYKEe3h8eoOBf3WGdYCChIR7foiDgX56hYh+eX6AiXuBfXiAdomAeoB+doSCf4aFgXmDgX2AfYp9fH2KfIR6foJwfIOB\"\r\n                        }\r\n                    ]\r\n                },\r\n                {\r\n                    \"template_ex_normalized_image\": \"/9j/4AAQSkZJRgABAQEASABIAAD/ Truncated\",\r\n                    \"templates\": [\r\n                        {\r\n                            \"template_ex\": \"AAABAAEAgwFoAbgA6gBl8vryXUdWNip7hwAAnKA+uQBkcAAAOQAAAIZ7eX5/iX2CeH59iXuAgH1vfoWNdop8gIqAfoCIe4iAdYGFenmHgId7fH5+fHN/g3+GgICCgHmCe3mEc3tze4uGdH+IgYt5hIR4dYN4gn+AeoV8b4B8g3qAh4GFiId/f391gYp3foJ2iHp6gXuAg3uBgH+Jg4F8fneHgICEg4aMfH9/fISEgH17iHh4fnp1hIF/fXyBeYaAfn96hXZ8e3R+gX98hYOAf32GeX+Ie3x9d314fHyBgIR6fYKDeIWHf4KDiICFhnuAeoB7gXeEe4B8fnl/h3d5hIJ6fXR5f4aFfXyBe4B+hIRziYN6eYR7eH9/gYCEgHuCgHp4fYOHgoN/eomGh3Z7e4Vzf3qAjYt+gH16gX2Dgn6DfIOAfnZ6hYuAfISKgXiFgHV9d4uBf4iFgHZ5d3x9gXx5gn55hHSCfn6AfYSBhIKIhnSFhYGMen58gYd7gIN2fnl5h4SLgnmHfX2HgYV7gH2Fe4F7h4GBfn98iH+DfYl5gIJ9g319gIV/g4J8gYV/fHt5hIN9i4KEg35+h4eJg4B8fHp7gXl+hYJzf4V6gntxhn9+eoR/fHuDfHx7gIJ4f4SBfH9+doB9d4F/fXaFdHl9eoOEfoWEf3uEhoV0doCCjHt0hXl+coOAg4ODdYSGgIOHh3yBioCEeYx7eXyMf4l/hYF1foWD\",\r\n                            \"credential_bin_type\": \"5\"\r\n                        }\r\n                    ]\r\n                }\r\n            ]\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>Visual Face is a credential that captures the user's face with a visual camera. It is different from face information captured with an infrared camera and is only available on devices that support Visual Face.</p>\n<p>There are two ways to input a Visual Face: by scanning through a enrollment device, or by uploading an image.</p>\n<p>Up to 2 visual faces can be added.<br />Use <code>GET /api/devices/:device_id/credentials/face</code> to scan Visual Face using an enrollment device.</p>\n<p>You can enroll a visual face using FaceStation F2.<br />Use <code>POST /api/v2/devices/search</code> to list compatible devices.</p>\n<p>To upload image as a Visual Face: image file size is up to 10MB and supported file formats are JPG, JPEG and PNG.<br />Use <code>PUT /api/users/check/upload_picture</code> to check whether the image is suitable for use or not.<br />BODY example on using Upload Picture:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n\"User\": {\n \"credentials\": {\n  \"visualFaces\": [{\n   \"template_ex_picture\": \"/9j/4AAQSkZJRgABAQAAAQABAAD/ Truncated\"\n  }]\n }}\n}\n\n</code></pre>\n<p>Parameters on this example:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>visualFaces</td>\n<td>Array</td>\n<td>Y</td>\n<td>Main container of Visual Face credential</td>\n</tr>\n<tr>\n<td>:template_ex_normalized_image</td>\n<td>Base64</td>\n<td>Y</td>\n<td>Cropped image ready for visual face extraction.</td>\n</tr>\n<tr>\n<td>:templates</td>\n<td>Array</td>\n<td>Y</td>\n<td>Container of the templates</td>\n</tr>\n<tr>\n<td>::credential_bin_type</td>\n<td>Number</td>\n<td>Y</td>\n<td>UNKNOWN = -1  <br />FACE_TEMPLATE = 0  <br />FACE_TEMPLATE_IMAGE = 1  <br />FACE_RAW_IMAGE = 2  <br />FACE_TEMPLATE_EX_VER2 = 5 (For FaceStation F2)  <br />FACE_TEMPLATE_EX_VER_3 = 9 (For BioStation 3 and W3)  <br />FACE_TEMPLATE_EX_NORMALIZED = 7  <br />FACE_TEMPLATE_EX_PICTURE = 8</td>\n</tr>\n<tr>\n<td>::template_ex</td>\n<td>Raw</td>\n<td>Y</td>\n<td>Visual Face template data which includes FaceStation F2 and the new BioStation 3.</td>\n</tr>\n<tr>\n<td>:template_ex_picture</td>\n<td>Base64</td>\n<td>Y</td>\n<td>Parameter for Upload Picture raw data</td>\n</tr>\n</tbody>\n</table>\n</div>","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"type":"any","value":"102","key":"id"}]}},"response":[],"_postman_id":"fda32f14-cdc4-44f4-b7c7-87f7ec647336"},{"name":"05g User Credential: Fingerprint","event":[{"listen":"prerequest","script":{"id":"ba16e12e-8b2b-4fa3-9cb6-3fcfa95a2d26","exec":[""],"type":"text/javascript"}}],"id":"d70a5ceb-b06c-4f7a-84f0-e90dfcf3e019","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"PUT","header":[],"body":{"mode":"raw","raw":"{\r\n    \"User\": {\r\n        \"fingerprint_templates\": [\r\n            {\r\n                \"finger_mask\": \"false\",\r\n                \"template0\": \"RSoQFLAAVUYMBEBvBBlEsWSLFITAEIUGBgEYBA/G0W0IAwcgdgEbh2ANixfIMGUKEshwF4QOCbBzhjXEsaCFJITQAYohRSBViCSGoUsRLAcQooYoh6GlCDpIgZ2GKMkARgkyCXCehDhJgEIDG0sxYJsOy0BziBaMcGmPG4ywUaAVTdBokwxOEXgHEE6AeIIVT0FoERfPYBsxGg9gK9EK0QB4jRxSYRqFEhNAbxkXk1AUChiTUHSHL8zwl4EmDiE3CCHPADWKK5DAOo8nUZAqDS5SIUKXK9JhOZj////g/////////eAB///////d4AEi/////N3gASM////M3eABIzT/+7zd4BIzRE+7u83gEjNET7u7zeASNERFu7vN4BI0REW6u8zgIzRERaqqvOAjRERFqqq84TREREWqqrziNFVUT6mqvOJFVVVfqqq9BFVVVU/5qrqHd2ZU//+qqZiIdkT///qqqZh1T///+6qqqYX/////u6uqj///\",\r\n                \"template1\": \"RSgQFK8AVUYRBDBvhxqEgBGFHsSRZwsIhRF1BQtGIRuEFsZxawgJRwB5AR4H4GULGYgQF4UUyYB0hyqEsAOJJsTRWIgrRkBKjyKG4QoLMsbwooQvB3GkBi9I0EYHOUnBnQMJSgF4ghXK8HWKHYwQZ5EIzQAfhRPN4XsEHA4BbBYXzhB5hRzO8WaYB89AdoQeT0AdsQgQAHiJDlFQdoIiSvFfHCLMcE4iNszwmAIszkE2hihO8DQJIM9QKkMxEJA3CC4RwCeOIlKBHAMxEsBFIv///d3////////M3eD/////+8zd4BL///+7zN3gEj//+rvM3eASM/+qu8zd4BIzT6q7vM3gEjRFqqq7zeASNESqqrvN4CNERaqqq7zhI0RFqqqrvOE0REWqqqq84jRFVaqqqrwDRFVVqqmavQRVVVWqqqq9JVVVVvq7qqmHdmZv/6qqqZiHZm//+qqqmZhV////u6qqmFT///+7uqqoT/8=\"\r\n            },\r\n            {\r\n                \"finger_mask\": \"true\",\r\n                \"isNew\": true,\r\n                \"template0\": \"RDMQFLMAVUYqCxCIFCyhiDMthws5MBAMIzEcBRE5ngYwQIwND02jBWUP6AV2I18FcTfjBFE5ZQpeROADPVWCmzxhCfw+ZERIOXK1JzVzsykxdLUjIngqgih+rhAlfyaNPoAZGiGFqwwqhpuMTFbqj0NZXBxfXNeCUV1Ri2BkVgJvaVwGUWtGilZsTopmbtQDSm9GCkNyKpNbdlGIa3hahUh6NgxBfB6eRH6zFHSC2RBSgzYPZYvXDVONHEVNjbKlV45N4WKO25hVlJWkYpT0lWyV6Q////7gASL/////3eABIj////zd4AEjM///vN3gASMz//+83e4BIzRPq7zN4BEjRESrvM3gEjNERLu7zOASM0REu7vM4BM0RESru7zQE0RERKu7vNAjREREqqq7wDRVVET6qqqnZlVURPqqmZh2ZVVF+qqZmYdmVVb/qrvLmHZVV//6vMuodlX////MzLl0X////8zMy+FP////vMzL4P//\",\r\n                \"template1\": \"RDQQFLMAVUYkEBKGDzKihS4yj4o2NAmKHzYeBgw/nwQrR4wOYRToBXIoXQZtPOEFTEFpiVxJ4YMJVKMEOVyCmD9gXBs4Zwn4OWpEUjVqOEI3bTkjM3e7JT93JZM0e66hHX0vhi5+pJskg64SQIOyHCCEKI0niZkQR1zqklxf3AJNY1KLW2lYg2tuXAZLcUoJUnJPimNz1wJ7c98PRnRECld7UIlofFuFYX3UBWR9VgdEfzYOcYXdD02HOw5iitcIR4spimOLYghNkbsLT5FED2eS5Alfkt2T///+4BH//////97gESL/////3uASIz///8ze4BIjNP/7zN7gEiM0/7u83uASM0RFu7zd4BIzRES7vM3hEjNERLu7zQEjNEREu7vN4SM0RES7u83hI0RERLu7vOE0RERFqqq84kVVREWqqqqWZlVERfqqmph2ZVRF//mruodmVF///7y6h2ZU////vLuYZU/////MvLo0T////8y8z////w==\"\r\n            }\r\n        ]\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://127.0.0.1/api/users/:id","description":"<p>This example shows how to update fingerprint data on a User.</p>\n<p>The BODY parameters as follows:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>fingerprint_templates</td>\n<td></td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td>:finger_mask</td>\n<td>Boolean</td>\n<td>N</td>\n<td>Set to True to mark the fingerprint as a duress fingerprint. When threatened by someone to open the door, the user can authenticate using this fingerprint to send an alarm signal to BioStar 2.</td>\n</tr>\n<tr>\n<td>:template0</td>\n<td>Raw</td>\n<td>Y</td>\n<td>First scan template of the fingerprint</td>\n</tr>\n<tr>\n<td>:template1</td>\n<td>Raw</td>\n<td>Y</td>\n<td>Second scan template of the fingerprint</td>\n</tr>\n<tr>\n<td>:isNew</td>\n<td>Boolean</td>\n<td>N</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div><p>Use POST /api/devices/:dev_id/scan_fingerprint to enroll fingerprint<br />Use POST /api/server_matching/identify_finger to check whether the fingerprint already recorded or not.</p>\n<ul>\n<li>Raw data for template0 and template1 available after enrolling a fingerprint.</li>\n<li>Fingerprint(s) used for regular access should not be registered as duress fingerprint.</li>\n<li>If the fingerprint authentication rate is low, delete the existing fingerprint information and add a new fingerprint.</li>\n<li>Use an adequate security level. If 1:1 Security Level is too high, the fingerprint authentication rate may be too low or the false rejection rate (FRR) may be too high.</li>\n<li>For best fingerprint scanning quality, make sure to cover the entire surface of the fingerprint sensor with the finger.</li>\n</ul>\n","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}},"urlObject":{"path":["api","users",":id"],"host":["https://127.0.0.1"],"query":[],"variable":[{"id":"83d38d24-4605-40bb-996b-707c5d69b6b2","type":"any","value":"14","key":"id"}]}},"response":[],"_postman_id":"d70a5ceb-b06c-4f7a-84f0-e90dfcf3e019"}],"id":"fd9892be-ed49-411b-906c-19c3e2b86b5b","_postman_id":"fd9892be-ed49-411b-906c-19c3e2b86b5b","description":"","auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]},"isInherited":true,"source":{"_postman_id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","id":"7dba1759-9dd3-4185-8d65-8e3c91373f22","name":"BioStar 2 API","type":"collection"}}}],"auth":{"type":"apikey","apikey":{"basicConfig":[{"key":"key","value":"bs-session-id"},{"key":"value","value":"---"}]}},"event":[{"listen":"prerequest","script":{"id":"ec32ca71-0354-4707-9717-7074b758a443","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"3981cf40-98e3-4ef1-b03e-454701cccc67","type":"text/javascript","exec":[""]}}],"variable":[{"id":"94149986-9020-4a45-85e1-d58398c9cc28","key":"baseUrl","value":"https://127.0.0.1"},{"id":"c8f420c7-473e-4a64-8774-a30e9106a35d","key":"bsid","value":"---"},{"id":"6490786d-a0d4-4709-a3d7-990fc256f018","key":"nuid","value":""},{"id":"66dc1f67-4c28-4b70-a81e-83d9121e6ce6","key":"nLoop","value":""},{"id":"c848f9f3-56c9-498b-a522-5a48cef8d7bc","key":"doorID","value":""},{"id":"59c80b54-2f53-4c5d-a281-3144dee81519","key":"w_dev_id","value":""},{"id":"78031880-3d3f-4145-81e4-8f50c5686807","key":"w_dev_dtid","value":""},{"id":"40459554-e4d2-443e-a054-57ba2477483c","key":"w_dev_ip","value":""},{"id":"bcbf987e-e31b-4f3d-82c1-7d065acdc203","key":"w_dev_connmode","value":""},{"id":"3cc5d8c1-011b-4aae-8054-ce51b76ed8c0","key":"iterIDVal","value":"101"},{"id":"fd9e0506-05d0-4c2b-88ec-1920975298cb","key":"iterIDVal1","value":"102"},{"id":"68a9d935-7059-478b-91b0-166ebf684997","key":"lPassword","value":"your-password"},{"id":"db6b084a-44a4-4882-9b3b-adb7dfec1778","key":"nuid1","value":""}]}