{"openapi":"3.1.0","info":{"title":"TDNS Service for ThinkOwl","description":"<CENTER><img src=\"/static/tdns.png\"></CENTER><BR>Tenant and Desk Navigation Service - list and search tenants and desks.","contact":{"url":"http://www.thinkowl.com/"},"license":{"name":"ThinkOwl Usage License","url":"http://www.thinkowl.com/"},"version":"v1"},"paths":{"/metrics":{"get":{"summary":"Combined Metrics","description":"Expose combined metrics from the local instrumentator and the external server.","operationId":"combined_metrics_metrics_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/tenants/":{"get":{"summary":"List Tenants","description":"List all tenants from the account service.","operationId":"list_tenants_v1_tenants__get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"items":{},"type":"array","title":"Response List Tenants V1 Tenants  Get"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedMessage"}}}}},"security":[{"HTTPBearer":[]}]}},"/v1/desks/":{"get":{"summary":"List Desks","description":"List desks for a given tenant.","operationId":"list_desks_v1_desks__get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tenant","in":"query","required":true,"schema":{"type":"string","description":"Tenant name","title":"Tenant"},"description":"Tenant name"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{},"title":"Response List Desks V1 Desks  Get"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedMessage"}}},"description":"Unauthorized"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tenants/find":{"get":{"summary":"Find Tenants","description":"Find tenants whose fields match the query string.","operationId":"find_tenants_v1_tenants_find_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","description":"Search string","title":"Query"},"description":"Search string"},{"name":"regex","in":"query","required":false,"schema":{"type":"boolean","description":"Treat query as a regex pattern","default":false,"title":"Regex"},"description":"Treat query as a regex pattern"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{},"title":"Response Find Tenants V1 Tenants Find Get"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedMessage"}}},"description":"Unauthorized"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/desks/find":{"get":{"summary":"Find Desks","description":"Find desks matching the query string, optionally filtered by tenant.","operationId":"find_desks_v1_desks_find_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"query","in":"query","required":true,"schema":{"type":"string","description":"Search string","title":"Query"},"description":"Search string"},{"name":"tenant","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Tenant name","title":"Tenant"},"description":"Tenant name"},{"name":"regex","in":"query","required":false,"schema":{"type":"boolean","description":"Treat query as a regex pattern","default":false,"title":"Regex"},"description":"Treat query as a regex pattern"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{},"title":"Response Find Desks V1 Desks Find Get"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedMessage"}}},"description":"Unauthorized"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tenants/byid":{"get":{"summary":"Get Tenant By Id","description":"Get tenant by ID.","operationId":"get_tenant_by_id_v1_tenants_byid_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"tenant_id","in":"query","required":true,"schema":{"type":"string","description":"Tenant ID","title":"Tenant Id"},"description":"Tenant ID"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Tenant By Id V1 Tenants Byid Get"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedMessage"}}},"description":"Unauthorized"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/desks/byid":{"get":{"summary":"Get Desk By Id","description":"Get desk by ID.","operationId":"get_desk_by_id_v1_desks_byid_get","security":[{"HTTPBearer":[]}],"parameters":[{"name":"desk_id","in":"query","required":true,"schema":{"type":"string","description":"Desk ID","title":"Desk Id"},"description":"Desk ID"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"title":"Response Get Desk By Id V1 Desks Byid Get"}}}},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnauthorizedMessage"}}},"description":"Unauthorized"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"UnauthorizedMessage":{"properties":{"detail":{"type":"string","title":"Detail","default":"Bearer token missing or unknown"}},"type":"object","title":"UnauthorizedMessage","description":"A message to be returned when the user is unauthorized."},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}},"securitySchemes":{"HTTPBearer":{"type":"http","scheme":"bearer"}}}}