Difference between revisions of "Sensaphone.net API/timerange"
(Created page with "=Sensaphone.net API= ==Specifications== The schedule resource has the following properties: {{TableStart|border_size=1 }}{{TableRowN| '''Parent Property'''|'''Property'''...") |
(→Sensaphone.net API: Update Session data type.) |
||
Line 43: | Line 43: | ||
}}{{TableRowN| '''Parent Property'''|'''Child Property''' |'''Type''' | '''Description''' | }}{{TableRowN| '''Parent Property'''|'''Child Property''' |'''Type''' | '''Description''' | ||
}}{{TableRowN| | acctid | Integer | Account ID | }}{{TableRowN| | acctid | Integer | Account ID | ||
− | }}{{TableRowN| | session | | + | }}{{TableRowN| | session | String | Session Token |
}}{{TableRowN| | request_type | String | "read" | }}{{TableRowN| | request_type | String | "read" | ||
}}{{TableRowN| | ''<parent object(s)>'' | Array of Objects | The parent(s) of the "timerange" resource, if any. See the [[Sensaphone.net_API#List|'''list''']]. | }}{{TableRowN| | ''<parent object(s)>'' | Array of Objects | The parent(s) of the "timerange" resource, if any. See the [[Sensaphone.net_API#List|'''list''']]. | ||
Line 131: | Line 131: | ||
}}{{TableRowN| '''Parent Property'''|'''Child Property''' |'''Type''' | '''Description''' | }}{{TableRowN| '''Parent Property'''|'''Child Property''' |'''Type''' | '''Description''' | ||
}}{{TableRowN| | acctid | Integer | Account ID | }}{{TableRowN| | acctid | Integer | Account ID | ||
− | }}{{TableRowN| | session | | + | }}{{TableRowN| | session | String | Session Token |
}}{{TableRowN| | request_type | String | "update" | }}{{TableRowN| | request_type | String | "update" | ||
}}{{TableRowN| | ''<parent object(s)>'' | Array of Objects | The parent(s) of the "timerange" resource, if any. See the [[Sensaphone.net_API#List|'''list''']]. | }}{{TableRowN| | ''<parent object(s)>'' | Array of Objects | The parent(s) of the "timerange" resource, if any. See the [[Sensaphone.net_API#List|'''list''']]. | ||
Line 163: | Line 163: | ||
}}{{TableRowN| '''Parent Property'''|'''Child Property''' |'''Type''' | '''Description''' | }}{{TableRowN| '''Parent Property'''|'''Child Property''' |'''Type''' | '''Description''' | ||
}}{{TableRowN| | acctid | Integer | Account ID | }}{{TableRowN| | acctid | Integer | Account ID | ||
− | }}{{TableRowN| | session | | + | }}{{TableRowN| | session | String | Session Token |
}}{{TableRowN| | request_type | String | "create" | }}{{TableRowN| | request_type | String | "create" | ||
}}{{TableRowN| | ''<parent object(s)>'' | Array of Objects | The parent(s) of the "timerange" resource, if any. See the [[Sensaphone.net_API#List|'''list''']]. | }}{{TableRowN| | ''<parent object(s)>'' | Array of Objects | The parent(s) of the "timerange" resource, if any. See the [[Sensaphone.net_API#List|'''list''']]. | ||
Line 195: | Line 195: | ||
}}{{TableRowN| '''Parent Property'''|'''Child Property''' |'''Type''' | '''Description''' | }}{{TableRowN| '''Parent Property'''|'''Child Property''' |'''Type''' | '''Description''' | ||
}}{{TableRowN| | acctid | Integer | Account ID | }}{{TableRowN| | acctid | Integer | Account ID | ||
− | }}{{TableRowN| | session | | + | }}{{TableRowN| | session | String | Session Token |
}}{{TableRowN| | request_type | String | "delete" | }}{{TableRowN| | request_type | String | "delete" | ||
}}{{TableRowN| | ''<parent object(s)>'' | Array of Objects | The parent(s) of the "timerange" resource, if any. See the [[Sensaphone.net_API#List|'''list''']]. | }}{{TableRowN| | ''<parent object(s)>'' | Array of Objects | The parent(s) of the "timerange" resource, if any. See the [[Sensaphone.net_API#List|'''list''']]. |
Latest revision as of 11:42, 10 July 2025
Contents
Sensaphone.net API
Specifications
The schedule resource has the following properties:
Parent Property | Property | Type | Description | Create | Delete | Read | Update |
<parent> | timerange | Array of Objects | The schedule's time ranges | ✓ | ✓ | ✓ | n/a |
timerange | range_id | Integer | ID of the time range. | ✓ | |||
timerange | start | String | The start time | ✓ | ✓ | ||
timerange | end | String | The end time | ✓ | ✓ | ||
timerange | interval | Integer (Bitmap) | Time interval options (see table) | ✓ | ✓ |
The interval is a bitmap containing the following options. "Bit 1" is the low-order bit in the interval unsigned integer. The default value "Sunday + Monday + Tuesday + Wednesday + Thursday + Friday + Saturday", matches every day that matches the "start" and "end".
Bit Position | Description |
1 | Timestamp: Sunday |
2 | Timestamp: Monday |
3 | Timestamp: Tuesday |
4 | Timestamp: Wednesday |
5 | Timestamp: Thursday |
6 | Timestamp: Friday |
7 | Timestamp: Saturday |
8 | Datetime: Is a holiday |
9 | Datetime: Interpret "start" and "end" as a datetime not a timestamp. |
10 | Datetime: Repeat: Daily |
11 | Datetime: Repeat: Weekly |
12 | Datetime: Repeat: Yearly (Day Number) |
13 | Datetime: Repeat: Yearly (Day of Week) |
14 | Invert selection. The timerange represents a time NOT selected. |
15 | Reserved |
GET
URI Mode Request URI's:
- Retrieve all information for all of a schedule's timeranges.
GET https://rest.sensaphone.net/api/v1/{ACCTID}/{SESSIONID}/user/{USER_ID}/contact/{CONTACT_ID}/schedule/{SCHEDULE_ID}/timerange
JSON Mode Request URI:
POST https://rest.sensaphone.net/api/v1/user/contact/schedule/timerange
JSON Mode Request Properties
Parent Property | Child Property | Type | Description |
acctid | Integer | Account ID | |
session | String | Session Token | |
request_type | String | "read" | |
<parent object(s)> | Array of Objects | The parent(s) of the "timerange" resource, if any. See the list. | |
<parent> | timerange | Array of Objects | The timerange object |
JSON Mode Response Properties
Parent Property | Child Property | Status | Type | Description |
<parent object(s)> | Optional | Array of Objects | The parent(s) specified in the request. | |
<parent> | timerange | Required | Array of Objects | The timerange object |
timerange | range_id | Optional | Integer | ID for timerange |
timerange | start | Optional | String | The start time |
timerange | end | Optional | String | The end time |
timerange | interval | Optional | Integer (Bitmap) | Time interval options (see table) |
Example JSON
Retrieve time range information.
- Request JSON
{ "acctid": 987654, "uuid": "0123-4567-8901", "request_type": "read", "device":[ { "device_id": 1234, "default_schedule":[ { "schedule_id":28487, "timerange": null } ] } ] }
- Response JSON
{ "result": { "success": true, "code": 0, "message": "OK" }, "response": { "device":[ { "device_id": 1234, "default_schedule":[ { "schedule_id":28487, "timerange":[ { "range_id": 58381 "start": "..TBD..", "end": "..TBD..", "interval": 127 }, { "range_id": 51587 "start": "..TBD..", "end": "..TBD..", "interval": 7 } ] } ] } ] } }
PUT
URI Mode Request URI's
- Edit the interval of a time range
PUT https://rest.sensaphone.net/api/v1/{ACCTID}/{SESSIONID}/device/{DEVICE_ID}/default_schedule/{SCHEDULE_ID}/timerange/{RANGE_ID}/interval/{INTERVAL}
JSON Mode Request URI:
POST https://rest.sensaphone.net/api/v1/device/default_schedule/timerange
JSON Mode Request Properties
Parent Property | Child Property | Type | Description |
acctid | Integer | Account ID | |
session | String | Session Token | |
request_type | String | "update" | |
<parent object(s)> | Array of Objects | The parent(s) of the "timerange" resource, if any. See the list. | |
<parent> | timerange | Array of Objects | The timerange object |
timerange | range_id | Integer | ID for time range |
timerange | CHILD PROPERTY | Child properties to be edited * |
* One or more timerange child properties listed below are required in addition to "range_id".
JSON Mode Response Properties
Parent Property | Child Property | Status | Type | Description |
<parent object(s)> | Optional | Array of Objects | The parent(s) specified in the request. | |
<parent> | timerange | Required | Array of Objects | The timerange object |
timerange | range_id | Optional | Integer | ID for timerange |
timerange | start | Optional | String | The start time |
timerange | end | Optional | String | The end time |
timerange | interval | Optional | Integer (Bitmap) | Time interval options (see table) |
POST
URI Mode Request URI's
- Create a new time range with default values.
POST https://rest.sensaphone.net/api/v1/{ACCTID}/{SESSIONID}/device/{DEVICE_ID}/default_schedule/{SCHEDULE_ID}/timerange
JSON Mode Request URI:
POST https://rest.sensaphone.net/api/v1/device/default_schedule/timerange
JSON Mode Request Properties
Parent Property | Child Property | Type | Description |
acctid | Integer | Account ID | |
session | String | Session Token | |
request_type | String | "create" | |
<parent object(s)> | Array of Objects | The parent(s) of the "timerange" resource, if any. See the list. | |
<parent> | timerange | Array of Objects | The timerange object |
timerange | CHILD PROPERTY | Child properties to be set * |
* One or more timerange child properties below may be specified in addition to "range_id".
JSON Mode Response Properties
Parent Property | Child Property | Status | Type | Description |
<parent object(s)> | Optional | Array of Objects | The parent(s) specified in the request. | |
<parent> | timerange | Required | Array of Objects | The timerange object |
timerange | range_id | Optional | Integer | ID for timerange |
timerange | start | Optional | String | The start time |
timerange | end | Optional | String | The end time |
timerange | interval | Optional | Integer (Bitmap) | Time interval options (see table) |
DELETE
URI Mode Request URI's
- Create a new time range with default values.
DELETE https://rest.sensaphone.net/api/v1/{ACCTID}/{SESSIONID}/device/{DEVICE_ID}/default_schedule/{SCHEDULE_ID}/timerange/{RANGE_ID}
JSON Mode Request URI:
POST https://rest.sensaphone.net/api/v1/device/default_schedule/timerange
JSON Mode Request Properties
Parent Property | Child Property | Type | Description |
acctid | Integer | Account ID | |
session | String | Session Token | |
request_type | String | "delete" | |
<parent object(s)> | Array of Objects | The parent(s) of the "timerange" resource, if any. See the list. | |
<parent> | timerange | Array of Objects | The timerange object |
timerange | range_id | Integer | ID for time range |