{ "info": { "_postman_id": "df4b9e19-c32c-4ff3-8406-afccfc99f055", "name": "ThingsBoard Admin admin-controller o-auth-2-controller API", "description": "ThingsBoard Admin API \u2014 subset of the ThingsBoard REST API (open-source IoT platform). Covers: Admin, Audit Log, Event, Usage Info, Queue, Queue Stats, Mail Config Template, Qr Code Settings, Job.\n\nContact Support:\n Name: ThingsBoard team\n Email: info@thingsboard.io", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "lastUpdatedBy": "35240", "uid": "35240-df4b9e19-c32c-4ff3-8406-afccfc99f055" }, "item": [ { "name": "api", "item": [ { "name": "oauth2", "item": [ { "name": "client", "item": [ { "name": "{id}", "item": [ { "name": "Get OAuth2 Client by Id (getOAuth2ClientById)", "id": "1176632a-aa94-4928-b3de-f470b32b4153", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/oauth2/client/:id", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "client", ":id" ], "variable": [ { "id": "c741e020-7d58-4110-97fa-bb1302c8d29a", "key": "id", "value": "", "description": "(Required) " } ] }, "description": "\n\nAvailable for users with 'SYS_ADMIN' or 'TENANT_ADMIN' authority." }, "response": [ { "id": "143530ef-7520-452a-a113-f3e498fd8adb", "name": "OK", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/oauth2/client/:id", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "client", ":id" ], "variable": [ { "key": "id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"accessTokenUri\": \"\",\n \"additionalInfo\": {\n \"description\": \"A value representing the any type (object or primitive)\",\n \"examples\": [\n {}\n ]\n },\n \"authorizationUri\": \"\",\n \"clientAuthenticationMethod\": \"\",\n \"clientId\": \"\",\n \"clientSecret\": \"\",\n \"loginButtonLabel\": \"\",\n \"mapperConfig\": {\n \"type\": \"GITHUB\",\n \"allowUserCreation\": \"\",\n \"activateUser\": \"\",\n \"basic\": {\n \"tenantNameStrategy\": \"DOMAIN\",\n \"emailAttributeKey\": \"\",\n \"firstNameAttributeKey\": \"\",\n \"lastNameAttributeKey\": \"\",\n \"tenantNamePattern\": \"\",\n \"customerNamePattern\": \"\",\n \"defaultDashboardName\": \"\",\n \"alwaysFullScreen\": \"\"\n },\n \"custom\": {\n \"url\": \"\",\n \"username\": \"\",\n \"password\": \"\",\n \"sendToken\": \"\"\n }\n },\n \"scope\": [\n \"\"\n ],\n \"title\": \"\",\n \"userNameAttributeName\": \"\",\n \"id\": {\n \"entityType\": \"API_USAGE_STATE\",\n \"id\": \"\"\n },\n \"createdTime\": \"\",\n \"tenantId\": {\n \"entityType\": \"TENANT\",\n \"id\": \"\"\n },\n \"userInfoUri\": \"\",\n \"jwkSetUri\": \"\",\n \"loginButtonIcon\": \"\",\n \"platforms\": [\n \"IOS\",\n \"ANDROID\"\n ],\n \"name\": \"\"\n}", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-143530ef-7520-452a-a113-f3e498fd8adb" } ], "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-1176632a-aa94-4928-b3de-f470b32b4153" }, { "name": "Delete Oauth2 Client (deleteOauth2Client)", "id": "d03f8d1d-5c41-4567-80fb-67c1bf69f8c2", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "DELETE", "header": [], "url": { "raw": "{{baseUrl}}/api/oauth2/client/:id", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "client", ":id" ], "variable": [ { "id": "1baf4eee-e1e3-417b-9629-532e37637910", "key": "id", "value": "", "description": "(Required) " } ] }, "description": "Deletes the oauth2 client. Referencing non-existing oauth2 client Id will cause an error.\n\nAvailable for users with 'SYS_ADMIN' or 'TENANT_ADMIN' authority." }, "response": [ { "id": "2273d869-dda0-4ef5-a3ee-3cf97c5d0ca7", "name": "OK", "originalRequest": { "method": "DELETE", "header": [], "url": { "raw": "{{baseUrl}}/api/oauth2/client/:id", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "client", ":id" ], "variable": [ { "key": "id" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "text", "header": [], "cookie": [], "responseTime": null, "body": null, "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-2273d869-dda0-4ef5-a3ee-3cf97c5d0ca7" } ], "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-d03f8d1d-5c41-4567-80fb-67c1bf69f8c2" } ], "id": "4fcb3be8-bd89-46df-9b08-e4c39f76ec73", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-4fcb3be8-bd89-46df-9b08-e4c39f76ec73" }, { "name": "infos", "item": [ { "name": "Get OAuth2 Client Infos by Ids (findTenantOAuth2ClientInfosByIds)", "id": "956b3e4c-9eb8-4453-a2dd-38d3b81c83f5", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/oauth2/client/infos?pageSize=&page=&textSearch=&sortProperty=&sortOrder=&clientIds=&clientIds=", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "client", "infos" ], "query": [ { "description": "(Required) Maximum amount of entities in a one page", "key": "pageSize", "value": "" }, { "description": "(Required) Sequence number of page starting from 0", "key": "page", "value": "" }, { "description": "Case-insensitive 'substring' filter based on client's title", "key": "textSearch", "value": "" }, { "description": "Property of entity to sort by", "key": "sortProperty", "value": "" }, { "description": "Sort order. ASC (ASCENDING) or DESC (DESCENDING)", "key": "sortOrder", "value": "" }, { "description": "(Required) A list of oauth2 ids, separated by comma ','", "key": "clientIds", "value": "" }, { "description": "(Required) A list of oauth2 ids, separated by comma ','", "key": "clientIds", "value": "" } ] }, "description": "Fetch OAuth2 Client info objects based on the provided ids. \n\nAvailable for users with 'SYS_ADMIN' or 'TENANT_ADMIN' authority." }, "response": [ { "id": "d391c4ab-6b05-40a0-8c87-874c36a405af", "name": "OK", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/oauth2/client/infos?pageSize=&page=&textSearch=&sortProperty=&sortOrder=&clientIds=", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "client", "infos" ], "query": [ { "description": "(Required) Maximum amount of entities in a one page", "key": "pageSize", "value": "" }, { "description": "(Required) Sequence number of page starting from 0", "key": "page", "value": "" }, { "description": "Case-insensitive 'substring' filter based on client's title", "key": "textSearch", "value": "" }, { "description": "Property of entity to sort by", "key": "sortProperty", "value": "" }, { "description": "Sort order. ASC (ASCENDING) or DESC (DESCENDING)", "key": "sortOrder", "value": "" }, { "description": "(Required) A list of oauth2 ids, separated by comma ','", "key": "clientIds", "value": "" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "[\n {\n \"id\": {\n \"entityType\": \"CUSTOMER\",\n \"id\": \"\"\n },\n \"createdTime\": \"\",\n \"title\": \"\",\n \"providerName\": \"\",\n \"platforms\": [\n \"IOS\",\n \"ANDROID\"\n ],\n \"name\": \"\"\n },\n {\n \"id\": {\n \"entityType\": \"NOTIFICATION_TEMPLATE\",\n \"id\": \"\"\n },\n \"createdTime\": \"\",\n \"title\": \"\",\n \"providerName\": \"\",\n \"platforms\": [\n \"ANDROID\",\n \"ANDROID\"\n ],\n \"name\": \"\"\n }\n]", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-d391c4ab-6b05-40a0-8c87-874c36a405af" } ], "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-956b3e4c-9eb8-4453-a2dd-38d3b81c83f5" } ], "id": "8644d3a0-245a-4e75-8417-7a563dea4216", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-8644d3a0-245a-4e75-8417-7a563dea4216" }, { "name": "Save OAuth2 Client (saveOAuth2Client)", "id": "b08a79c9-d293-4bfe-b464-8e6f71e861dc", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"accessTokenUri\": \"\",\n \"additionalInfo\": {\n \"description\": \"A value representing the any type (object or primitive)\",\n \"examples\": [\n {}\n ]\n },\n \"authorizationUri\": \"\",\n \"clientAuthenticationMethod\": \"\",\n \"clientId\": \"\",\n \"clientSecret\": \"\",\n \"loginButtonLabel\": \"\",\n \"mapperConfig\": {\n \"type\": \"GITHUB\",\n \"allowUserCreation\": \"\",\n \"activateUser\": \"\",\n \"basic\": {\n \"tenantNameStrategy\": \"DOMAIN\",\n \"emailAttributeKey\": \"\",\n \"firstNameAttributeKey\": \"\",\n \"lastNameAttributeKey\": \"\",\n \"tenantNamePattern\": \"\",\n \"customerNamePattern\": \"\",\n \"defaultDashboardName\": \"\",\n \"alwaysFullScreen\": \"\"\n },\n \"custom\": {\n \"url\": \"\",\n \"username\": \"\",\n \"password\": \"\",\n \"sendToken\": \"\"\n }\n },\n \"scope\": [\n \"\"\n ],\n \"title\": \"\",\n \"userNameAttributeName\": \"\",\n \"id\": {\n \"entityType\": \"API_USAGE_STATE\",\n \"id\": \"\"\n },\n \"createdTime\": \"\",\n \"tenantId\": {\n \"entityType\": \"TENANT\",\n \"id\": \"\"\n },\n \"userInfoUri\": \"\",\n \"jwkSetUri\": \"\",\n \"loginButtonIcon\": \"\",\n \"platforms\": [\n \"IOS\",\n \"ANDROID\"\n ],\n \"name\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/oauth2/client", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "client" ] }, "description": "\n\nAvailable for users with 'SYS_ADMIN' or 'TENANT_ADMIN' authority." }, "response": [ { "id": "2eba8767-d5bd-4732-a12a-bf049d1ef085", "name": "OK", "originalRequest": { "method": "POST", "header": [ { "key": "Content-Type", "value": "application/json" }, { "key": "Accept", "value": "application/json" } ], "body": { "mode": "raw", "raw": "{\n \"accessTokenUri\": \"\",\n \"additionalInfo\": {\n \"description\": \"A value representing the any type (object or primitive)\",\n \"examples\": [\n {}\n ]\n },\n \"authorizationUri\": \"\",\n \"clientAuthenticationMethod\": \"\",\n \"clientId\": \"\",\n \"clientSecret\": \"\",\n \"loginButtonLabel\": \"\",\n \"mapperConfig\": {\n \"type\": \"GITHUB\",\n \"allowUserCreation\": \"\",\n \"activateUser\": \"\",\n \"basic\": {\n \"tenantNameStrategy\": \"DOMAIN\",\n \"emailAttributeKey\": \"\",\n \"firstNameAttributeKey\": \"\",\n \"lastNameAttributeKey\": \"\",\n \"tenantNamePattern\": \"\",\n \"customerNamePattern\": \"\",\n \"defaultDashboardName\": \"\",\n \"alwaysFullScreen\": \"\"\n },\n \"custom\": {\n \"url\": \"\",\n \"username\": \"\",\n \"password\": \"\",\n \"sendToken\": \"\"\n }\n },\n \"scope\": [\n \"\"\n ],\n \"title\": \"\",\n \"userNameAttributeName\": \"\",\n \"id\": {\n \"entityType\": \"API_USAGE_STATE\",\n \"id\": \"\"\n },\n \"createdTime\": \"\",\n \"tenantId\": {\n \"entityType\": \"TENANT\",\n \"id\": \"\"\n },\n \"userInfoUri\": \"\",\n \"jwkSetUri\": \"\",\n \"loginButtonIcon\": \"\",\n \"platforms\": [\n \"IOS\",\n \"ANDROID\"\n ],\n \"name\": \"\"\n}", "options": { "raw": { "headerFamily": "json", "language": "json" } } }, "url": { "raw": "{{baseUrl}}/api/oauth2/client", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "client" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "{\n \"accessTokenUri\": \"\",\n \"additionalInfo\": {\n \"description\": \"A value representing the any type (object or primitive)\",\n \"examples\": [\n {}\n ]\n },\n \"authorizationUri\": \"\",\n \"clientAuthenticationMethod\": \"\",\n \"clientId\": \"\",\n \"clientSecret\": \"\",\n \"loginButtonLabel\": \"\",\n \"mapperConfig\": {\n \"type\": \"GITHUB\",\n \"allowUserCreation\": \"\",\n \"activateUser\": \"\",\n \"basic\": {\n \"tenantNameStrategy\": \"DOMAIN\",\n \"emailAttributeKey\": \"\",\n \"firstNameAttributeKey\": \"\",\n \"lastNameAttributeKey\": \"\",\n \"tenantNamePattern\": \"\",\n \"customerNamePattern\": \"\",\n \"defaultDashboardName\": \"\",\n \"alwaysFullScreen\": \"\"\n },\n \"custom\": {\n \"url\": \"\",\n \"username\": \"\",\n \"password\": \"\",\n \"sendToken\": \"\"\n }\n },\n \"scope\": [\n \"\"\n ],\n \"title\": \"\",\n \"userNameAttributeName\": \"\",\n \"id\": {\n \"entityType\": \"API_USAGE_STATE\",\n \"id\": \"\"\n },\n \"createdTime\": \"\",\n \"tenantId\": {\n \"entityType\": \"TENANT\",\n \"id\": \"\"\n },\n \"userInfoUri\": \"\",\n \"jwkSetUri\": \"\",\n \"loginButtonIcon\": \"\",\n \"platforms\": [\n \"IOS\",\n \"ANDROID\"\n ],\n \"name\": \"\"\n}", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-2eba8767-d5bd-4732-a12a-bf049d1ef085" } ], "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-b08a79c9-d293-4bfe-b464-8e6f71e861dc" } ], "id": "1a2e6e79-5b8a-4bb0-8733-594fc4959023", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-1a2e6e79-5b8a-4bb0-8733-594fc4959023" }, { "name": "loginProcessingUrl", "item": [ { "name": "Get OAuth2 Log in Processing URL (getLoginProcessingUrl)", "id": "5977a382-ad9d-4841-9654-a64773cb7567", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/oauth2/loginProcessingUrl", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "loginProcessingUrl" ] }, "description": "Returns the URL enclosed in double quotes. After successful authentication with OAuth2 provider, it makes a redirect to this path so that the platform can do further log in processing. This URL may be configured as 'security.oauth2.loginProcessingUrl' property in yml configuration file, or as 'SECURITY_OAUTH2_LOGIN_PROCESSING_URL' env variable. By default it is '/login/oauth2/code/'\n\nAvailable for users with 'SYS_ADMIN' or 'TENANT_ADMIN' authority." }, "response": [ { "id": "6f5d8639-c646-4995-8dd3-5acaa8be5901", "name": "OK", "originalRequest": { "method": "GET", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/oauth2/loginProcessingUrl", "host": [ "{{baseUrl}}" ], "path": [ "api", "oauth2", "loginProcessingUrl" ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-6f5d8639-c646-4995-8dd3-5acaa8be5901" } ], "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-5977a382-ad9d-4841-9654-a64773cb7567" } ], "id": "c7158788-d16d-4096-a9a6-d4e064340f0c", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-c7158788-d16d-4096-a9a6-d4e064340f0c" } ], "id": "45b6f93b-d226-4a4f-916e-019e5e1ddb2d", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-45b6f93b-d226-4a4f-916e-019e5e1ddb2d" }, { "name": "noauth", "item": [ { "name": "oauth2Clients", "item": [ { "name": "Get OAuth2 Clients (getOAuth2Clients)", "id": "48f77e83-bc62-4f90-aa73-8f14e899e261", "protocolProfileBehavior": { "disableBodyPruning": true }, "request": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/noauth/oauth2Clients?pkgName=&platform=ANDROID", "host": [ "{{baseUrl}}" ], "path": [ "api", "noauth", "oauth2Clients" ], "query": [ { "description": "Mobile application package name, to find OAuth2 clients where there is configured mobile application with such package name", "key": "pkgName", "value": "" }, { "description": "Platform type to search OAuth2 clients for which the usage with this platform type is allowed in the settings. If platform type is not one of allowable values - it will just be ignored", "key": "platform", "value": "ANDROID" } ] }, "description": "Get the list of OAuth2 clients to log in with, available for such domain scheme (HTTP or HTTPS) (if x-forwarded-proto request header is present - the scheme is known from it) and domain name and port (port may be known from x-forwarded-port header)" }, "response": [ { "id": "089fd2bc-c90b-40bb-87fe-c4ae5f894b51", "name": "OK", "originalRequest": { "method": "POST", "header": [ { "key": "Accept", "value": "application/json" } ], "url": { "raw": "{{baseUrl}}/api/noauth/oauth2Clients?pkgName=&platform=ANDROID", "host": [ "{{baseUrl}}" ], "path": [ "api", "noauth", "oauth2Clients" ], "query": [ { "description": "Mobile application package name, to find OAuth2 clients where there is configured mobile application with such package name", "key": "pkgName", "value": "" }, { "description": "Platform type to search OAuth2 clients for which the usage with this platform type is allowed in the settings. If platform type is not one of allowable values - it will just be ignored", "key": "platform", "value": "ANDROID" } ] } }, "status": "OK", "code": 200, "_postman_previewlanguage": "json", "header": [ { "key": "Content-Type", "value": "application/json" } ], "cookie": [], "responseTime": null, "body": "[\n {\n \"name\": \"\",\n \"icon\": \"\",\n \"url\": \"\"\n },\n {\n \"name\": \"\",\n \"icon\": \"\",\n \"url\": \"\"\n }\n]", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-089fd2bc-c90b-40bb-87fe-c4ae5f894b51" } ], "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-48f77e83-bc62-4f90-aa73-8f14e899e261" } ], "id": "964bb750-ef41-42c4-be58-d06da4434cc1", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-964bb750-ef41-42c4-be58-d06da4434cc1" } ], "id": "8b05a5e4-f6ce-444b-a508-3e4423f9ccdf", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-8b05a5e4-f6ce-444b-a508-3e4423f9ccdf" } ], "id": "291de482-455c-4ddc-8818-d371ea7dbb3f", "createdAt": "2026-07-28T03:12:59.000Z", "updatedAt": "2026-07-28T03:12:59.000Z", "uid": "35240-291de482-455c-4ddc-8818-d371ea7dbb3f" } ], "variable": [ { "key": "baseUrl", "value": "https://demo.thingsboard.io" } ] }