WellNuo/api/endpoints-list.json
Sergei ec63a2c1e2 Add admin panel, optimized API, OTP auth, migrations
Admin Panel (Next.js):
- Dashboard with stats
- Users list with relationships (watches/watched_by)
- User detail pages
- Deployments list and detail pages
- Devices, Orders, Subscriptions pages
- OTP-based admin authentication

Backend Optimizations:
- Fixed N+1 query problem in admin APIs
- Added pagination support
- Added .range() and count support to Supabase wrapper
- Optimized batch queries with lookup maps

Database:
- Added migrations for schema evolution
- New tables: push_tokens, notification_settings
- Updated access model

iOS Build Scripts:
- build-ios.sh, clear-apple-cache.sh
- EAS configuration updates

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-20 11:05:39 -08:00

884 lines
15 KiB
JSON

[
{
"id": 1,
"name": "credentials",
"function": "credentials",
"params": [
"user_name",
"ps",
"clientId",
"nonce"
]
},
{
"id": 2,
"name": "activity_detected",
"function": "activity_detected",
"params": [
"token",
"user_name",
"time"
]
},
{
"id": 3,
"name": "alarm_on_off",
"function": "activity_detected",
"params": [
"token",
"user_name",
"time"
]
},
{
"id": 4,
"name": "get_alarm_state",
"function": "activity_detected",
"params": [
"token",
"user_name",
"time"
]
},
{
"id": 5,
"name": "activities_report_details",
"function": "activities_report_details",
"params": [
"token",
"user_name",
"deployment_id",
"filter"
]
},
{
"id": 6,
"name": "beneficiaries_list",
"function": "beneficiaries_list",
"params": [
"token",
"user_name",
"first",
"last"
]
},
{
"id": 7,
"name": "beneficiary_edit_debug",
"function": "N/A",
"params": []
},
{
"id": 8,
"name": "beneficiary_form",
"function": "beneficiary_form",
"params": [
"token",
"user_name",
"new_user_name",
"editing_user_id",
"role_ids",
"email",
"first_name",
"last_name",
"address_street",
"address_city",
"address_zip",
"address_state",
"address_country",
"phone_number",
"picture"
]
},
{
"id": 9,
"name": "caretaker_edit",
"function": "N/A",
"params": []
},
{
"id": 10,
"name": "caretaker_form",
"function": "caretaker_form",
"params": [
"token",
"user_name",
"new_user_name",
"user_id",
"editing_user_id",
"key",
"role_ids",
"access_to",
"email",
"first_name",
"last_name",
"address_street",
"address_city",
"address_zip",
"address_state",
"address_country",
"phone_number",
"picture"
]
},
{
"id": 11,
"name": "caretakers_list",
"function": "caretakers_list",
"params": [
"token",
"user_name",
"first",
"last"
]
},
{
"id": 12,
"name": "dashboard_list",
"function": "dashboard_list",
"params": [
"user_name",
"token",
"user_id",
"date"
]
},
{
"id": 13,
"name": "dashboard_single",
"function": "dashboard_single",
"params": [
"user_name",
"token",
"date",
"deployment_id",
"nonce"
]
},
{
"id": 14,
"name": "deployment_delete",
"function": "deployment_delete",
"params": [
"user_name",
"token",
"editing_deployment_id",
"user_id",
"priviledges"
]
},
{
"id": 15,
"name": "deployment_edit",
"function": "N/A",
"params": []
},
{
"id": 16,
"name": "deployment_form",
"function": "deployment_form",
"params": [
"user_name",
"token",
"editing_deployment_id",
"beneficiary_id",
"caretaker_id",
"owner_id",
"installer_id",
"address_street",
"address_city",
"address_zip",
"address_state",
"address_country",
"persons",
"gender",
"race",
"born",
"pets",
"wifis",
"lat",
"lng",
"devices",
"time_zone_s"
]
},
{
"id": 17,
"name": "deployments_list",
"function": "deployments_list",
"params": [
"user_name",
"token",
"first",
"last"
]
},
{
"id": 18,
"name": "device_form",
"function": "device_form",
"params": [
"user_name",
"token",
"well_id",
"device_mac",
"description",
"location",
"close_to",
"radar_threshold",
"temperature_calib",
"humidity_calib",
"group"
]
},
{
"id": 19,
"name": "device_list",
"function": "device_list",
"params": [
"user_name",
"token",
"first",
"last"
]
},
{
"id": 20,
"name": "device_list_4_gui",
"function": "device_list_4_gui",
"params": [
"user_name",
"token",
"first",
"last"
]
},
{
"id": 21,
"name": "device_set_group",
"function": "device_set_group",
"params": [
"user_name",
"token",
"device_id",
"group_id"
]
},
{
"id": 22,
"name": "device_get_live",
"function": "device_get_live",
"params": [
"user_name",
"token",
"device_id",
"mac"
]
},
{
"id": 23,
"name": "device_reboot",
"function": "device_reboot",
"params": [
"user_name",
"token",
"device_id",
"mac"
]
},
{
"id": 24,
"name": "device_set_well_id",
"function": "device_set_well_id",
"params": [
"user_name",
"token",
"device_id",
"well_id",
"mac"
]
},
{
"id": 25,
"name": "device_set_network_id",
"function": "device_set_network_id",
"params": [
"user_name",
"token",
"device_id",
"well_id"
]
},
{
"id": 26,
"name": "device_list_by_deployment",
"function": "device_list_by_deployment",
"params": [
"user_name",
"token",
"deployment_id",
"first",
"last"
]
},
{
"id": 27,
"name": "devices_list",
"function": "N/A",
"params": []
},
{
"id": 28,
"name": "download",
"function": "N/A",
"params": []
},
{
"id": 29,
"name": "find_deployments",
"function": "find_deployments",
"params": [
"user_name",
"token",
"well_ids"
]
},
{
"id": 30,
"name": "get_beneficiary",
"function": "get_beneficiary",
"params": [
"user_name",
"token",
"user_id"
]
},
{
"id": 31,
"name": "get_caretaker",
"function": "get_beneficiary",
"params": [
"user_name",
"token",
"user_id"
]
},
{
"id": 32,
"name": "get_deployment",
"function": "get_deployment",
"params": [
"user_name",
"token",
"date",
"deployment_id"
]
},
{
"id": 33,
"name": "get_deployment_j",
"function": "get_deployment",
"params": [
"user_name",
"token",
"date",
"deployment_id"
]
},
{
"id": 34,
"name": "get_deployment_details",
"function": "request_devices",
"params": [
"user_name",
"token",
"group_id",
"deployment_id",
"location",
"fresh"
]
},
{
"id": 35,
"name": "get_device",
"function": "get_device",
"params": [
"user_name",
"token",
"device_id",
"mac"
]
},
{
"id": 36,
"name": "get_devices_locations",
"function": "get_devices_locations",
"params": [
"user_name",
"token",
"well_ids"
]
},
{
"id": 37,
"name": "get_floor_layout",
"function": "get_floor_layout",
"params": [
"user_name",
"token",
"date",
"deployment_id"
]
},
{
"id": 38,
"name": "get_full_location_map",
"function": "N/A",
"params": []
},
{
"id": 39,
"name": "get_image_file",
"function": "N/A",
"params": []
},
{
"id": 40,
"name": "get_photo",
"function": "N/A",
"params": []
},
{
"id": 41,
"name": "get_node_red_port",
"function": "get_node_red_port",
"params": [
"user_name",
"token"
]
},
{
"id": 42,
"name": "get_presence_data",
"function": "get_presence_data",
"params": [
"user_name",
"token",
"deployment_id",
"date",
"filter",
"data_type",
"to_date",
"device_id"
]
},
{
"id": 43,
"name": "get_raw_data",
"function": "get_raw_data",
"params": [
"user_name",
"token",
"sensor",
"MAC",
"from_time",
"to_time",
"part",
"tzone",
"last_name",
"address_street",
"address_city",
"address_zip",
"address_state",
"address_country",
"phone_number",
"picture"
]
},
{
"id": 44,
"name": "get_sensor_bucketed_data_by_room_sensor",
"function": "get_sensor_bucketed_data_by_room_sensor",
"params": [
"user_name",
"token",
"sensor",
"deployment_id",
"data_type",
"radar_part",
"date",
"bucket_size",
"location"
]
},
{
"id": 45,
"name": "get_sensor_data_by_deployment_id",
"function": "get_sensor_data_by_deployment_id",
"params": [
"user_name",
"token",
"sensor",
"deployment_id",
"data_type",
"radar_part",
"date"
]
},
{
"id": 46,
"name": "get_sensor_deltas",
"function": "get_time_deltas",
"params": [
"user_name",
"token",
"date",
"to_date",
"device_id",
"sensor",
"deployment_id"
]
},
{
"id": 47,
"name": "get_sensors_map",
"function": "N/A",
"params": []
},
{
"id": 48,
"name": "get_time_deltas",
"function": "get_time_deltas",
"params": [
"user_name",
"token",
"date",
"to_date",
"device_id",
"sensor",
"deployment_id"
]
},
{
"id": 49,
"name": "get_zgraph_data",
"function": "get_presence_data",
"params": [
"user_name",
"token",
"deployment_id",
"date",
"filter",
"data_type"
]
},
{
"id": 50,
"name": "messages_age",
"function": "messages_age",
"params": [
"clientId",
"user_name",
"token",
"nonce",
"macs"
]
},
{
"id": 51,
"name": "node-red_deployed",
"function": "store_flow",
"params": [
"token",
"user_name",
"time",
"flow"
]
},
{
"id": 52,
"name": "parse_address",
"function": "N/A",
"params": []
},
{
"id": 53,
"name": "join_address",
"function": "N/A",
"params": []
},
{
"id": 54,
"name": "new_user_form",
"function": "new_user_form",
"params": [
"firstName",
"lastName",
"email",
"password",
"devices",
"agreementDate",
"privacyPolicyVersion",
"phone"
]
},
{
"id": 55,
"name": "request_deployment_map_new",
"function": "request_deployment_map_new",
"params": [
"user_name",
"token",
"date",
"deployment_id",
"map_type"
]
},
{
"id": 56,
"name": "request_node_red",
"function": "request_node_red",
"params": [
"user_name",
"token"
]
},
{
"id": 57,
"name": "request_devices",
"function": "request_devices",
"params": [
"user_name",
"token",
"group_id",
"deployment_id",
"location",
"fresh"
]
},
{
"id": 58,
"name": "request_proximity",
"function": "request_proximity",
"params": [
"user_name",
"token",
"time",
"deployment_id"
]
},
{
"id": 59,
"name": "request_single_radar_slice",
"function": "request_single_radar_slice",
"params": [
"user_name",
"token",
"date",
"devices_list",
"deployment_id",
"sensor_index_list",
"ctrl_key_state",
"alt_key_state",
"radar_part",
"data_type",
"to_date"
]
},
{
"id": 60,
"name": "request_single_slice",
"function": "request_single_slice",
"params": [
"user_name",
"token",
"date",
"devices_list",
"deployment_id",
"sensor_list",
"ctrl_key_state",
"alt_key_state",
"radar_part",
"time",
"data_type",
"to_date",
"radar_part"
]
},
{
"id": 61,
"name": "send_walarm",
"function": "send_walarm",
"params": [
"token",
"user_name",
"deployment_id",
"location",
"method",
"conditionType",
"content"
]
},
{
"id": 62,
"name": "set_deployment",
"function": "set_deployment",
"params": [
"user_name",
"token",
"clientId",
"nonce",
"deployment",
"beneficiary_name",
"beneficiary_email",
"beneficiary_address",
"caretaker_username",
"caretaker_email",
"installer_id",
"address_city",
"address_zip",
"address_state",
"address_country",
"persons",
"gender",
"race",
"born",
"pets",
"wifis",
"lat",
"lng",
"time_zone_s"
]
},
{
"id": 63,
"name": "set_floor_layout",
"function": "set_floor_layout",
"params": [
"user_name",
"token",
"layout",
"deployment_id"
]
},
{
"id": 64,
"name": "store_alarms",
"function": "store_alarms",
"params": [
"token",
"user_name",
"deployment_id",
"deployment_alarms",
"device_id",
"device_alarms"
]
},
{
"id": 65,
"name": "store_flow",
"function": "store_flow",
"params": [
"token",
"user_name",
"time",
"flow"
]
},
{
"id": 66,
"name": "submit_beneficiary",
"function": "beneficiary_form",
"params": [
"user_name",
"token",
"email",
"editing_user_id",
"new_user_name",
"first_name",
"last_name",
"address_street",
"address_city",
"address_zip",
"address_state",
"address_country",
"user_id",
"role_ids",
"phone_number",
"picture",
"key"
]
},
{
"id": 67,
"name": "submit_caretaker",
"function": "caretaker_form",
"params": [
"user_id",
"user_name",
"key",
"token",
"new_user_name",
"role_ids",
"access_to",
"email",
"first_name",
"last_name",
"address_street",
"address_city",
"address_zip",
"address_state",
"address_country",
"phone_number",
"picture"
]
},
{
"id": 68,
"name": "submit_mobile_message",
"function": "caretaker_form",
"params": [
"user_id",
"user_name",
"key",
"token",
"new_user_name",
"role_ids",
"access_to",
"email",
"first_name",
"last_name",
"address_street",
"address_city",
"address_zip",
"address_state",
"address_country",
"phone_number",
"picture"
]
},
{
"id": 69,
"name": "telnyx_webhook",
"function": "N/A",
"params": []
},
{
"id": 70,
"name": "voice_ask",
"function": "voice_ask",
"params": [
"clientId",
"user_name",
"token",
"question",
"deployment_id"
]
},
{
"id": 71,
"name": "WellNuo Portal",
"function": "N/A",
"params": []
}
]