@@ -922,9 +922,25 @@ paths:
922
922
summary : Delete a database
923
923
description : |
924
924
Soft deletes a database.
925
- The database is scheduled for deletion and unavailable for querying.
925
+ The database is scheduled for deletion and unavailable for querying.
926
+ Use the `hard_delete_at` parameter to schedule a hard deletion.
926
927
parameters :
927
928
- $ref : ' #/components/parameters/db'
929
+ - name : hard_delete_at
930
+ in : query
931
+ required : false
932
+ schema :
933
+ type : string
934
+ format : date-time
935
+ description : |
936
+ Schedule the database for hard deletion at the specified time.
937
+ If not provided, the database will be soft deleted.
938
+ Use ISO 8601 date-time format (for example, "2025-12-31T23:59:59Z").
939
+
940
+ #### Deleting a database cannot be undone
941
+
942
+ Deleting a database is a destructive action.
943
+ Once a database is deleted, data stored in that database cannot be recovered.
928
944
responses :
929
945
' 200 ' :
930
946
description : Success. Database deleted.
@@ -961,14 +977,30 @@ paths:
961
977
summary : Delete a table
962
978
description : |
963
979
Soft deletes a table.
964
- The table is scheduled for deletion and unavailable for querying.
980
+ The table is scheduled for deletion and unavailable for querying.
981
+ Use the `hard_delete_at` parameter to schedule a hard deletion.
982
+
983
+ #### Deleting a table cannot be undone
984
+
985
+ Deleting a table is a destructive action.
986
+ Once a table is deleted, data stored in that table cannot be recovered.
965
987
parameters :
966
988
- $ref : ' #/components/parameters/db'
967
989
- name : table
968
990
in : query
969
991
required : true
970
992
schema :
971
993
type : string
994
+ - name : hard_delete_at
995
+ in : query
996
+ required : false
997
+ schema :
998
+ type : string
999
+ format : date-time
1000
+ description : |
1001
+ Schedule the table for hard deletion at the specified time.
1002
+ If not provided, the table will be soft deleted.
1003
+ Use ISO 8601 format (for example, "2025-12-31T23:59:59Z").
972
1004
responses :
973
1005
' 200 ' :
974
1006
description : Success (no content). The table has been deleted.
@@ -978,6 +1010,77 @@ paths:
978
1010
description : Table not found.
979
1011
tags :
980
1012
- Table
1013
+ patch :
1014
+ operationId : PatchConfigureTable
1015
+ summary : Update a table
1016
+ description : |
1017
+ Updates table configuration, such as retention period.
1018
+ requestBody :
1019
+ required : true
1020
+ content :
1021
+ application/json :
1022
+ schema :
1023
+ $ref : ' #/components/schemas/UpdateTableRequest'
1024
+ responses :
1025
+ ' 200 ' :
1026
+ description : Success. The table has been updated.
1027
+ ' 400 ' :
1028
+ description : Bad request.
1029
+ ' 401 ' :
1030
+ $ref : ' #/components/responses/Unauthorized'
1031
+ ' 404 ' :
1032
+ description : Table not found.
1033
+ tags :
1034
+ - Table
1035
+ /api/v3/configure/database/{db} :
1036
+ patch :
1037
+ operationId : PatchConfigureDatabase
1038
+ summary : Update a database
1039
+ description : |
1040
+ Updates database configuration, such as retention period.
1041
+ parameters :
1042
+ - name : db
1043
+ in : path
1044
+ required : true
1045
+ schema :
1046
+ type : string
1047
+ description : The name of the database to update.
1048
+ requestBody :
1049
+ required : true
1050
+ content :
1051
+ application/json :
1052
+ schema :
1053
+ $ref : ' #/components/schemas/UpdateDatabaseRequest'
1054
+ responses :
1055
+ ' 200 ' :
1056
+ description : Success. The database has been updated.
1057
+ ' 400 ' :
1058
+ description : Bad request.
1059
+ ' 401 ' :
1060
+ $ref : ' #/components/responses/Unauthorized'
1061
+ ' 404 ' :
1062
+ description : Database not found.
1063
+ tags :
1064
+ - Database
1065
+ /api/v3/show/license :
1066
+ get :
1067
+ operationId : GetShowLicense
1068
+ summary : Show license information
1069
+ description : |
1070
+ Retrieves information about the current InfluxDB 3 Enterprise license.
1071
+ responses :
1072
+ ' 200 ' :
1073
+ description : Success. The response body contains license information.
1074
+ content :
1075
+ application/json :
1076
+ schema :
1077
+ $ref : ' #/components/schemas/LicenseResponse'
1078
+ ' 401 ' :
1079
+ $ref : ' #/components/responses/Unauthorized'
1080
+ ' 403 ' :
1081
+ description : Access denied.
1082
+ tags :
1083
+ - Server information
981
1084
/api/v3/configure/distinct_cache :
982
1085
post :
983
1086
operationId : PostConfigureDistinctCache
@@ -1136,7 +1239,7 @@ paths:
1136
1239
db : mydb
1137
1240
plugin_filename : request.py
1138
1241
trigger_name : hello_world_trigger
1139
- trigger_specification : path :hello-world
1242
+ trigger_specification : " request :hello-world"
1140
1243
cron_friday_afternoon :
1141
1244
summary : Cron trigger for Friday afternoons
1142
1245
description : |
@@ -1365,16 +1468,16 @@ paths:
1365
1468
description : Plugin not enabled.
1366
1469
tags :
1367
1470
- Processing engine
1368
- /api/v3/engine/{plugin_path } :
1471
+ /api/v3/engine/{request_path } :
1369
1472
parameters :
1370
- - name : plugin_path
1473
+ - name : request_path
1371
1474
description : |
1372
- The path configured in the request trigger specification "path:<plugin_path >"` for the plugin.
1475
+ The path configured in the request trigger specification "request:<request_path >"` for the plugin.
1373
1476
1374
1477
For example, if you define a trigger with the following:
1375
1478
1376
1479
```json
1377
- trigger-spec : "path :hello-world"
1480
+ trigger_specification : "request :hello-world"
1378
1481
```
1379
1482
1380
1483
then, the HTTP API exposes the following plugin endpoint:
@@ -1390,7 +1493,7 @@ paths:
1390
1493
operationId : GetProcessingEnginePluginRequest
1391
1494
summary : On Request processing engine plugin request
1392
1495
description : |
1393
- Executes the On Request processing engine plugin specified in `<plugin_path> `.
1496
+ Executes the On Request processing engine plugin specified in the trigger's `plugin_filename `.
1394
1497
The request can include request headers, query string parameters, and a request body, which InfluxDB passes to the plugin.
1395
1498
1396
1499
An On Request plugin implements the following signature:
@@ -1417,7 +1520,7 @@ paths:
1417
1520
operationId : PostProcessingEnginePluginRequest
1418
1521
summary : On Request processing engine plugin request
1419
1522
description : |
1420
- Executes the On Request processing engine plugin specified in `<plugin_path> `.
1523
+ Executes the On Request processing engine plugin specified in the trigger's `plugin_filename `.
1421
1524
The request can include request headers, query string parameters, and a request body, which InfluxDB passes to the plugin.
1422
1525
1423
1526
An On Request plugin implements the following signature:
@@ -1812,6 +1915,16 @@ components:
1812
1915
properties :
1813
1916
db :
1814
1917
type : string
1918
+ pattern : ' ^[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]$|^[a-zA-Z0-9]$'
1919
+ description : |-
1920
+ The database name. Database names cannot contain underscores (_).
1921
+ Names must start and end with alphanumeric characters and can contain hyphens (-) in the middle.
1922
+ retention_period :
1923
+ type : string
1924
+ description : |-
1925
+ The retention period for the database. Specifies how long data should be retained.
1926
+ Use duration format (for example, "1d", "1h", "30m", "7d").
1927
+ example : " 7d"
1815
1928
required :
1816
1929
- db
1817
1930
CreateTableRequest :
@@ -1843,6 +1956,12 @@ components:
1843
1956
required :
1844
1957
- name
1845
1958
- type
1959
+ retention_period :
1960
+ type : string
1961
+ description : |-
1962
+ The retention period for the table. Specifies how long data in this table should be retained.
1963
+ Use duration format (for example, "1d", "1h", "30m", "7d").
1964
+ example : " 30d"
1846
1965
required :
1847
1966
- db
1848
1967
- table
@@ -1929,7 +2048,7 @@ components:
1929
2048
`schedule.py` or `endpoints/report.py`.
1930
2049
The path can be absolute or relative to the `--plugins-dir` directory configured when starting InfluxDB 3.
1931
2050
1932
- The plugin file must implement the trigger interface associated with the trigger's specification (`trigger_spec`) .
2051
+ The plugin file must implement the trigger interface associated with the trigger's specification.
1933
2052
trigger_name :
1934
2053
type : string
1935
2054
trigger_specification :
@@ -1972,12 +2091,12 @@ components:
1972
2091
- `table:TABLE_NAME` - Triggers on write events to a specific table
1973
2092
1974
2093
### On-demand triggers
1975
- Format: `path:ENDPOINT_NAME `
2094
+ Format: `request:REQUEST_PATH `
1976
2095
1977
- Creates an HTTP endpoint `/api/v3/engine/ENDPOINT_NAME ` for manual invocation:
1978
- - `path :hello-world` - Creates endpoint `/api/v3/engine/hello-world`
1979
- - `path :data-export` - Creates endpoint `/api/v3/engine/data-export`
1980
- pattern : ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*|path :[a-zA-Z0-9_-]+)$
2096
+ Creates an HTTP endpoint `/api/v3/engine/REQUEST_PATH ` for manual invocation:
2097
+ - `request :hello-world` - Creates endpoint `/api/v3/engine/hello-world`
2098
+ - `request :data-export` - Creates endpoint `/api/v3/engine/data-export`
2099
+ pattern : ^(cron:[0-9 *,/-]+|every:[0-9]+[smhd]|all_tables|table:[a-zA-Z_][a-zA-Z0-9_]*|request :[a-zA-Z0-9_-]+)$
1981
2100
example : cron:0 0 6 * * 1-5
1982
2101
trigger_arguments :
1983
2102
type : object
@@ -2074,6 +2193,65 @@ components:
2074
2193
- m
2075
2194
- h
2076
2195
type : string
2196
+ UpdateDatabaseRequest :
2197
+ type : object
2198
+ properties :
2199
+ retention_period :
2200
+ type : string
2201
+ description : |
2202
+ The retention period for the database. Specifies how long data should be retained.
2203
+ Use duration format (for example, "1d", "1h", "30m", "7d").
2204
+ example : " 7d"
2205
+ description : Request schema for updating database configuration.
2206
+ UpdateTableRequest :
2207
+ type : object
2208
+ properties :
2209
+ db :
2210
+ type : string
2211
+ description : The name of the database containing the table.
2212
+ table :
2213
+ type : string
2214
+ description : The name of the table to update.
2215
+ retention_period :
2216
+ type : string
2217
+ description : |
2218
+ The retention period for the table. Specifies how long data in this table should be retained.
2219
+ Use duration format (for example, "1d", "1h", "30m", "7d").
2220
+ example : " 30d"
2221
+ required :
2222
+ - db
2223
+ - table
2224
+ description : Request schema for updating table configuration.
2225
+ LicenseResponse :
2226
+ type : object
2227
+ properties :
2228
+ license_type :
2229
+ type : string
2230
+ description : The type of license (for example, "enterprise", "trial").
2231
+ example : " enterprise"
2232
+ expires_at :
2233
+ type : string
2234
+ format : date-time
2235
+ description : The expiration date of the license in ISO 8601 format.
2236
+ example : " 2025-12-31T23:59:59Z"
2237
+ features :
2238
+ type : array
2239
+ items :
2240
+ type : string
2241
+ description : List of features enabled by the license.
2242
+ example :
2243
+ - " clustering"
2244
+ - " processing_engine"
2245
+ - " advanced_auth"
2246
+ status :
2247
+ type : string
2248
+ enum :
2249
+ - " active"
2250
+ - " expired"
2251
+ - " invalid"
2252
+ description : The current status of the license.
2253
+ example : " active"
2254
+ description : Response schema for license information.
2077
2255
responses :
2078
2256
Unauthorized :
2079
2257
description : Unauthorized access.
0 commit comments