API Reference
Complete REST API documentation for programmatic access to Taliswitch.
Authentication
All API requests require authentication using OAuth 2.0 Bearer tokens.
Description: Obtain an access token for API authentication.
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
ClientId |
string | REQUIRED | Your API client ID (provided by Taliswitch) |
ClientSecret |
string | REQUIRED | Your API client secret (keep confidential!) |
curl -X POST https://app.dexzyle.com/api/Authorization \
-H "Content-Type: application/json" \
-d '{
"ClientId": "your-client-id",
"ClientSecret": "your-client-secret"
}'
Response
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"token_type": "Bearer",
"expires_in": 3600
}
Token Usage: Include the access token in the Authorization header of all subsequent requests:
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Residents
Retrieve resident information and demographics.
Description: Get a list of residents with optional filtering.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
residentId |
integer | Optional | Filter by specific resident ID |
facilityId |
integer | Optional | Filter by facility |
status |
string | Optional | Filter by status (Active, Discharged, etc.) |
room |
string | Optional | Filter by room number |
fName |
string | Optional | Filter by first name |
lName |
string | Optional | Filter by last name |
lastUpdatedOn |
datetime | Optional | Filter by last update date (ISO 8601 format) |
page |
integer | Optional | Page number (default: 1) |
pageSize |
integer | Optional | Results per page (default: 200, max: 500) |
curl -X GET "https://app.dexzyle.com/api/Resident?facilityId=123&status=Active&page=1&pageSize=50" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
Response
{
"data": [
{
"residentId": 12345,
"firstName": "Mary",
"lastName": "Johnson",
"dateOfBirth": "1945-03-15",
"admissionDate": "2024-01-10",
"status": "Active",
"room": "202-A",
"facilityId": 123,
"facilityName": "Sunrise Senior Living",
"lastUpdatedOn": "2025-11-27T10:30:00Z"
}
],
"totalCount": 145,
"page": 1,
"pageSize": 50
}
Description: Get detailed information about a specific resident.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
id |
integer | REQUIRED | Resident ID |
const response = await fetch('https://app.dexzyle.com/api/Resident/12345', {
headers: {
'Authorization': `Bearer ${accessToken}`
}
});
const resident = await response.json();
console.log(resident);
Census
Access census and occupancy information.
Description: Get census information across facilities.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
residentId |
integer | Optional | Filter by resident ID |
lastUpdatedOn |
datetime | Optional | Filter by last update |
page |
integer | Optional | Page number (default: 1) |
pageSize |
integer | Optional | Results per page (default: 200) |
Description: Get census information for a specific resident.
Facilities
Description: Get list of facilities in your organization.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
facilityId |
integer | Optional | Filter by facility ID |
facilityName |
string | Optional | Filter by name |
page |
integer | Optional | Page number (default: 1) |
pageSize |
integer | Optional | Results per page (default: 200) |
lastUpdatedOn |
datetime | Optional | Filter by last update |
import requests
# Get access token
auth_response = requests.post(
'https://app.dexzyle.com/api/Authorization',
json={
'ClientId': 'your-client-id',
'ClientSecret': 'your-client-secret'
}
)
token = auth_response.json()['access_token']
# Get facilities
facilities_response = requests.get(
'https://app.dexzyle.com/api/Facility',
headers={'Authorization': f'Bearer {token}'}
)
facilities = facilities_response.json()
for facility in facilities['data']:
print(f"{facility['facilityName']} (ID: {facility['facilityId']})")
Resident Contacts
Description: Get list of resident contacts (family, POA, etc.).
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
residentId |
integer | Optional | Filter by resident ID |
contactType |
string | Optional | Filter by type (Family, POA, Emergency, etc.) |
name |
string | Optional | Filter by contact name |
page, pageSize, lastUpdatedOn |
various | Optional | Standard pagination parameters |
Rooms
Description: Get list of rooms and occupancy status.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
facilityId |
integer | Optional | Filter by facility |
page, pageSize, lastUpdatedOn |
various | Optional | Standard pagination |
Users
Description: Get list of users in your organization.
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
userId |
integer | Optional | Filter by user ID |
name |
string | Optional | Filter by name |
title |
string | Optional | Filter by job title |
role |
string | Optional | Filter by role |
page, pageSize, lastUpdatedOn |
various | Optional | Standard pagination |
Description: Get detailed information about a specific user.
Rate Limits
API rate limits to ensure fair usage:
- Standard Tier: 1,000 requests per hour
- Enterprise Tier: 10,000 requests per hour
- Burst Limit: 100 requests per minute
Rate limit headers included in every response:
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 987
X-RateLimit-Reset: 1732723200
Error Handling
Standard HTTP status codes:
- 200 OK: Request successful
- 400 Bad Request: Invalid parameters
- 401 Unauthorized: Missing or invalid access token
- 403 Forbidden: Insufficient permissions
- 404 Not Found: Resource doesn't exist
- 429 Too Many Requests: Rate limit exceeded
- 500 Internal Server Error: Server error
{
"error": "unauthorized",
"error_description": "Invalid or expired access token",
"timestamp": "2025-11-27T14:30:00Z"
}
API Support
Need help with the API?
- Email: api@dexzyle.com
- API Status: status.dexzyle.com
- Request Credentials: Contact your account manager