From 4b9424c834d4217ebb3cd99d5b188e0867c9c1b7 Mon Sep 17 00:00:00 2001 From: Shreyas Zare Date: Sun, 9 Oct 2022 15:50:57 +0530 Subject: [PATCH] updated api docs. --- APIDOCS.md | 420 ++++++++++++++++++++++++++++++++--------------------- 1 file changed, 256 insertions(+), 164 deletions(-) diff --git a/APIDOCS.md b/APIDOCS.md index 042284a3..641e4d18 100644 --- a/APIDOCS.md +++ b/APIDOCS.md @@ -289,7 +289,7 @@ PERMISSIONS:\ None WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `partialToken`: The partial token as returned by the user profile details API call. RESPONSE: @@ -316,7 +316,7 @@ PERMISSIONS:\ None WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated only by the `login` call. - `pass`: The new password for the currently logged in user. RESPONSE: @@ -337,7 +337,7 @@ PERMISSIONS:\ None WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -382,7 +382,7 @@ PERMISSIONS:\ None WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated only by the `login` call. - `displayName` (optional): The display name to set for the user account. - `sessionTimeoutSeconds` (optional): The session timeout value to set in seconds for the user account. @@ -432,7 +432,7 @@ PERMISSIONS:\ None WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -460,7 +460,7 @@ These API calls provide access to dashboard stats and allow deleting stat files. Returns the DNS stats that are displayed on the web console dashboard. URL:\ -`http://localhost:5380/api/dashboard/stats/get?token=x&type=lastHour` +`http://localhost:5380/api/dashboard/stats/get?token=x&type=lastHour&utc=true` OBSOLETE PATH:\ `api/getStats` @@ -469,8 +469,9 @@ PERMISSIONS:\ Dashboard: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `type`: The duration type for which valid values are: [`lastHour`, `lastDay`, `lastWeek`, `lastMonth`, `lastYear`, `custom`] +- `utc` (optional): Set to `true` to return the main chart data with labels in UTC date time format using which the labels can be converted into local time for display using the received `labelFormat`. - `start` (optional): The start date in UTC. Applies only to `custom` type. - `end` (optional): The end date in UTC. Applies only to `custom` type. @@ -493,67 +494,68 @@ RESPONSE: "blockedZones": 1136182 }, "mainChartData": { + "labelFormat": "HH:mm", "labels": [ - "15:55", - "15:56", - "15:57", - "15:58", - "15:59", - "16:00", - "16:01", - "16:02", - "16:03", - "16:04", - "16:05", - "16:06", - "16:07", - "16:08", - "16:09", - "16:10", - "16:11", - "16:12", - "16:13", - "16:14", - "16:15", - "16:16", - "16:17", - "16:18", - "16:19", - "16:20", - "16:21", - "16:22", - "16:23", - "16:24", - "16:25", - "16:26", - "16:27", - "16:28", - "16:29", - "16:30", - "16:31", - "16:32", - "16:33", - "16:34", - "16:35", - "16:36", - "16:37", - "16:38", - "16:39", - "16:40", - "16:41", - "16:42", - "16:43", - "16:44", - "16:45", - "16:46", - "16:47", - "16:48", - "16:49", - "16:50", - "16:51", - "16:52", - "16:53", - "16:54" + "2022-10-08T11:57:00.0000000Z", + "2022-10-08T11:58:00.0000000Z", + "2022-10-08T11:59:00.0000000Z", + "2022-10-08T12:00:00.0000000Z", + "2022-10-08T12:01:00.0000000Z", + "2022-10-08T12:02:00.0000000Z", + "2022-10-08T12:03:00.0000000Z", + "2022-10-08T12:04:00.0000000Z", + "2022-10-08T12:05:00.0000000Z", + "2022-10-08T12:06:00.0000000Z", + "2022-10-08T12:07:00.0000000Z", + "2022-10-08T12:08:00.0000000Z", + "2022-10-08T12:09:00.0000000Z", + "2022-10-08T12:10:00.0000000Z", + "2022-10-08T12:11:00.0000000Z", + "2022-10-08T12:12:00.0000000Z", + "2022-10-08T12:13:00.0000000Z", + "2022-10-08T12:14:00.0000000Z", + "2022-10-08T12:15:00.0000000Z", + "2022-10-08T12:16:00.0000000Z", + "2022-10-08T12:17:00.0000000Z", + "2022-10-08T12:18:00.0000000Z", + "2022-10-08T12:19:00.0000000Z", + "2022-10-08T12:20:00.0000000Z", + "2022-10-08T12:21:00.0000000Z", + "2022-10-08T12:22:00.0000000Z", + "2022-10-08T12:23:00.0000000Z", + "2022-10-08T12:24:00.0000000Z", + "2022-10-08T12:25:00.0000000Z", + "2022-10-08T12:26:00.0000000Z", + "2022-10-08T12:27:00.0000000Z", + "2022-10-08T12:28:00.0000000Z", + "2022-10-08T12:29:00.0000000Z", + "2022-10-08T12:30:00.0000000Z", + "2022-10-08T12:31:00.0000000Z", + "2022-10-08T12:32:00.0000000Z", + "2022-10-08T12:33:00.0000000Z", + "2022-10-08T12:34:00.0000000Z", + "2022-10-08T12:35:00.0000000Z", + "2022-10-08T12:36:00.0000000Z", + "2022-10-08T12:37:00.0000000Z", + "2022-10-08T12:38:00.0000000Z", + "2022-10-08T12:39:00.0000000Z", + "2022-10-08T12:40:00.0000000Z", + "2022-10-08T12:41:00.0000000Z", + "2022-10-08T12:42:00.0000000Z", + "2022-10-08T12:43:00.0000000Z", + "2022-10-08T12:44:00.0000000Z", + "2022-10-08T12:45:00.0000000Z", + "2022-10-08T12:46:00.0000000Z", + "2022-10-08T12:47:00.0000000Z", + "2022-10-08T12:48:00.0000000Z", + "2022-10-08T12:49:00.0000000Z", + "2022-10-08T12:50:00.0000000Z", + "2022-10-08T12:51:00.0000000Z", + "2022-10-08T12:52:00.0000000Z", + "2022-10-08T12:53:00.0000000Z", + "2022-10-08T12:54:00.0000000Z", + "2022-10-08T12:55:00.0000000Z", + "2022-10-08T12:56:00.0000000Z" ], "datasets": [ { @@ -1446,7 +1448,7 @@ PERMISSIONS:\ Dashboard: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `type` (optional): The duration type for which valid values are: [`lastHour`, `lastDay`, `lastWeek`, `lastMonth`, `lastYear`]. Default value is `lastHour`. - `statsType`: The stats type for which valid values are : [`TopClients`, `TopDomains`, `TopBlockedDomains`] - `limit` (optional): The limit of records to return. Default value is `1000`. @@ -1519,7 +1521,7 @@ PERMISSIONS:\ Dashboard: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -1549,7 +1551,7 @@ Zones: View\ Zone: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -1629,7 +1631,7 @@ PERMISSIONS:\ Zones: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name for creating the new zone. The value can be valid domain name, an IP address, or an network address in CIDR format. When value is IP address or network address, a reverse zone is created. - `type`: The type of zone to be created. Valid values are [`primary`, `secondary`, `stub`, `forwarder`]. - `primaryNameServerAddresses` (optional): List of comma separated IP addresses of the primary name server. This optional parameter is used only with Secondary and Stub zones. If this parameter is not used, the DNS server will try to recursively resolve the primary name server addresses automatically. @@ -1673,7 +1675,7 @@ Zones: Modify\ Zone: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name of the zone to be enabled. RESPONSE: @@ -1699,7 +1701,7 @@ Zones: Modify\ Zone: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name of the zone to be disabled. RESPONSE: @@ -1725,7 +1727,7 @@ Zones: Delete\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name of the zone to be deleted. RESPONSE: @@ -1750,7 +1752,7 @@ Zones: Modify\ Zone: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name of the zone to resync. RESPONSE: @@ -1775,7 +1777,7 @@ Zones: Modify\ Zone: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name of the zone to get options. - `includeAvailableTsigKeyNames`: Set to `true` to include list of available TSIG key names on the DNS server. @@ -1825,7 +1827,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name of the zone to set options. - `disabled` (optional): Sets if the zone is enabled or disabled. - `zoneTransfer` (optional): Sets if the zone allows zone transfer. Valid options are [`Deny`, `Allow`, `AllowOnlyZoneNameServers`, `AllowOnlySpecifiedNameServers`, `AllowBothZoneAndSpecifiedNameServers`]. @@ -1856,7 +1858,7 @@ Zones: Modify\ Zone: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name of the zone to get the permissions for. - `includeUsersAndGroups`: Set to true to get a list of users and groups in the response. @@ -1915,7 +1917,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The domain name of the zone to get the permissions for. - `userPermissions` (optional): A pipe `|` separated table data with each row containing username and boolean values for the view, modify and delete permissions. For example: user1|true|true|true|user2|true|false|false - `groupPermissions` (optional): A pipe `|` separated table data with each row containing the group name and boolean values for the view, modify and delete permissions. For example: group1|true|true|true|group2|true|true|false @@ -1968,7 +1970,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone to sign. - `algorithm`: The algorithm to be used for signing. Valid values are [`RSA`, `ECDSA`]. - `hashAlgorithm` (optional): The hash algorithm to be used when using `RSA` algorithm. Valid values are [`MD5`, `SHA1`, `SHA256`, `SHA512`]. This optional parameter is required when using `RSA` algorithm. @@ -2003,7 +2005,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone to unsign. RESPONSE: @@ -2028,7 +2030,7 @@ Zones: Modify\ Zone: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. RESPONSE: @@ -2081,7 +2083,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. RESPONSE: @@ -2106,7 +2108,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. RESPONSE: @@ -2131,7 +2133,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. - `iterations` (optional): The number of iterations to use for hashing. Default value is `0` when not specified. - `saltLength` (optional): The length of salt in bytes to use for hashing. Default value is `0` when not specified. @@ -2158,7 +2160,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. - `ttl`: The TTL value for the DNSKEY resource record set. @@ -2184,7 +2186,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. - `keyType`: The type of key for which the private key is to be generated. Valid values are [`KeySigningKey`, `ZoneSigningKey`]. - `rolloverDays` (optional): The frequency in days that the DNS server must automatically rollover the private key in the zone. Valid range is 0-365 days where 0 disables rollover. Default value is 90 days for Zone Signing Key (ZSK) and 0 days for Key Signing Key (KSK). @@ -2215,7 +2217,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. - `keyTag`: The key tag of the private key to be updated. - `rolloverDays`: The frequency in days that the DNS server must automatically rollover the private key in the zone. Valid range is 0-365 days where 0 disables rollover. @@ -2242,7 +2244,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. - `keyTag`: The key tag of the private key to be deleted. @@ -2268,7 +2270,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. RESPONSE: @@ -2293,7 +2295,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. - `keyTag`: The key tag of the private key to rollover. @@ -2319,7 +2321,7 @@ Zones: Modify\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `zone`: The name of the primary zone. - `keyTag`: The key tag of the private key to retire. @@ -2346,7 +2348,7 @@ Zones: None\ Zone: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name of the zone to add record. - `zone` (optional): The name of the authoritative zone into which the `domain` exists. When unspecified, the closest authoritative zone will be used. - `type`: The DNS resource record type. Supported record types are [`A`, `AAAA`, `MX`, `TXT`, `NS`, `PTR`, `CNAME`, `SRV`, `CAA`] and proprietory types [`ANAME`, `FWD`, `APP`]. @@ -2430,7 +2432,7 @@ Zones: None\ Zone: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name of the zone to get records. - `zone` (optional): The name of the authoritative zone into which the `domain` exists. When unspecified, the closest authoritative zone will be used. @@ -2973,7 +2975,7 @@ Zones: None\ Zone: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name of the zone to update the record. - `zone` (optional): The name of the authoritative zone into which the `domain` exists. When unspecified, the closest authoritative zone will be used. - `type`: The type of the resource record to update. @@ -3094,7 +3096,7 @@ Zones: None\ Zone: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name of the zone to delete the record. - `zone` (optional): The name of the authoritative zone into which the `domain` exists. When unspecified, the closest authoritative zone will be used. - `type`: The type of the resource record to delete. @@ -3145,7 +3147,7 @@ PERMISSIONS:\ Cache: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain` (Optional): The domain name to list records. If not passed, the domain is set to empty string which corresponds to the zone root. - `direction` (Optional): Allows specifying the direction of browsing the zone. Valid values are [`up`, `down`] and the default value is `down` when parameter is missing. This option allows the server to skip empty labels in the domain name when browsing up or down. @@ -3184,7 +3186,7 @@ PERMISSIONS:\ Cache: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name to delete cached records from. RESPONSE: @@ -3208,7 +3210,7 @@ PERMISSIONS:\ Cache: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -3235,7 +3237,7 @@ PERMISSIONS:\ Allowed: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain` (Optional): The domain name to list records. If not passed, the domain is set to empty string which corresponds to the zone root. - `direction` (Optional): Allows specifying the direction of browsing the zone. Valid values are [`up`, `down`] and the default value is `down` when parameter is missing. This option allows the server to skip empty labels in the domain name when browsing up or down. @@ -3288,7 +3290,7 @@ PERMISSIONS:\ Allowed: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name for the zone to be added. RESPONSE: @@ -3312,7 +3314,7 @@ PERMISSIONS:\ Allowed: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name for the zone to be deleted. RESPONSE: @@ -3336,7 +3338,7 @@ PERMISSIONS:\ Allowed: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -3359,7 +3361,7 @@ PERMISSIONS:\ Allowed: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. REQUEST: This is a `POST` request call where the content type of the request must be `application/x-www-form-urlencoded` and the content must be as shown below: @@ -3392,7 +3394,7 @@ PERMISSIONS:\ Allowed: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: Response is a downloadable text file with `Content-Type: text/plain` and `Content-Disposition: attachment`. @@ -3415,7 +3417,7 @@ PERMISSIONS:\ Blocked: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain` (Optional): The domain name to list records. If not passed, the domain is set to empty string which corresponds to the zone root. - `direction` (Optional): Allows specifying the direction of browsing the zone. Valid values are [`up`, `down`] and the default value is `down` when parameter is missing. This option allows the server to skip empty labels in the domain name when browsing up or down. @@ -3468,7 +3470,7 @@ PERMISSIONS:\ Blocked: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name for the zone to be added. RESPONSE: @@ -3492,7 +3494,7 @@ PERMISSIONS:\ Blocked: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `domain`: The domain name for the zone to be deleted. RESPONSE: @@ -3516,7 +3518,7 @@ PERMISSIONS:\ Blocked: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -3539,7 +3541,7 @@ PERMISSIONS:\ Blocked: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. REQUEST: This is a `POST` request call where the content type of the request must be `application/x-www-form-urlencoded` and the content must be as shown below: @@ -3572,7 +3574,7 @@ PERMISSIONS:\ Blocked: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: Response is a downloadable text file with `Content-Type: text/plain` and `Content-Disposition: attachment`. @@ -3592,7 +3594,7 @@ PERMISSIONS:\ Apps/Zones/Logs: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -3645,7 +3647,7 @@ PERMISSIONS:\ Apps: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -3713,14 +3715,30 @@ PERMISSIONS:\ Apps: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the app to install. - `url`: The URL of the app zip file. URL must start with `https://`. RESPONSE: ``` { - "response": {}, + "response": { + "installedApp": { + "name": "Wild IP", + "version": "1.0", + "dnsApps": [ + { + "classPath": "WildIp.App", + "description": "Returns the IP address that was embedded in the subdomain name for A and AAAA queries. It works similar to sslip.io.", + "isAppRecordRequestHandler": true, + "recordDataTemplate": null, + "isRequestController": false, + "isAuthoritativeRequestHandler": false, + "isQueryLogger": false + } + ] + } + }, "status": "ok" } ``` @@ -3736,14 +3754,30 @@ PERMISSIONS:\ Apps: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the app to install. - `url`: The URL of the app zip file. URL must start with `https://`. RESPONSE: ``` { - "response": {}, + "response": { + "updatedApp": { + "name": "Wild IP", + "version": "1.0", + "dnsApps": [ + { + "classPath": "WildIp.App", + "description": "Returns the IP address that was embedded in the subdomain name for A and AAAA queries. It works similar to sslip.io.", + "isAppRecordRequestHandler": true, + "recordDataTemplate": null, + "isRequestController": false, + "isAuthoritativeRequestHandler": false, + "isQueryLogger": false + } + ] + } + }, "status": "ok" } ``` @@ -3759,7 +3793,7 @@ PERMISSIONS:\ Apps: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the app to install. REQUEST: This is a POST request call where the request must be multi-part form data with the DNS application zip file data in binary format. @@ -3767,7 +3801,23 @@ REQUEST: This is a POST request call where the request must be multi-part form d RESPONSE: ``` { - "response": {}, + "response": { + "installedApp": { + "name": "Wild IP", + "version": "1.0", + "dnsApps": [ + { + "classPath": "WildIp.App", + "description": "Returns the IP address that was embedded in the subdomain name for A and AAAA queries. It works similar to sslip.io.", + "isAppRecordRequestHandler": true, + "recordDataTemplate": null, + "isRequestController": false, + "isAuthoritativeRequestHandler": false, + "isQueryLogger": false + } + ] + } + }, "status": "ok" } ``` @@ -3783,7 +3833,7 @@ PERMISSIONS:\ Apps: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the app to update. REQUEST: This is a POST request call where the request must be multi-part form data with the DNS application zip file data in binary format. @@ -3791,7 +3841,23 @@ REQUEST: This is a POST request call where the request must be multi-part form d RESPONSE: ``` { - "response": {}, + "response": { + "updatedApp": { + "name": "Wild IP", + "version": "1.0", + "dnsApps": [ + { + "classPath": "WildIp.App", + "description": "Returns the IP address that was embedded in the subdomain name for A and AAAA queries. It works similar to sslip.io.", + "isAppRecordRequestHandler": true, + "recordDataTemplate": null, + "isRequestController": false, + "isAuthoritativeRequestHandler": false, + "isQueryLogger": false + } + ] + } + }, "status": "ok" } ``` @@ -3807,7 +3873,7 @@ PERMISSIONS:\ Apps: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the app to uninstall. RESPONSE: @@ -3832,7 +3898,7 @@ PERMISSIONS:\ Apps: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the app to retrieve the config. RESPONSE: @@ -3859,7 +3925,7 @@ PERMISSIONS:\ Apps: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the app to retrieve the config. REQUEST: This is a POST request call where the content type of the request must be `application/x-www-form-urlencoded` and the content must be as shown below: @@ -3891,7 +3957,7 @@ PERMISSIONS:\ DnsClient: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `server`: The name server to query using the DNS client. - `domain`: The domain name to query. - `type`: The type of the query. @@ -3970,7 +4036,7 @@ PERMISSIONS:\ Settings: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -4069,7 +4135,7 @@ PERMISSIONS:\ Settings: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `dnsServerDomain` (optional): The primary domain name used by this DNS Server to identify itself. - `dnsServerLocalEndPoints` (optional): Local end points are the network interface IP addresses and ports you want the DNS Server to listen for requests. - `webServiceLocalAddresses` (optional): Local addresses are the network interface IP addresses you want the web service to listen for requests. @@ -4146,6 +4212,32 @@ WHERE: RESPONSE: This call returns the newly updated settings in the same format as that of the `getDnsSettings` call. +### Get TSIG Key Names + +Returns a list of TSIG key names that are configured in the DNS server Settings. + +URL:\ +`http://localhost:5380/api/settings/getTsigKeyNames?token=x` + +PERMISSIONS:\ +Settings: View OR Zones: Modify + +WHERE: +- `token`: The session token generated by the `login` or the `createToken` call. + +RESPONSE: +``` +{ + "response": { + "tsigKeyNames": [ + "key1", + "key2" + ] + }, + "status": "ok" +} +``` + ### Force Update Block Lists This call allows to reset the next update schedule and force download and update of the block lists. @@ -4160,7 +4252,7 @@ PERMISSIONS:\ Settings: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -4183,7 +4275,7 @@ PERMISSIONS:\ Settings: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `minutes`: The time in minutes to disable the blocklist for. RESPONSE: @@ -4210,7 +4302,7 @@ PERMISSIONS:\ Settings: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `blockLists` (optional): Set to `true` to backup block lists cache files. Default value is `false`. - `logs` (optional): Set to `true` to backup log files. Default value is `false`. - `scopes` (optional): Set to `true` to backup DHCP scope files. Default value is `false`. @@ -4240,7 +4332,7 @@ PERMISSIONS:\ Settings: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `blockLists` (optional): Set to `true` to restore block lists cache files. Default value is `false`. - `logs` (optional): Set to `true` to restore log files. Default value is `false`. - `scopes` (optional): Set to `true` to restore DHCP scope files. Default value is `false`. @@ -4278,7 +4370,7 @@ PERMISSIONS:\ DhcpServer: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -4335,7 +4427,7 @@ PERMISSIONS:\ DhcpServer: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. - `clientIdentifier` (optional): The client identifier for the lease. Either `hardwareAddress` or `clientIdentifier` must be specified. - `hardwareAddress` (optional): The MAC address of the device bearing the dynamic/reserved lease. Either `hardwareAddress` or `clientIdentifier` must be specified. @@ -4362,7 +4454,7 @@ PERMISSIONS:\ DhcpServer: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. - `clientIdentifier` (optional): The client identifier for the lease. Either `hardwareAddress` or `clientIdentifier` must be specified. - `hardwareAddress` (optional): The MAC address of the device bearing the dynamic lease. Either `hardwareAddress` or `clientIdentifier` must be specified. @@ -4389,7 +4481,7 @@ PERMISSIONS:\ DhcpServer: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. - `clientIdentifier` (optional): The client identifier for the lease. Either `hardwareAddress` or `clientIdentifier` must be specified. - `hardwareAddress` (optional): The MAC address of the device bearing the reserved lease. Either `hardwareAddress` or `clientIdentifier` must be specified. @@ -4416,7 +4508,7 @@ PERMISSIONS:\ DhcpServer: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -4452,7 +4544,7 @@ PERMISSIONS:\ DhcpServer: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. RESPONSE: @@ -4533,7 +4625,7 @@ PERMISSIONS:\ DhcpServer: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. - `newName` (optional): The new name of the DHCP scope to rename an existing scope. - `startingAddress` (optional): The starting IP address of the DHCP scope. This parameter is required when creating a new scope. @@ -4581,7 +4673,7 @@ PERMISSIONS:\ DhcpServer: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. - `hardwareAddress`: The MAC address of the client. - `ipAddress`: The reserved IP address for the client. @@ -4607,7 +4699,7 @@ PERMISSIONS:\ DhcpServer: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. - `hardwareAddress`: The MAC address of the client. @@ -4633,7 +4725,7 @@ PERMISSIONS:\ DhcpServer: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. RESPONSE: @@ -4658,7 +4750,7 @@ PERMISSIONS:\ DhcpServer: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. RESPONSE: @@ -4683,7 +4775,7 @@ PERMISSIONS:\ DhcpServer: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the DHCP scope. RESPONSE: @@ -4709,7 +4801,7 @@ PERMISSIONS:\ Administration: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -4753,7 +4845,7 @@ PERMISSIONS:\ Administration: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `user`: The username for the user account for which to generate the API token. - `tokenName`: The name of the created token to identify its session. @@ -4780,7 +4872,7 @@ PERMISSIONS:\ Administration: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `partialToken`: The partial token of the session to delete that was returned by the list of sessions. RESPONSE: @@ -4802,7 +4894,7 @@ PERMISSIONS:\ Administration: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -4844,7 +4936,7 @@ PERMISSIONS:\ Administration: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `user`: A unique username for the user account. - `pass`: A password for the user account. - `displayName` (optional): The display name for the user account. @@ -4876,7 +4968,7 @@ PERMISSIONS:\ Administration: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `user`: The username for the user account. - `includeGroups` (optional): Set `true` to include a list of groups in response. @@ -4938,7 +5030,7 @@ PERMISSIONS:\ Administration: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `user`: The username for the user account. - `displayName` (optional): The display name for the user account. - `newUser` (optional): A new username for renaming the username for the user account. @@ -5001,7 +5093,7 @@ PERMISSIONS:\ Administration: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `user`: The username for the user account to delete. RESPONSE: @@ -5023,7 +5115,7 @@ PERMISSIONS:\ Administration: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -5059,7 +5151,7 @@ PERMISSIONS:\ Administration: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `group`: The name of the group to create. - `description` (optional): The description text for the group. @@ -5085,7 +5177,7 @@ PERMISSIONS:\ Administration: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `group`: The name of the group. - `includeUsers` (optional): Set `true` to include a list of users in response. @@ -5118,7 +5210,7 @@ PERMISSIONS:\ Administration: Modify WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `group`: The name of the group to update. - `newGroup` (optional): A new group name to rename the group. - `description` (optional): A new group description. @@ -5149,7 +5241,7 @@ PERMISSIONS:\ Administration: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `group`: The name of the group to delete. RESPONSE: @@ -5169,7 +5261,7 @@ PERMISSIONS:\ Administration: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -5451,7 +5543,7 @@ PERMISSIONS:\ Administration: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `section`: The name of the section as given in the list of permissions API call. - `includeUsersAndGroups` (optional): Set to `true` to include a list of users and groups in the response. @@ -5508,7 +5600,7 @@ PERMISSIONS:\ Administration: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `section`: The name of the section as given in the list of permissions API call. - `userPermissions` (optional): A pipe `|` separated table data with each row containing username and boolean values for the view, modify and delete permissions. For example: user1|true|true|true|user2|true|false|false - `groupPermissions` (optional): A pipe `|` separated table data with each row containing the group name and boolean values for the view, modify and delete permissions. For example: group1|true|true|true|group2|true|true|false @@ -5561,7 +5653,7 @@ PERMISSIONS:\ Logs: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -5608,7 +5700,7 @@ PERMISSIONS:\ Logs: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `fileName`: The `fileName` returned by the List Logs API call. - `limit` (optional): The limit of number of mega bytes to download the log file. Default value is `0` when parameter is missing which indicates there is no limit. @@ -5629,7 +5721,7 @@ PERMISSIONS:\ Logs: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `log`: The `fileName` returned by the List Logs API call. RESPONSE: @@ -5654,7 +5746,7 @@ PERMISSIONS:\ Logs: Delete WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. RESPONSE: ``` @@ -5678,7 +5770,7 @@ PERMISSIONS:\ Logs: View WHERE: -- `token`: The session token generated by the `login` call. +- `token`: The session token generated by the `login` or the `createToken` call. - `name`: The name of the installed DNS app. - `classPath`: The class path of the DNS app. - `pageNumber` (optional): The page number of the data set to retrieve.