Openapi Schema improvements

- Return proper booleans in api responses
- Update jsonschemavalidation to latest draft
This commit is contained in:
Jamie Curnow
2024-10-10 15:53:11 +10:00
parent dfe2588523
commit 4572b205c9
69 changed files with 862 additions and 2082 deletions

View File

@ -5,16 +5,16 @@
"additionalProperties": false,
"properties": {
"id": {
"$ref": "../common.json#/definitions/id"
"$ref": "../common.json#/properties/id"
},
"created_on": {
"$ref": "../common.json#/definitions/created_on"
"$ref": "../common.json#/properties/created_on"
},
"modified_on": {
"$ref": "../common.json#/definitions/modified_on"
"$ref": "../common.json#/properties/modified_on"
},
"owner_user_id": {
"$ref": "../common.json#/definitions/user_id"
"$ref": "../common.json#/properties/user_id"
},
"name": {
"type": "string",

View File

@ -5,22 +5,22 @@
"additionalProperties": false,
"properties": {
"id": {
"$ref": "../common.json#/definitions/id"
"$ref": "../common.json#/properties/id"
},
"created_on": {
"$ref": "../common.json#/definitions/created_on"
"$ref": "../common.json#/properties/created_on"
},
"modified_on": {
"$ref": "../common.json#/definitions/modified_on"
"$ref": "../common.json#/properties/modified_on"
},
"user_id": {
"$ref": "../common.json#/definitions/user_id"
"$ref": "../common.json#/properties/user_id"
},
"object_type": {
"type": "string"
},
"object_id": {
"$ref": "../common.json#/definitions/id"
"$ref": "../common.json#/properties/id"
},
"action": {
"type": "string"

View File

@ -5,30 +5,29 @@
"additionalProperties": false,
"properties": {
"id": {
"$ref": "../common.json#/definitions/id"
"$ref": "../common.json#/properties/id"
},
"created_on": {
"$ref": "../common.json#/definitions/created_on"
"$ref": "../common.json#/properties/created_on"
},
"modified_on": {
"$ref": "../common.json#/definitions/modified_on"
"$ref": "../common.json#/properties/modified_on"
},
"owner_user_id": {
"$ref": "../common.json#/definitions/user_id"
"$ref": "../common.json#/properties/user_id"
},
"provider": {
"$ref": "../common.json#/definitions/ssl_provider"
"$ref": "../common.json#/properties/ssl_provider"
},
"nice_name": {
"type": "string",
"description": "Nice Name for the custom certificate"
},
"domain_names": {
"$ref": "../common.json#/definitions/domain_names"
"$ref": "../common.json#/properties/domain_names"
},
"expires_on": {
"description": "Date and time of expiration",
"format": "date-time",
"readOnly": true,
"type": "string"
},
@ -37,8 +36,7 @@
"additionalProperties": false,
"properties": {
"letsencrypt_email": {
"type": "string",
"format": "email"
"type": "string"
},
"letsencrypt_agree": {
"type": "boolean"

View File

@ -5,40 +5,40 @@
"additionalProperties": false,
"properties": {
"id": {
"$ref": "../common.json#/definitions/id"
"$ref": "../common.json#/properties/id"
},
"created_on": {
"$ref": "../common.json#/definitions/created_on"
"$ref": "../common.json#/properties/created_on"
},
"modified_on": {
"$ref": "../common.json#/definitions/modified_on"
"$ref": "../common.json#/properties/modified_on"
},
"owner_user_id": {
"$ref": "../common.json#/definitions/user_id"
"$ref": "../common.json#/properties/user_id"
},
"domain_names": {
"$ref": "../common.json#/definitions/domain_names"
"$ref": "../common.json#/properties/domain_names"
},
"certificate_id": {
"$ref": "../common.json#/definitions/certificate_id"
"$ref": "../common.json#/properties/certificate_id"
},
"ssl_forced": {
"$ref": "../common.json#/definitions/ssl_forced"
"$ref": "../common.json#/properties/ssl_forced"
},
"hsts_enabled": {
"$ref": "../common.json#/definitions/hsts_enabled"
"$ref": "../common.json#/properties/hsts_enabled"
},
"hsts_subdomains": {
"$ref": "../common.json#/definitions/hsts_subdomains"
"$ref": "../common.json#/properties/hsts_subdomains"
},
"http2_support": {
"$ref": "../common.json#/definitions/http2_support"
"$ref": "../common.json#/properties/http2_support"
},
"advanced_config": {
"type": "string"
},
"enabled": {
"$ref": "../common.json#/definitions/enabled"
"$ref": "../common.json#/properties/enabled"
},
"meta": {
"type": "object"

View File

@ -30,19 +30,19 @@
"additionalProperties": false,
"properties": {
"id": {
"$ref": "../common.json#/definitions/id"
"$ref": "../common.json#/properties/id"
},
"created_on": {
"$ref": "../common.json#/definitions/created_on"
"$ref": "../common.json#/properties/created_on"
},
"modified_on": {
"$ref": "../common.json#/definitions/modified_on"
"$ref": "../common.json#/properties/modified_on"
},
"owner_user_id": {
"$ref": "../common.json#/definitions/user_id"
"$ref": "../common.json#/properties/user_id"
},
"domain_names": {
"$ref": "../common.json#/definitions/domain_names"
"$ref": "../common.json#/properties/domain_names"
},
"forward_host": {
"type": "string",
@ -55,19 +55,19 @@
"maximum": 65535
},
"access_list_id": {
"$ref": "../common.json#/definitions/access_list_id"
"$ref": "../common.json#/properties/access_list_id"
},
"certificate_id": {
"$ref": "../common.json#/definitions/certificate_id"
"$ref": "../common.json#/properties/certificate_id"
},
"ssl_forced": {
"$ref": "../common.json#/definitions/ssl_forced"
"$ref": "../common.json#/properties/ssl_forced"
},
"caching_enabled": {
"$ref": "../common.json#/definitions/caching_enabled"
"$ref": "../common.json#/properties/caching_enabled"
},
"block_exploits": {
"$ref": "../common.json#/definitions/block_exploits"
"$ref": "../common.json#/properties/block_exploits"
},
"advanced_config": {
"type": "string"
@ -81,14 +81,14 @@
"type": "boolean"
},
"http2_support": {
"$ref": "../common.json#/definitions/http2_support"
"$ref": "../common.json#/properties/http2_support"
},
"forward_scheme": {
"type": "string",
"enum": ["http", "https"]
},
"enabled": {
"$ref": "../common.json#/definitions/enabled"
"$ref": "../common.json#/properties/enabled"
},
"locations": {
"type": "array",
@ -124,19 +124,33 @@
}
},
"hsts_enabled": {
"$ref": "../common.json#/definitions/hsts_enabled"
"$ref": "../common.json#/properties/hsts_enabled"
},
"hsts_subdomains": {
"$ref": "../common.json#/definitions/hsts_subdomains"
"$ref": "../common.json#/properties/hsts_subdomains"
},
"certificate": {
"$ref": "./certificate-object.json"
"oneOf": [
{
"type": "null"
},
{
"$ref": "./certificate-object.json"
}
]
},
"owner": {
"$ref": "./user-object.json"
},
"access_list": {
"$ref": "./access-list-object.json"
"oneOf": [
{
"type": "null"
},
{
"$ref": "./access-list-object.json"
}
]
},
"use_default_location": {
"type": "boolean"

View File

@ -5,19 +5,19 @@
"additionalProperties": false,
"properties": {
"id": {
"$ref": "../common.json#/definitions/id"
"$ref": "../common.json#/properties/id"
},
"created_on": {
"$ref": "../common.json#/definitions/created_on"
"$ref": "../common.json#/properties/created_on"
},
"modified_on": {
"$ref": "../common.json#/definitions/modified_on"
"$ref": "../common.json#/properties/modified_on"
},
"owner_user_id": {
"$ref": "../common.json#/definitions/user_id"
"$ref": "../common.json#/properties/user_id"
},
"domain_names": {
"$ref": "../common.json#/definitions/domain_names"
"$ref": "../common.json#/properties/domain_names"
},
"forward_http_code": {
"description": "Redirect HTTP Status Code",
@ -42,28 +42,28 @@
"type": "boolean"
},
"certificate_id": {
"$ref": "../common.json#/definitions/certificate_id"
"$ref": "../common.json#/properties/certificate_id"
},
"ssl_forced": {
"$ref": "../common.json#/definitions/ssl_forced"
"$ref": "../common.json#/properties/ssl_forced"
},
"hsts_enabled": {
"$ref": "../common.json#/definitions/hsts_enabled"
"$ref": "../common.json#/properties/hsts_enabled"
},
"hsts_subdomains": {
"$ref": "../common.json#/definitions/hsts_subdomains"
"$ref": "../common.json#/properties/hsts_subdomains"
},
"http2_support": {
"$ref": "../common.json#/definitions/http2_support"
"$ref": "../common.json#/properties/http2_support"
},
"block_exploits": {
"$ref": "../common.json#/definitions/block_exploits"
"$ref": "../common.json#/properties/block_exploits"
},
"advanced_config": {
"type": "string"
},
"enabled": {
"$ref": "../common.json#/definitions/enabled"
"$ref": "../common.json#/properties/enabled"
},
"meta": {
"type": "object"

View File

@ -5,16 +5,16 @@
"additionalProperties": false,
"properties": {
"id": {
"$ref": "../common.json#/definitions/id"
"$ref": "../common.json#/properties/id"
},
"created_on": {
"$ref": "../common.json#/definitions/created_on"
"$ref": "../common.json#/properties/created_on"
},
"modified_on": {
"$ref": "../common.json#/definitions/modified_on"
"$ref": "../common.json#/properties/modified_on"
},
"owner_user_id": {
"$ref": "../common.json#/definitions/user_id"
"$ref": "../common.json#/properties/user_id"
},
"incoming_port": {
"type": "integer",
@ -51,7 +51,7 @@
"type": "boolean"
},
"enabled": {
"$ref": "../common.json#/definitions/enabled"
"$ref": "../common.json#/properties/enabled"
},
"meta": {
"type": "object"

View File

@ -21,11 +21,9 @@
"example": "2020-01-30T09:41:04.000Z"
},
"is_disabled": {
"type": "integer",
"minimum": 0,
"maximum": 1,
"description": "Is user Disabled (0 = false, 1 = true)",
"example": 0
"type": "boolean",
"description": "Is user Disabled",
"example": true
},
"email": {
"type": "string",