{
    "openapi": "3.1.0",
    "info": {
        "title": "InvoiceShelf API",
        "version": "3.0.0-alpha.2",
        "description": "REST API for InvoiceShelf \u2014 open-source invoicing & expense tracking. Authenticate with a Sanctum personal access token (Authorization: Bearer <token>). Company-scoped endpoints additionally require a `company` header carrying the company ID."
    },
    "servers": [
        {
            "url": "https://your-instance.example.com/api/v1",
            "description": "Your InvoiceShelf instance"
        }
    ],
    "security": [
        {
            "http": []
        }
    ],
    "paths": {
        "/abilities": {
            "get": {
                "operationId": "company.abilities",
                "summary": "Handle the incoming request",
                "tags": [
                    "Abilities"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "abilities": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "abilities"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/{company}/customer/estimate/{id}/status": {
            "post": {
                "operationId": "customerPortal.acceptEstimate",
                "summary": "Handle the incoming request",
                "tags": [
                    "AcceptEstimate"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company slug",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/super-admin/dashboard": {
            "get": {
                "operationId": "adminDashboard.index",
                "tags": [
                    "AdminDashboard"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "app_version": {
                                            "anyOf": [
                                                {
                                                    "type": "null"
                                                },
                                                {
                                                    "type": "array",
                                                    "items": {}
                                                },
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "object"
                                                }
                                            ]
                                        },
                                        "php_version": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "object"
                                                }
                                            ]
                                        },
                                        "database": {
                                            "type": "object",
                                            "properties": {
                                                "driver": {
                                                    "type": "string"
                                                },
                                                "version": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "driver",
                                                "version"
                                            ]
                                        },
                                        "counts": {
                                            "type": "object",
                                            "properties": {
                                                "companies": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                },
                                                "users": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "companies",
                                                "users"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "app_version",
                                        "php_version",
                                        "database",
                                        "counts"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/installation/set-domain": {
            "put": {
                "operationId": "installation.appDomain",
                "tags": [
                    "AppDomain"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DomainEnvironmentRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "required": [
                                                "success"
                                            ]
                                        },
                                        {
                                            "anyOf": [
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "success": {
                                                            "type": "string",
                                                            "const": "domain_variable_save_successfully"
                                                        }
                                                    },
                                                    "required": [
                                                        "success"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "error": {
                                                            "type": "string",
                                                            "const": "domain_verification_failed"
                                                        }
                                                    },
                                                    "required": [
                                                        "error"
                                                    ]
                                                }
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/app/version": {
            "get": {
                "operationId": "operations.appVersion",
                "summary": "Handle the incoming request",
                "tags": [
                    "AppVersion"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "version": {
                                            "anyOf": [
                                                {
                                                    "type": "null"
                                                },
                                                {
                                                    "type": "array",
                                                    "items": {}
                                                },
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "object"
                                                }
                                            ]
                                        },
                                        "channel": {
                                            "type": "string",
                                            "const": "stable"
                                        },
                                        "containerized": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "version",
                                        "channel",
                                        "containerized"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/auth/login": {
            "post": {
                "operationId": "auth.login",
                "tags": [
                    "Auth"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/LoginRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "type": {
                                            "type": "string",
                                            "const": "Bearer"
                                        },
                                        "token": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "type",
                                        "token"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/auth/logout": {
            "post": {
                "operationId": "auth.logout",
                "tags": [
                    "Auth"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/auth/check": {
            "get": {
                "operationId": "auth.check",
                "tags": [
                    "Auth"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "boolean"
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/backups": {
            "get": {
                "operationId": "backups.index",
                "tags": [
                    "Backups"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "backups": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "error": {
                                                    "type": "string",
                                                    "const": "invalid_disk_credentials"
                                                },
                                                "error_message": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "backups",
                                                "error",
                                                "error_message"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "backups": {
                                                    "type": "array",
                                                    "items": {}
                                                }
                                            },
                                            "required": [
                                                "backups"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "backups.store",
                "tags": [
                    "Backups"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/backups/{disk}": {
            "delete": {
                "operationId": "backups.destroy",
                "tags": [
                    "Backups"
                ],
                "parameters": [
                    {
                        "name": "disk",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "path",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/download-backup": {
            "get": {
                "operationId": "backups.download",
                "tags": [
                    "Backups"
                ],
                "parameters": [
                    {
                        "name": "path",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/zip": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        },
                        "headers": {
                            "Transfer-Encoding": {
                                "required": true,
                                "schema": {
                                    "type": "string",
                                    "enum": [
                                        "chunked"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/bootstrap": {
            "get": {
                "operationId": "company.bootstrap",
                "summary": "Handle the incoming request",
                "tags": [
                    "Bootstrap"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "current_user": {
                                                    "$ref": "#/components/schemas/UserResource"
                                                },
                                                "current_user_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                },
                                                "current_user_abilities": {
                                                    "type": "object"
                                                },
                                                "companies": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/CompanyResource"
                                                    }
                                                },
                                                "current_company": {
                                                    "$ref": "#/components/schemas/CompanyResource"
                                                },
                                                "current_company_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                },
                                                "current_company_currency": {
                                                    "anyOf": [
                                                        {
                                                            "type": "string"
                                                        },
                                                        {
                                                            "$ref": "#/components/schemas/Currency"
                                                        },
                                                        {
                                                            "type": "null"
                                                        }
                                                    ]
                                                },
                                                "config": {
                                                    "type": "string"
                                                },
                                                "global_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                },
                                                "main_menu": {
                                                    "type": "array",
                                                    "items": {
                                                        "anyOf": [
                                                            {
                                                                "type": "object",
                                                                "properties": {
                                                                    "title": {
                                                                        "type": "string"
                                                                    },
                                                                    "link": {
                                                                        "type": "string"
                                                                    },
                                                                    "icon": {
                                                                        "type": "string"
                                                                    },
                                                                    "name": {
                                                                        "type": "string"
                                                                    },
                                                                    "group": {
                                                                        "type": "string"
                                                                    },
                                                                    "group_label": {
                                                                        "anyOf": [
                                                                            {
                                                                                "type": "string"
                                                                            },
                                                                            {
                                                                                "type": "string",
                                                                                "enum": [
                                                                                    ""
                                                                                ]
                                                                            }
                                                                        ]
                                                                    },
                                                                    "priority": {
                                                                        "anyOf": [
                                                                            {
                                                                                "type": "string"
                                                                            },
                                                                            {
                                                                                "type": "integer",
                                                                                "enum": [
                                                                                    100
                                                                                ]
                                                                            }
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "title",
                                                                    "link",
                                                                    "icon",
                                                                    "name",
                                                                    "group",
                                                                    "group_label",
                                                                    "priority"
                                                                ]
                                                            },
                                                            {
                                                                "type": "object",
                                                                "properties": {
                                                                    "title": {
                                                                        "type": "string"
                                                                    },
                                                                    "link": {
                                                                        "type": "string"
                                                                    },
                                                                    "icon": {
                                                                        "type": "string"
                                                                    },
                                                                    "name": {
                                                                        "type": "string"
                                                                    },
                                                                    "group": {
                                                                        "anyOf": [
                                                                            {
                                                                                "type": "string"
                                                                            },
                                                                            {
                                                                                "type": "string",
                                                                                "enum": [
                                                                                    "modules"
                                                                                ]
                                                                            }
                                                                        ]
                                                                    },
                                                                    "group_label": {
                                                                        "anyOf": [
                                                                            {
                                                                                "type": "string"
                                                                            },
                                                                            {
                                                                                "type": "string",
                                                                                "enum": [
                                                                                    "navigation.modules"
                                                                                ]
                                                                            }
                                                                        ]
                                                                    },
                                                                    "priority": {
                                                                        "anyOf": [
                                                                            {
                                                                                "type": "string"
                                                                            },
                                                                            {
                                                                                "type": "integer",
                                                                                "enum": [
                                                                                    100
                                                                                ]
                                                                            }
                                                                        ]
                                                                    }
                                                                },
                                                                "required": [
                                                                    "title",
                                                                    "link",
                                                                    "icon",
                                                                    "name",
                                                                    "group",
                                                                    "group_label",
                                                                    "priority"
                                                                ]
                                                            }
                                                        ]
                                                    }
                                                },
                                                "setting_menu": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "title": {
                                                                "type": "string"
                                                            },
                                                            "link": {
                                                                "type": "string"
                                                            },
                                                            "icon": {
                                                                "type": "string"
                                                            },
                                                            "name": {
                                                                "type": "string"
                                                            },
                                                            "group": {
                                                                "type": "string"
                                                            },
                                                            "group_label": {
                                                                "anyOf": [
                                                                    {
                                                                        "type": "string"
                                                                    },
                                                                    {
                                                                        "type": "string",
                                                                        "enum": [
                                                                            ""
                                                                        ]
                                                                    }
                                                                ]
                                                            },
                                                            "priority": {
                                                                "anyOf": [
                                                                    {
                                                                        "type": "string"
                                                                    },
                                                                    {
                                                                        "type": "integer",
                                                                        "enum": [
                                                                            100
                                                                        ]
                                                                    }
                                                                ]
                                                            }
                                                        },
                                                        "required": [
                                                            "title",
                                                            "link",
                                                            "icon",
                                                            "name",
                                                            "group",
                                                            "group_label",
                                                            "priority"
                                                        ]
                                                    }
                                                },
                                                "modules": {
                                                    "type": "array",
                                                    "items": {}
                                                },
                                                "user_menu": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "title": {
                                                                "type": "string"
                                                            },
                                                            "link": {
                                                                "type": "string"
                                                            },
                                                            "icon": {
                                                                "type": "string"
                                                            },
                                                            "priority": {
                                                                "type": "integer"
                                                            },
                                                            "name": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            "title",
                                                            "link",
                                                            "icon",
                                                            "name"
                                                        ]
                                                    }
                                                },
                                                "pending_invitations": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/CompanyInvitationResource"
                                                    }
                                                }
                                            },
                                            "required": [
                                                "current_user",
                                                "current_user_settings",
                                                "current_user_abilities",
                                                "companies",
                                                "current_company",
                                                "current_company_settings",
                                                "current_company_currency",
                                                "config",
                                                "global_settings",
                                                "main_menu",
                                                "setting_menu",
                                                "modules",
                                                "user_menu",
                                                "pending_invitations"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "current_user": {
                                                    "$ref": "#/components/schemas/UserResource"
                                                },
                                                "current_user_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                },
                                                "current_user_abilities": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "companies": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "current_company": {
                                                    "type": "null"
                                                },
                                                "current_company_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "current_company_currency": {
                                                    "anyOf": [
                                                        {
                                                            "$ref": "#/components/schemas/Currency"
                                                        },
                                                        {
                                                            "type": "null"
                                                        }
                                                    ]
                                                },
                                                "config": {
                                                    "type": "string"
                                                },
                                                "global_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                },
                                                "main_menu": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "setting_menu": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "modules": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "pending_invitations": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/CompanyInvitationResource"
                                                    }
                                                }
                                            },
                                            "required": [
                                                "current_user",
                                                "current_user_settings",
                                                "current_user_abilities",
                                                "companies",
                                                "current_company",
                                                "current_company_settings",
                                                "current_company_currency",
                                                "config",
                                                "global_settings",
                                                "main_menu",
                                                "setting_menu",
                                                "modules",
                                                "pending_invitations"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "current_user": {
                                                    "$ref": "#/components/schemas/UserResource"
                                                },
                                                "current_user_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                },
                                                "current_user_abilities": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "companies": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/CompanyResource"
                                                    }
                                                },
                                                "current_company": {
                                                    "type": "null"
                                                },
                                                "current_company_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "current_company_currency": {
                                                    "anyOf": [
                                                        {
                                                            "$ref": "#/components/schemas/Currency"
                                                        },
                                                        {
                                                            "type": "null"
                                                        }
                                                    ]
                                                },
                                                "config": {
                                                    "type": "string"
                                                },
                                                "global_settings": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                },
                                                "main_menu": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "title": {
                                                                "type": "string"
                                                            },
                                                            "link": {
                                                                "type": "string"
                                                            },
                                                            "icon": {
                                                                "type": "string"
                                                            },
                                                            "name": {
                                                                "type": "string"
                                                            },
                                                            "group": {
                                                                "type": "string"
                                                            },
                                                            "group_label": {
                                                                "anyOf": [
                                                                    {
                                                                        "type": "string"
                                                                    },
                                                                    {
                                                                        "type": "string",
                                                                        "enum": [
                                                                            ""
                                                                        ]
                                                                    }
                                                                ]
                                                            },
                                                            "priority": {
                                                                "anyOf": [
                                                                    {
                                                                        "type": "string"
                                                                    },
                                                                    {
                                                                        "type": "integer",
                                                                        "enum": [
                                                                            100
                                                                        ]
                                                                    }
                                                                ]
                                                            }
                                                        },
                                                        "required": [
                                                            "title",
                                                            "link",
                                                            "icon",
                                                            "name",
                                                            "group",
                                                            "group_label",
                                                            "priority"
                                                        ]
                                                    }
                                                },
                                                "setting_menu": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "modules": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                },
                                                "admin_mode": {
                                                    "type": "boolean"
                                                },
                                                "pending_invitations": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/CompanyInvitationResource"
                                                    }
                                                }
                                            },
                                            "required": [
                                                "current_user",
                                                "current_user_settings",
                                                "current_user_abilities",
                                                "companies",
                                                "current_company",
                                                "current_company_settings",
                                                "current_company_currency",
                                                "config",
                                                "global_settings",
                                                "main_menu",
                                                "setting_menu",
                                                "modules",
                                                "admin_mode",
                                                "pending_invitations"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/current-company": {
            "get": {
                "operationId": "bootstrap.currentCompany",
                "tags": [
                    "Bootstrap"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`CompanyResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CompanyResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/{company}/customer/bootstrap": {
            "get": {
                "operationId": "customerPortal.bootstrap",
                "summary": "Handle the incoming request",
                "tags": [
                    "Bootstrap"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource"
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "menu": {
                                                    "type": "string"
                                                },
                                                "current_customer_currency": {
                                                    "type": "string"
                                                },
                                                "current_company_currency": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "modules": {
                                                    "type": "array",
                                                    "items": {}
                                                },
                                                "current_company_language": {
                                                    "type": "null"
                                                }
                                            },
                                            "required": [
                                                "menu",
                                                "current_customer_currency",
                                                "current_company_currency",
                                                "modules",
                                                "current_company_language"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/super-admin/companies": {
            "get": {
                "operationId": "companies.index",
                "tags": [
                    "Companies"
                ],
                "parameters": [
                    {
                        "name": "limit",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "default": 10
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `CompanyResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CompanyResource"
                                            }
                                        },
                                        "links": {
                                            "type": "object",
                                            "properties": {
                                                "first": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "prev": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "next": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "first",
                                                "last",
                                                "prev",
                                                "next"
                                            ]
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "from",
                                                "last_page",
                                                "links",
                                                "path",
                                                "per_page",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/super-admin/companies/{company}": {
            "get": {
                "operationId": "companies.show",
                "tags": [
                    "Companies"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`CompanyResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CompanyResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "companies.update",
                "tags": [
                    "Companies"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AdminCompanyUpdateRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`CompanyResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CompanyResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    }
                }
            }
        },
        "/companies": {
            "post": {
                "operationId": "companies.store",
                "tags": [
                    "Companies"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CompaniesRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`CompanyResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CompanyResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "get": {
                "operationId": "companies.userCompanies",
                "tags": [
                    "Companies"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `CompanyResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CompanyResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/companies/delete": {
            "post": {
                "operationId": "companies.destroy",
                "tags": [
                    "Companies"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "required": [
                                                "success"
                                            ]
                                        },
                                        {
                                            "type": "string"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/company": {
            "put": {
                "operationId": "company.updateCompany",
                "tags": [
                    "Company"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CompanyRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`CompanyResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CompanyResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/company/upload-logo": {
            "post": {
                "operationId": "company.uploadCompanyLogo",
                "tags": [
                    "Company"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CompanyLogoRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/company/mail/config": {
            "get": {
                "operationId": "companyMailConfiguration.getDefaultConfig",
                "tags": [
                    "CompanyMailConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "from_name": {
                                            "type": "string"
                                        },
                                        "from_mail": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "from_name",
                                        "from_mail"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/company/mail/company-config": {
            "get": {
                "operationId": "companyMailConfiguration.getMailConfig",
                "tags": [
                    "CompanyMailConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {}
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "companyMailConfiguration.saveMailConfig",
                "tags": [
                    "CompanyMailConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CompanyMailConfigurationRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/company/mail/company-test": {
            "post": {
                "operationId": "companyMailConfiguration.testMailConfig",
                "tags": [
                    "CompanyMailConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "to": {
                                        "type": "string",
                                        "format": "email"
                                    },
                                    "subject": {
                                        "type": "string"
                                    },
                                    "message": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "to",
                                    "subject",
                                    "message"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/company-modules": {
            "get": {
                "operationId": "companyModules.index",
                "tags": [
                    "CompanyModules"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "slug": {
                                                        "type": "string"
                                                    },
                                                    "name": {
                                                        "type": "string"
                                                    },
                                                    "display_name": {
                                                        "type": "string"
                                                    },
                                                    "version": {
                                                        "type": "string"
                                                    },
                                                    "has_settings": {
                                                        "type": "boolean"
                                                    },
                                                    "menu": {
                                                        "type": [
                                                            "object",
                                                            "null"
                                                        ],
                                                        "properties": {
                                                            "": {
                                                                "type": [
                                                                    "object",
                                                                    "null"
                                                                ],
                                                                "properties": {
                                                                    "title": {
                                                                        "type": "string"
                                                                    },
                                                                    "link": {
                                                                        "type": "string"
                                                                    },
                                                                    "icon": {
                                                                        "type": "string"
                                                                    }
                                                                },
                                                                "required": [
                                                                    "title",
                                                                    "link",
                                                                    "icon"
                                                                ]
                                                            },
                                                            "title": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "required": [
                                                            null,
                                                            "title"
                                                        ]
                                                    }
                                                },
                                                "required": [
                                                    "slug",
                                                    "name",
                                                    "display_name",
                                                    "version",
                                                    "has_settings",
                                                    "menu"
                                                ]
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/company/settings": {
            "get": {
                "operationId": "companySettings.show",
                "tags": [
                    "CompanySettings"
                ],
                "parameters": [
                    {
                        "name": "settings[]",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "post": {
                "operationId": "companySettings.update",
                "tags": [
                    "CompanySettings"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/UpdateSettingsRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "required": [
                                                "success"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "type": "string",
                                                    "const": "Cannot update company currency after transactions are created."
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "message"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/company/has-transactions": {
            "get": {
                "operationId": "companySettings.checkTransactions",
                "tags": [
                    "CompanySettings"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "has_transactions": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "has_transactions"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/transfer/ownership/{user}": {
            "post": {
                "operationId": "companySettings.transferOwnership",
                "tags": [
                    "CompanySettings"
                ],
                "parameters": [
                    {
                        "name": "user",
                        "in": "path",
                        "required": true,
                        "description": "The user ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "required": [
                                                "success"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "type": "string",
                                                    "const": "User does not belong to this company."
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "message"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/config": {
            "get": {
                "operationId": "company.config",
                "summary": "Handle the incoming request",
                "tags": [
                    "Config"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "string"
                                                }
                                            ],
                                            "minItems": 1,
                                            "maxItems": 1,
                                            "additionalItems": false
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "exchange_rate_drivers": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "value": {
                                                                "type": "string"
                                                            },
                                                            "label": {},
                                                            "website": {},
                                                            "config_fields": {}
                                                        },
                                                        "required": [
                                                            "value",
                                                            "label",
                                                            "website",
                                                            "config_fields"
                                                        ]
                                                    }
                                                }
                                            },
                                            "required": [
                                                "exchange_rate_drivers"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/countries": {
            "get": {
                "operationId": "domains.contacts.countries_0",
                "summary": "Handle the incoming request",
                "tags": [
                    "Countries"
                ],
                "responses": {
                    "200": {
                        "description": "Array of `CountryResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CountryResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/{company}/customer/countries": {
            "get": {
                "operationId": "domains.contacts.countries_0",
                "summary": "Handle the incoming request",
                "tags": [
                    "Countries"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `CountryResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CountryResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/customers/{customer}/credit-allocations": {
            "post": {
                "operationId": "creditAllocations.store",
                "tags": [
                    "CreditAllocations"
                ],
                "parameters": [
                    {
                        "name": "customer",
                        "in": "path",
                        "required": true,
                        "description": "The customer ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CreditAllocationRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/currencies": {
            "get": {
                "operationId": "money.currencies",
                "tags": [
                    "Currencies"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `CurrencyResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CurrencyResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/custom-fields": {
            "get": {
                "operationId": "custom-fields.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "CustomFields"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `CustomFieldResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CustomFieldResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "custom-fields.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "CustomFields"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/CustomFieldRequest"
                                    },
                                    {
                                        "type": "object",
                                        "properties": {
                                            "default_answer": {
                                                "type": "string"
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`CustomFieldResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CustomFieldResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/custom-fields/{customField}": {
            "get": {
                "operationId": "custom-fields.show",
                "summary": "Display the specified resource",
                "tags": [
                    "CustomFields"
                ],
                "parameters": [
                    {
                        "name": "customField",
                        "in": "path",
                        "required": true,
                        "description": "The custom field ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`CustomFieldResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CustomFieldResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "custom-fields.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "CustomFields"
                ],
                "parameters": [
                    {
                        "name": "customField",
                        "in": "path",
                        "required": true,
                        "description": "The custom field ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/CustomFieldRequest"
                                    },
                                    {
                                        "type": "object",
                                        "properties": {
                                            "default_answer": {
                                                "type": "string"
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`CustomFieldResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CustomFieldResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "custom-fields.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "CustomFields"
                ],
                "parameters": [
                    {
                        "name": "customField",
                        "in": "path",
                        "required": true,
                        "description": "The custom field ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/customers/{customer}/statement": {
            "get": {
                "operationId": "company.customerStatement",
                "tags": [
                    "CustomerStatement"
                ],
                "parameters": [
                    {
                        "name": "customer",
                        "in": "path",
                        "required": true,
                        "description": "The customer ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "type",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "activity",
                                "outstanding"
                            ]
                        }
                    },
                    {
                        "name": "from_date",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "format": "date"
                        }
                    },
                    {
                        "name": "to_date",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "format": "date"
                        }
                    },
                    {
                        "name": "as_of",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ],
                            "format": "date"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ],
                            "minimum": 1,
                            "maximum": 100
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "schema": {
                            "type": [
                                "integer",
                                "null"
                            ],
                            "minimum": 1
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`CustomerStatementResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CustomerStatementResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/customers/{customer}/stats": {
            "get": {
                "operationId": "company.customerStats",
                "tags": [
                    "CustomerStats"
                ],
                "parameters": [
                    {
                        "name": "customer",
                        "in": "path",
                        "required": true,
                        "description": "The customer ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`CustomerResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CustomerResource"
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "chartData": {
                                                    "type": "object",
                                                    "additionalProperties": {}
                                                }
                                            },
                                            "required": [
                                                "chartData"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/customers/delete": {
            "post": {
                "operationId": "customers.delete",
                "summary": "Remove a list of Customers along side all their resources (ie. Estimates, Invoices, Payments and Addresses)",
                "tags": [
                    "Customers"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DeleteCustomersRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/customers": {
            "get": {
                "operationId": "customers.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Customers"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `CustomerResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CustomerResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "customer_total_count": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "customer_total_count"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "customers.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "Customers"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CustomerRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`CustomerResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CustomerResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/customers/{customer}": {
            "get": {
                "operationId": "customers.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Customers"
                ],
                "parameters": [
                    {
                        "name": "customer",
                        "in": "path",
                        "required": true,
                        "description": "The customer ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`CustomerResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CustomerResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "customers.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "Customers"
                ],
                "parameters": [
                    {
                        "name": "customer",
                        "in": "path",
                        "required": true,
                        "description": "The customer ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CustomerRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`CustomerResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CustomerResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/dashboard": {
            "get": {
                "operationId": "company.dashboard",
                "summary": "Handle the incoming request",
                "tags": [
                    "Dashboard"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "total_amount_due": {},
                                        "total_customer_count": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "total_invoice_count": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "total_estimate_count": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "recent_due_invoices": {
                                            "anyOf": [
                                                {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/Invoice"
                                                    }
                                                },
                                                {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                }
                                            ]
                                        },
                                        "recent_estimates": {
                                            "anyOf": [
                                                {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/Estimate"
                                                    }
                                                },
                                                {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    },
                                                    "minItems": 0,
                                                    "maxItems": 0,
                                                    "additionalItems": false
                                                }
                                            ]
                                        },
                                        "chart_data": {
                                            "type": "object",
                                            "properties": {
                                                "months": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                },
                                                "invoice_totals": {
                                                    "type": "array",
                                                    "items": {}
                                                },
                                                "expense_totals": {
                                                    "type": "array",
                                                    "items": {}
                                                },
                                                "receipt_totals": {
                                                    "type": "array",
                                                    "items": {}
                                                },
                                                "net_income_totals": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "string"
                                                    }
                                                }
                                            },
                                            "required": [
                                                "months",
                                                "invoice_totals",
                                                "expense_totals",
                                                "receipt_totals",
                                                "net_income_totals"
                                            ]
                                        },
                                        "total_sales": {},
                                        "total_receipts": {},
                                        "total_expenses": {},
                                        "total_net_income": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "total_amount_due",
                                        "total_customer_count",
                                        "total_invoice_count",
                                        "total_estimate_count",
                                        "recent_due_invoices",
                                        "recent_estimates",
                                        "chart_data",
                                        "total_sales",
                                        "total_receipts",
                                        "total_expenses",
                                        "total_net_income"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/{company}/customer/dashboard": {
            "get": {
                "operationId": "customerPortal.dashboard",
                "summary": "Handle the incoming request",
                "tags": [
                    "Dashboard"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "additionalProperties": {}
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/installation/database/config": {
            "post": {
                "operationId": "databaseConfiguration.saveDatabaseEnvironment",
                "tags": [
                    "DatabaseConfiguration"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DatabaseEnvironmentRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "get": {
                "operationId": "databaseConfiguration.getDatabaseEnvironment",
                "tags": [
                    "DatabaseConfiguration"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "config": {
                                            "type": "object",
                                            "properties": {
                                                "database_connection": {
                                                    "type": "string"
                                                },
                                                "database_host": {
                                                    "type": "string",
                                                    "const": "127.0.0.1"
                                                },
                                                "database_port": {
                                                    "type": "integer",
                                                    "const": 3306
                                                }
                                            },
                                            "required": [
                                                "database_connection",
                                                "database_host",
                                                "database_port"
                                            ]
                                        },
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "config",
                                        "success"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/disks": {
            "get": {
                "operationId": "disks.index",
                "tags": [
                    "Disk"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `FileDiskResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/FileDiskResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "disks.store",
                "tags": [
                    "Disk"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DiskEnvironmentRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/disks/{disk}": {
            "get": {
                "operationId": "disks.show",
                "tags": [
                    "Disk"
                ],
                "parameters": [
                    {
                        "name": "disk",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "token": {
                                            "type": "string"
                                        },
                                        "key": {
                                            "type": "string"
                                        },
                                        "secret": {
                                            "type": "string"
                                        },
                                        "app": {
                                            "type": "string"
                                        },
                                        "root": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "token",
                                        "key",
                                        "secret",
                                        "app",
                                        "root"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "disks.update",
                "tags": [
                    "Disk"
                ],
                "parameters": [
                    {
                        "name": "disk",
                        "in": "path",
                        "required": true,
                        "description": "The disk ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`FileDiskResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object"
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "data": {
                                                    "$ref": "#/components/schemas/FileDiskResource"
                                                }
                                            },
                                            "required": [
                                                "data"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "disks.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "Disk"
                ],
                "parameters": [
                    {
                        "name": "disk",
                        "in": "path",
                        "required": true,
                        "description": "The disk ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/disk/drivers": {
            "get": {
                "operationId": "disk.getDiskDrivers",
                "tags": [
                    "Disk"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "drivers": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string",
                                                            "const": "Local"
                                                        },
                                                        "value": {
                                                            "type": "string",
                                                            "const": "local"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "value"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string",
                                                            "const": "Amazon S3"
                                                        },
                                                        "value": {
                                                            "type": "string",
                                                            "const": "s3"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "value"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string",
                                                            "const": "S3 Compatible Storage"
                                                        },
                                                        "value": {
                                                            "type": "string",
                                                            "const": "s3compat"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "value"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string",
                                                            "const": "Digital Ocean Spaces"
                                                        },
                                                        "value": {
                                                            "type": "string",
                                                            "const": "doSpaces"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "value"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "name": {
                                                            "type": "string",
                                                            "const": "Dropbox"
                                                        },
                                                        "value": {
                                                            "type": "string",
                                                            "const": "dropbox"
                                                        }
                                                    },
                                                    "required": [
                                                        "name",
                                                        "value"
                                                    ]
                                                }
                                            ],
                                            "minItems": 5,
                                            "maxItems": 5,
                                            "additionalItems": false
                                        },
                                        "default": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "string",
                                                    "enum": [
                                                        "local"
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "required": [
                                        "drivers",
                                        "default"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/disk/purposes": {
            "get": {
                "operationId": "disk.getDiskPurposes",
                "tags": [
                    "Disk"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "media_disk_id": {
                                            "type": "string"
                                        },
                                        "pdf_disk_id": {
                                            "type": "string"
                                        },
                                        "backup_disk_id": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "media_disk_id",
                                        "pdf_disk_id",
                                        "backup_disk_id"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "disk.updateDiskPurposes",
                "tags": [
                    "Disk"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "media_disk_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "pdf_disk_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    },
                                    "backup_disk_id": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ]
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/estimates/templates": {
            "get": {
                "operationId": "company.estimateTemplates",
                "summary": "Handle the incoming request",
                "tags": [
                    "EstimateTemplates"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "estimateTemplates": {
                                            "type": "array",
                                            "items": {}
                                        }
                                    },
                                    "required": [
                                        "estimateTemplates"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/estimates/{estimate}/send/preview": {
            "get": {
                "operationId": "estimates.sendPreview",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "estimate",
                        "in": "path",
                        "required": true,
                        "description": "The estimate ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "subject",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "body",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cc",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "bcc",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/estimates/{estimate}/send": {
            "post": {
                "operationId": "estimates.send",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "estimate",
                        "in": "path",
                        "required": true,
                        "description": "The estimate ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SendEstimatesRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "type": {
                                            "type": "string",
                                            "const": "send"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "type"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/estimates/{estimate}/clone": {
            "post": {
                "operationId": "estimates.clone",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "estimate",
                        "in": "path",
                        "required": true,
                        "description": "The estimate ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`EstimateResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/EstimateResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/estimates/{estimate}/status": {
            "post": {
                "operationId": "estimates.changeStatus",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "estimate",
                        "in": "path",
                        "required": true,
                        "description": "The estimate ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/estimates/{estimate}/convert-to-invoice": {
            "post": {
                "operationId": "estimates.convertToInvoice",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "estimate",
                        "in": "path",
                        "required": true,
                        "description": "The estimate ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`InvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/InvoiceResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/estimates/delete": {
            "post": {
                "operationId": "estimates.delete",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DeleteEstimatesRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/estimates": {
            "get": {
                "operationId": "estimates.index",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `EstimateResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/EstimateResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "estimate_total_count": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "estimate_total_count"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "estimates.store",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/EstimatesRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`EstimateResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/EstimateResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/estimates/{estimate}": {
            "get": {
                "operationId": "estimates.show",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "estimate",
                        "in": "path",
                        "required": true,
                        "description": "The estimate ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`EstimateResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/EstimateResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "estimates.update",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "estimate",
                        "in": "path",
                        "required": true,
                        "description": "The estimate ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/EstimatesRequest"
                                    },
                                    {
                                        "type": "object",
                                        "properties": {
                                            "items": {
                                                "type": "string"
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`EstimateResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/EstimateResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/{company}/customer/estimates": {
            "get": {
                "operationId": "domains.sales.customerPortal.estimates.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `App.Domains.Sales.Http.Resources.CustomerPortal.EstimateResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/App.Domains.Sales.Http.Resources.CustomerPortal.EstimateResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "estimateTotalCount": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "estimateTotalCount"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/{company}/customer/estimates/{id}": {
            "get": {
                "operationId": "domains.sales.customerPortal.estimates.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Estimates"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company slug",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/currencies/used": {
            "get": {
                "operationId": "exchangeRateProvider.usedCurrenciesWithoutRate",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "currencies": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/Currency"
                                            }
                                        }
                                    },
                                    "required": [
                                        "currencies"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/currencies/bulk-update-exchange-rate": {
            "post": {
                "operationId": "exchangeRateProvider.bulkUpdate",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/BulkExchangeRateRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "error": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "required": [
                                                "error"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "required": [
                                                "success"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/currencies/{currency}/exchange-rate": {
            "get": {
                "operationId": "exchangeRateProvider.getRate",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "currency",
                        "in": "path",
                        "required": true,
                        "description": "The currency ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "error": {
                                                    "type": "string",
                                                    "const": "no_exchange_rate_available"
                                                }
                                            },
                                            "required": [
                                                "error"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "exchangeRate": {
                                                    "type": "array",
                                                    "prefixItems": [
                                                        {
                                                            "type": "array",
                                                            "items": {}
                                                        }
                                                    ],
                                                    "minItems": 1,
                                                    "maxItems": 1,
                                                    "additionalItems": false
                                                }
                                            },
                                            "required": [
                                                "exchangeRate"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "exchangeRate": {
                                                    "type": "array",
                                                    "items": {}
                                                }
                                            },
                                            "required": [
                                                "exchangeRate"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/currencies/{currency}/active-provider": {
            "get": {
                "operationId": "exchangeRateProvider.activeProvider",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "currency",
                        "in": "path",
                        "required": true,
                        "description": "The currency ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "error": {
                                                    "type": "string",
                                                    "const": "no_active_provider"
                                                }
                                            },
                                            "required": [
                                                "error"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "type": "string",
                                                    "const": "provider_active"
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "message"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/used-currencies": {
            "get": {
                "operationId": "exchangeRateProvider.usedCurrencies",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "allUsedCurrencies": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            }
                                        },
                                        "activeUsedCurrencies": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            }
                                        }
                                    },
                                    "required": [
                                        "allUsedCurrencies",
                                        "activeUsedCurrencies"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/supported-currencies": {
            "get": {
                "operationId": "exchangeRateProvider.supportedCurrencies",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "string"
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "supportedCurrencies": {
                                                    "type": "array",
                                                    "items": {}
                                                }
                                            },
                                            "required": [
                                                "supportedCurrencies"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/exchange-rate-providers": {
            "get": {
                "operationId": "exchange-rate-providers.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `ExchangeRateProviderResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/ExchangeRateProviderResource"
                                            }
                                        },
                                        "links": {
                                            "type": "object",
                                            "properties": {
                                                "first": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "prev": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "next": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "first",
                                                "last",
                                                "prev",
                                                "next"
                                            ]
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "from",
                                                "last_page",
                                                "links",
                                                "path",
                                                "per_page",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "exchange-rate-providers.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ExchangeRateProviderRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/exchange-rate-providers/{exchangeRateProvider}": {
            "get": {
                "operationId": "exchange-rate-providers.show",
                "summary": "Display the specified resource",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "exchangeRateProvider",
                        "in": "path",
                        "required": true,
                        "description": "The exchange rate provider ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`ExchangeRateProviderResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ExchangeRateProviderResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "exchange-rate-providers.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "exchangeRateProvider",
                        "in": "path",
                        "required": true,
                        "description": "The exchange rate provider ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ExchangeRateProviderRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "exchange-rate-providers.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "ExchangeRateProvider"
                ],
                "parameters": [
                    {
                        "name": "exchangeRateProvider",
                        "in": "path",
                        "required": true,
                        "description": "The exchange rate provider ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/categories": {
            "get": {
                "operationId": "categories.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "ExpenseCategories"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `ExpenseCategoryResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/ExpenseCategoryResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "categories.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "ExpenseCategories"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ExpenseCategoryRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`ExpenseCategoryResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ExpenseCategoryResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/categories/{category}": {
            "get": {
                "operationId": "categories.show",
                "summary": "Display the specified resource",
                "tags": [
                    "ExpenseCategories"
                ],
                "parameters": [
                    {
                        "name": "category",
                        "in": "path",
                        "required": true,
                        "description": "The category ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`ExpenseCategoryResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ExpenseCategoryResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "categories.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "ExpenseCategories"
                ],
                "parameters": [
                    {
                        "name": "category",
                        "in": "path",
                        "required": true,
                        "description": "The category ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ExpenseCategoryRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`ExpenseCategoryResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ExpenseCategoryResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "categories.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "ExpenseCategories"
                ],
                "parameters": [
                    {
                        "name": "category",
                        "in": "path",
                        "required": true,
                        "description": "The category ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/expenses/{expense}/show/receipt": {
            "get": {
                "operationId": "expenses.showReceipt",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "expense",
                        "in": "path",
                        "required": true,
                        "description": "The expense ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "string"
                                }
                            },
                            "application/octet-stream": {
                                "schema": {
                                    "type": "string",
                                    "format": "binary"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/expenses/{expense}/upload/receipts": {
            "post": {
                "operationId": "expenses.uploadReceipt",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "expense",
                        "in": "path",
                        "required": true,
                        "description": "The expense ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/UploadExpenseReceiptRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "string",
                                            "const": "Expense receipts uploaded successfully"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/expenses/delete": {
            "post": {
                "operationId": "expenses.delete",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DeleteExpensesRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/expenses": {
            "get": {
                "operationId": "expenses.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `ExpenseResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/ExpenseResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "expense_total_count": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "expense_total_count"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "expenses.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/ExpenseRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`ExpenseResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ExpenseResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/expenses/{expense}": {
            "get": {
                "operationId": "expenses.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "expense",
                        "in": "path",
                        "required": true,
                        "description": "The expense ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`ExpenseResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ExpenseResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "expenses.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "expense",
                        "in": "path",
                        "required": true,
                        "description": "The expense ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/ExpenseRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`ExpenseResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ExpenseResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/{company}/customer/expenses": {
            "get": {
                "operationId": "domains.purchases.customerPortal.expenses.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `App.Domains.Purchases.Http.Resources.CustomerPortal.ExpenseResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/App.Domains.Purchases.Http.Resources.CustomerPortal.ExpenseResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "expenseTotalCount": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "expenseTotalCount"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/{company}/customer/expenses/{id}": {
            "get": {
                "operationId": "domains.purchases.customerPortal.expenses.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Expenses"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company slug",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/installation/permissions": {
            "get": {
                "operationId": "filePermissions.permissions",
                "summary": "Display the permissions check page",
                "tags": [
                    "FilePermissions"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "permissions": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "permissions"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/installation/finish": {
            "post": {
                "operationId": "installation.finish",
                "summary": "Handle the incoming request",
                "tags": [
                    "Finish"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/fonts/status": {
            "get": {
                "operationId": "font.status",
                "tags": [
                    "Font"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "packages": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "key": {
                                                        "type": "string"
                                                    },
                                                    "name": {
                                                        "type": "string"
                                                    },
                                                    "family": {
                                                        "type": "string"
                                                    },
                                                    "locales": {
                                                        "type": "string"
                                                    },
                                                    "size": {
                                                        "type": "string"
                                                    },
                                                    "installed": {
                                                        "type": "boolean"
                                                    },
                                                    "bundled": {
                                                        "type": "boolean"
                                                    }
                                                },
                                                "required": [
                                                    "key",
                                                    "name",
                                                    "family",
                                                    "locales",
                                                    "size",
                                                    "installed",
                                                    "bundled"
                                                ]
                                            }
                                        }
                                    },
                                    "required": [
                                        "packages"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/fonts/{package}/install": {
            "post": {
                "operationId": "font.install",
                "tags": [
                    "Font"
                ],
                "parameters": [
                    {
                        "name": "package",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "500": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "error"
                                    ]
                                }
                            }
                        }
                    },
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "installed": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "installed"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "type": "string",
                                                    "const": "Already installed"
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "message"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "Unknown font package"
                                        }
                                    },
                                    "required": [
                                        "error"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/auth/password/email": {
            "post": {
                "operationId": "domains.accounts.auth.forgotPassword.sendResetLinkEmail",
                "summary": "Send a reset link to the given user",
                "tags": [
                    "ForgotPassword"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "const": "Password reset email sent."
                                        },
                                        "data": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "message",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "Email could not be sent to this email address."
                                        }
                                    },
                                    "required": [
                                        "error"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/{company}/customer/auth/password/email": {
            "post": {
                "operationId": "domains.contacts.customerPortal.auth.forgotPassword.sendResetLinkEmail",
                "summary": "Send a reset link to the given user",
                "tags": [
                    "ForgotPassword"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "message": {
                                                    "type": "string",
                                                    "const": "Password reset email sent."
                                                },
                                                "data": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "message",
                                                "data"
                                            ]
                                        },
                                        {
                                            "type": "object"
                                        }
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/timezones": {
            "get": {
                "operationId": "formats.timezones",
                "tags": [
                    "Formats"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "time_zones": {
                                            "type": "array",
                                            "prefixItems": [
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Midway"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-11:00) Midway"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Niue"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-11:00) Niue"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Pago_Pago"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-11:00) Pago Pago"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Adak"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-10:00) Adak"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Honolulu"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-10:00) Honolulu"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Johnston"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-10:00) Johnston"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Rarotonga"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-10:00) Rarotonga"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Tahiti"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-10:00) Tahiti"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Marquesas"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-09:30) Marquesas"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Anchorage"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-09:00) Anchorage"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Gambier"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-09:00) Gambier"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Juneau"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-09:00) Juneau"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Nome"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-09:00) Nome"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Sitka"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-09:00) Sitka"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Yakutat"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-09:00) Yakutat"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Dawson"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-08:00) Dawson"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Los_Angeles"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-08:00) Los Angeles"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Metlakatla"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-08:00) Metlakatla"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Pitcairn"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-08:00) Pitcairn"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Santa_Isabel"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-08:00) Santa Isabel"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Tijuana"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-08:00) Tijuana"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Vancouver"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-08:00) Vancouver"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Whitehorse"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-08:00) Whitehorse"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Boise"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Boise"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Cambridge_Bay"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Cambridge Bay"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Chihuahua"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Chihuahua"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Creston"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Creston"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Dawson_Creek"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Dawson Creek"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Denver"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Denver"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Edmonton"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Edmonton"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Hermosillo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Hermosillo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Inuvik"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Inuvik"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Mazatlan"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Mazatlan"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Ojinaga"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Ojinaga"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Phoenix"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Phoenix"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Shiprock"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Shiprock"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Yellowknife"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-07:00) Yellowknife"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Bahia_Banderas"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Bahia Banderas"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Belize"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Belize"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/North_Dakota/Beulah"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Beulah"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Cancun"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Cancun"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/North_Dakota/Center"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Center"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Chicago"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Chicago"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Costa_Rica"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Costa Rica"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Easter"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Easter"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/El_Salvador"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) El Salvador"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Galapagos"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Galapagos"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Guatemala"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Guatemala"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Indiana/Knox"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Knox"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Managua"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Managua"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Matamoros"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Matamoros"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Menominee"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Menominee"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Merida"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Merida"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Mexico_City"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Mexico City"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Monterrey"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Monterrey"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/North_Dakota/New_Salem"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) New Salem"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Rainy_River"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Rainy River"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Rankin_Inlet"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Rankin Inlet"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Regina"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Regina"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Resolute"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Resolute"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Swift_Current"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Swift Current"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Tegucigalpa"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Tegucigalpa"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Indiana/Tell_City"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Tell City"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Winnipeg"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-06:00) Winnipeg"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Atikokan"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Atikokan"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Bogota"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Bogota"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Cayman"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Cayman"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Detroit"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Detroit"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Grand_Turk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Grand Turk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Guayaquil"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Guayaquil"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Havana"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Havana"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Indiana/Indianapolis"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Indianapolis"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Iqaluit"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Iqaluit"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Jamaica"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Jamaica"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Lima"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Lima"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Kentucky/Louisville"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Louisville"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Indiana/Marengo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Marengo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Kentucky/Monticello"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Monticello"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Montreal"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Montreal"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Nassau"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Nassau"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/New_York"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) New York"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Nipigon"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Nipigon"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Panama"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Panama"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Pangnirtung"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Pangnirtung"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Indiana/Petersburg"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Petersburg"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Port-au-Prince"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Port-au-Prince"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Thunder_Bay"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Thunder Bay"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Toronto"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Toronto"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Indiana/Vevay"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Vevay"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Indiana/Vincennes"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Vincennes"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Indiana/Winamac"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-05:00) Winamac"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Caracas"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:30) Caracas"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Anguilla"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Anguilla"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Antigua"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Antigua"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Aruba"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Aruba"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Asuncion"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Asuncion"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Barbados"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Barbados"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/Bermuda"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Bermuda"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Blanc-Sablon"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Blanc-Sablon"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Boa_Vista"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Boa Vista"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Campo_Grande"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Campo Grande"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Cuiaba"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Cuiaba"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Curacao"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Curacao"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Dominica"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Dominica"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Eirunepe"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Eirunepe"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Glace_Bay"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Glace Bay"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Goose_Bay"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Goose Bay"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Grenada"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Grenada"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Guadeloupe"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Guadeloupe"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Guyana"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Guyana"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Halifax"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Halifax"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Kralendijk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Kralendijk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/La_Paz"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) La Paz"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Lower_Princes"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Lower Princes"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Manaus"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Manaus"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Marigot"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Marigot"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Martinique"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Martinique"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Moncton"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Moncton"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Montserrat"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Montserrat"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/Palmer"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Palmer"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Port_of_Spain"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Port of Spain"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Porto_Velho"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Porto Velho"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Puerto_Rico"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Puerto Rico"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Rio_Branco"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Rio Branco"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Santiago"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Santiago"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Santo_Domingo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Santo Domingo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/St_Barthelemy"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) St. Barthelemy"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/St_Kitts"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) St. Kitts"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/St_Lucia"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) St. Lucia"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/St_Thomas"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) St. Thomas"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/St_Vincent"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) St. Vincent"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Thule"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Thule"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Tortola"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-04:00) Tortola"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/St_Johns"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:30) St. Johns"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Araguaina"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Araguaina"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Bahia"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Bahia"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Belem"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Belem"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Buenos_Aires"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Buenos Aires"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Catamarca"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Catamarca"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Cayenne"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Cayenne"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Cordoba"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Cordoba"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Fortaleza"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Fortaleza"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Godthab"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Godthab"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Jujuy"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Jujuy"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/La_Rioja"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) La Rioja"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Maceio"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Maceio"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Mendoza"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Mendoza"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Miquelon"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Miquelon"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Montevideo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Montevideo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Paramaribo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Paramaribo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Recife"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Recife"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Rio_Gallegos"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Rio Gallegos"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/Rothera"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Rothera"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Salta"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Salta"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/San_Juan"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) San Juan"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/San_Luis"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) San Luis"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Santarem"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Santarem"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Sao_Paulo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Sao Paulo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/Stanley"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Stanley"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Tucuman"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Tucuman"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Argentina/Ushuaia"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-03:00) Ushuaia"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Noronha"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-02:00) Noronha"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/South_Georgia"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-02:00) South Georgia"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/Azores"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-01:00) Azores"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/Cape_Verde"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-01:00) Cape Verde"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Scoresbysund"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC-01:00) Scoresbysund"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Abidjan"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Abidjan"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Accra"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Accra"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Bamako"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Bamako"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Banjul"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Banjul"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Bissau"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Bissau"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/Canary"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Canary"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Casablanca"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Casablanca"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Conakry"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Conakry"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Dakar"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Dakar"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "America/Danmarkshavn"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Danmarkshavn"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Dublin"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Dublin"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/El_Aaiun"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) El Aaiun"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/Faroe"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Faroe"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Freetown"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Freetown"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Guernsey"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Guernsey"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Isle_of_Man"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Isle of Man"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Jersey"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Jersey"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Lisbon"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Lisbon"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Lome"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Lome"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/London"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) London"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/Madeira"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Madeira"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Monrovia"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Monrovia"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Nouakchott"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Nouakchott"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Ouagadougou"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Ouagadougou"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/Reykjavik"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Reykjavik"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Sao_Tome"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) Sao Tome"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Atlantic/St_Helena"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) St. Helena"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "UTC"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+00:00) UTC"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Algiers"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Algiers"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Amsterdam"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Amsterdam"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Andorra"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Andorra"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Bangui"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Bangui"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Belgrade"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Belgrade"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Berlin"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Berlin"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Bratislava"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Bratislava"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Brazzaville"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Brazzaville"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Brussels"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Brussels"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Budapest"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Budapest"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Busingen"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Busingen"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Ceuta"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Ceuta"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Copenhagen"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Copenhagen"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Douala"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Douala"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Gibraltar"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Gibraltar"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Kinshasa"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Kinshasa"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Lagos"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Lagos"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Libreville"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Libreville"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Ljubljana"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Ljubljana"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Arctic/Longyearbyen"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Longyearbyen"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Luanda"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Luanda"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Luxembourg"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Luxembourg"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Madrid"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Madrid"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Malabo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Malabo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Malta"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Malta"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Monaco"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Monaco"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Ndjamena"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Ndjamena"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Niamey"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Niamey"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Oslo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Oslo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Paris"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Paris"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Podgorica"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Podgorica"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Porto-Novo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Porto-Novo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Prague"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Prague"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Rome"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Rome"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/San_Marino"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) San Marino"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Sarajevo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Sarajevo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Skopje"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Skopje"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Stockholm"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Stockholm"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Tirane"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Tirane"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Tripoli"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Tripoli"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Tunis"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Tunis"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Vaduz"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Vaduz"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Vatican"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Vatican"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Vienna"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Vienna"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Warsaw"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Warsaw"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Windhoek"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Windhoek"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Zagreb"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Zagreb"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Zurich"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+01:00) Zurich"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Athens"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Athens"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Beirut"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Beirut"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Blantyre"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Blantyre"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Bucharest"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Bucharest"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Bujumbura"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Bujumbura"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Cairo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Cairo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Chisinau"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Chisinau"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Damascus"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Damascus"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Gaborone"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Gaborone"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Gaza"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Gaza"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Harare"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Harare"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Hebron"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Hebron"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Helsinki"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Helsinki"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Istanbul"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Istanbul"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Jerusalem"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Jerusalem"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Johannesburg"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Johannesburg"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Kiev"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Kiev"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Kigali"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Kigali"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Lubumbashi"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Lubumbashi"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Lusaka"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Lusaka"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Maputo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Maputo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Mariehamn"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Mariehamn"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Maseru"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Maseru"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Mbabane"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Mbabane"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Nicosia"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Nicosia"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Riga"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Riga"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Simferopol"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Simferopol"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Sofia"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Sofia"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Tallinn"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Tallinn"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Uzhgorod"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Uzhgorod"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Vilnius"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Vilnius"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Zaporozhye"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+02:00) Zaporozhye"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Addis_Ababa"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Addis Ababa"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Aden"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Aden"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Amman"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Amman"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Antananarivo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Antananarivo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Asmara"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Asmara"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Baghdad"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Baghdad"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Bahrain"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Bahrain"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Comoro"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Comoro"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Dar_es_Salaam"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Dar es Salaam"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Djibouti"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Djibouti"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Juba"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Juba"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Kaliningrad"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Kaliningrad"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Kampala"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Kampala"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Khartoum"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Khartoum"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Kuwait"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Kuwait"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Mayotte"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Mayotte"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Minsk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Minsk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Mogadishu"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Mogadishu"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Africa/Nairobi"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Nairobi"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Qatar"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Qatar"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Riyadh"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Riyadh"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/Syowa"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:00) Syowa"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Tehran"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+03:30) Tehran"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Baku"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Baku"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Dubai"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Dubai"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Mahe"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Mahe"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Mauritius"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Mauritius"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Moscow"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Moscow"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Muscat"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Muscat"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Reunion"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Reunion"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Samara"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Samara"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Tbilisi"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Tbilisi"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Europe/Volgograd"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Volgograd"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Yerevan"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:00) Yerevan"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Kabul"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+04:30) Kabul"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Aqtau"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Aqtau"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Aqtobe"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Aqtobe"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Ashgabat"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Ashgabat"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Dushanbe"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Dushanbe"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Karachi"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Karachi"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Kerguelen"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Kerguelen"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Maldives"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Maldives"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/Mawson"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Mawson"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Oral"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Oral"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Samarkand"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Samarkand"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Tashkent"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:00) Tashkent"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Colombo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:30) Colombo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Kolkata"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:30) Kolkata"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Kathmandu"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+05:45) Kathmandu"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Almaty"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:00) Almaty"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Bishkek"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:00) Bishkek"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Chagos"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:00) Chagos"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Dhaka"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:00) Dhaka"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Qyzylorda"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:00) Qyzylorda"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Thimphu"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:00) Thimphu"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/Vostok"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:00) Vostok"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Yekaterinburg"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:00) Yekaterinburg"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Cocos"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:30) Cocos"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Rangoon"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+06:30) Rangoon"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Bangkok"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Bangkok"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Indian/Christmas"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Christmas"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/Davis"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Davis"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Ho_Chi_Minh"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Ho Chi Minh"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Hovd"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Hovd"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Jakarta"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Jakarta"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Novokuznetsk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Novokuznetsk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Novosibirsk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Novosibirsk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Omsk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Omsk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Phnom_Penh"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Phnom Penh"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Pontianak"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Pontianak"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Vientiane"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+07:00) Vientiane"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Brunei"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Brunei"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/Casey"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Casey"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Choibalsan"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Choibalsan"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Chongqing"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Chongqing"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Harbin"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Harbin"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Hong_Kong"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Hong Kong"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Kashgar"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Kashgar"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Krasnoyarsk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Krasnoyarsk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Kuala_Lumpur"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Kuala Lumpur"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Kuching"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Kuching"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Macau"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Macau"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Makassar"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Makassar"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Manila"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Manila"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Perth"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Perth"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Shanghai"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Shanghai"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Singapore"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Singapore"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Taipei"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Taipei"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Ulaanbaatar"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Ulaanbaatar"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Urumqi"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:00) Urumqi"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Eucla"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+08:45) Eucla"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Dili"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:00) Dili"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Irkutsk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:00) Irkutsk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Jayapura"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:00) Jayapura"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Palau"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:00) Palau"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Pyongyang"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:00) Pyongyang"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Seoul"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:00) Seoul"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Tokyo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:00) Tokyo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Adelaide"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:30) Adelaide"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Broken_Hill"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:30) Broken Hill"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Darwin"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+09:30) Darwin"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Brisbane"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Brisbane"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Chuuk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Chuuk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Currie"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Currie"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/DumontDUrville"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) DumontDUrville"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Guam"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Guam"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Hobart"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Hobart"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Khandyga"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Khandyga"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Lindeman"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Lindeman"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Melbourne"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Melbourne"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Port_Moresby"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Port Moresby"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Saipan"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Saipan"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Sydney"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Sydney"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Yakutsk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:00) Yakutsk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Australia/Lord_Howe"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+10:30) Lord Howe"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Efate"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Efate"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Guadalcanal"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Guadalcanal"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Kosrae"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Kosrae"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/Macquarie"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Macquarie"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Noumea"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Noumea"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Pohnpei"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Pohnpei"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Sakhalin"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Sakhalin"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Ust-Nera"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Ust-Nera"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Vladivostok"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:00) Vladivostok"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Norfolk"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+11:30) Norfolk"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Anadyr"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Anadyr"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Auckland"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Auckland"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Fiji"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Fiji"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Funafuti"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Funafuti"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Kamchatka"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Kamchatka"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Kwajalein"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Kwajalein"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Asia/Magadan"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Magadan"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Majuro"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Majuro"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/McMurdo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) McMurdo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Nauru"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Nauru"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Antarctica/South_Pole"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) South Pole"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Tarawa"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Tarawa"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Wake"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Wake"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Wallis"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:00) Wallis"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Chatham"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+12:45) Chatham"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Apia"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+13:00) Apia"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Enderbury"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+13:00) Enderbury"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Fakaofo"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+13:00) Fakaofo"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Tongatapu"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+13:00) Tongatapu"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "value": {
                                                            "type": "string",
                                                            "const": "Pacific/Kiritimati"
                                                        },
                                                        "key": {
                                                            "type": "string",
                                                            "const": "(UTC+14:00) Kiritimati"
                                                        }
                                                    },
                                                    "required": [
                                                        "value",
                                                        "key"
                                                    ]
                                                }
                                            ],
                                            "minItems": 419,
                                            "maxItems": 419,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "time_zones"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/date/formats": {
            "get": {
                "operationId": "formats.dateFormats",
                "tags": [
                    "Formats"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "date_formats": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "display_date": {
                                                        "type": "string"
                                                    },
                                                    "carbon_format_value": {
                                                        "type": "string"
                                                    },
                                                    "moment_format_value": {
                                                        "type": "string"
                                                    }
                                                },
                                                "required": [
                                                    "display_date",
                                                    "carbon_format_value",
                                                    "moment_format_value"
                                                ]
                                            }
                                        }
                                    },
                                    "required": [
                                        "date_formats"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/time/formats": {
            "get": {
                "operationId": "formats.timeFormats",
                "tags": [
                    "Formats"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "time_formats": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "display_time": {
                                                        "type": "string"
                                                    },
                                                    "carbon_format_value": {
                                                        "type": "string"
                                                    },
                                                    "moment_format_value": {
                                                        "type": "string"
                                                    }
                                                },
                                                "required": [
                                                    "display_time",
                                                    "carbon_format_value",
                                                    "moment_format_value"
                                                ]
                                            }
                                        }
                                    },
                                    "required": [
                                        "time_formats"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/company-invitations": {
            "get": {
                "operationId": "company-invitations.index",
                "tags": [
                    "Invitation"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "invitations": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CompanyInvitationResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "invitations"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "company-invitations.store",
                "tags": [
                    "Invitation"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "email": {
                                        "type": "string",
                                        "format": "email"
                                    },
                                    "role_id": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "email",
                                    "role_id"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "invitation": {
                                            "$ref": "#/components/schemas/CompanyInvitationResource"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "invitation"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/company-invitations/{companyInvitation}": {
            "delete": {
                "operationId": "company-invitations.destroy",
                "tags": [
                    "Invitation"
                ],
                "parameters": [
                    {
                        "name": "companyInvitation",
                        "in": "path",
                        "required": true,
                        "description": "The company invitation ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "type": "string",
                                            "const": "Only pending invitations can be cancelled."
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/invitations/{token}/details": {
            "get": {
                "operationId": "invitationRegistration.details",
                "summary": "Get invitation details by token (public endpoint for registration page)",
                "tags": [
                    "InvitationRegistration"
                ],
                "parameters": [
                    {
                        "name": "token",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "email": {
                                            "type": "string"
                                        },
                                        "company_name": {
                                            "type": "string"
                                        },
                                        "role_name": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "email",
                                        "company_name",
                                        "role_name"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "Invitation not found or expired."
                                        }
                                    },
                                    "required": [
                                        "error"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/auth/register-with-invitation": {
            "post": {
                "operationId": "invitationRegistration.register",
                "summary": "Register a new user and auto-accept the invitation",
                "tags": [
                    "InvitationRegistration"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "maxLength": 255
                                    },
                                    "password": {
                                        "type": "string",
                                        "minLength": 8
                                    },
                                    "invitation_token": {
                                        "type": "string"
                                    },
                                    "password_confirmation": {
                                        "type": "string",
                                        "minLength": 8
                                    }
                                },
                                "required": [
                                    "name",
                                    "email",
                                    "password",
                                    "invitation_token",
                                    "password_confirmation"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "type": {
                                            "type": "string",
                                            "const": "Bearer"
                                        },
                                        "token": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "type",
                                        "token"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/invitations/pending": {
            "get": {
                "operationId": "invitationResponse.pending",
                "summary": "Get pending invitations for the authenticated user",
                "tags": [
                    "InvitationResponse"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "invitations": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/CompanyInvitationResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "invitations"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/invitations/{invitation}/accept": {
            "post": {
                "operationId": "invitationResponse.accept",
                "summary": "Accept a company invitation",
                "tags": [
                    "InvitationResponse"
                ],
                "parameters": [
                    {
                        "name": "invitation",
                        "in": "path",
                        "required": true,
                        "description": "The invitation token",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/invitations/{invitation}/decline": {
            "post": {
                "operationId": "invitationResponse.decline",
                "summary": "Decline a company invitation",
                "tags": [
                    "InvitationResponse"
                ],
                "parameters": [
                    {
                        "name": "invitation",
                        "in": "path",
                        "required": true,
                        "description": "The invitation token",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/invoices/templates": {
            "get": {
                "operationId": "company.invoiceTemplates",
                "summary": "Handle the incoming request",
                "tags": [
                    "InvoiceTemplates"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "invoiceTemplates": {
                                            "type": "array",
                                            "items": {}
                                        }
                                    },
                                    "required": [
                                        "invoiceTemplates"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/invoices/{invoice}/send/preview": {
            "get": {
                "operationId": "invoices.sendPreview",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "invoice",
                        "in": "path",
                        "required": true,
                        "description": "The invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "body",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "subject",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "from",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cc",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "bcc",
                        "in": "query",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/invoices/{invoice}/send": {
            "post": {
                "operationId": "invoices.send",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "invoice",
                        "in": "path",
                        "required": true,
                        "description": "The invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SendInvoiceRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/invoices/{invoice}/clone": {
            "post": {
                "operationId": "invoices.clone",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "invoice",
                        "in": "path",
                        "required": true,
                        "description": "The invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`InvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/InvoiceResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/invoices/{invoice}/convert-to-estimate": {
            "post": {
                "operationId": "invoices.convertToEstimate",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "invoice",
                        "in": "path",
                        "required": true,
                        "description": "The invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`EstimateResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/EstimateResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/invoices/{invoice}/credit-note": {
            "post": {
                "operationId": "invoices.createCreditNote",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "invoice",
                        "in": "path",
                        "required": true,
                        "description": "The invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CreateCreditNoteRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "`CreditNoteResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/CreditNoteResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/invoices/{invoice}/status": {
            "post": {
                "operationId": "invoices.changeStatus",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "invoice",
                        "in": "path",
                        "required": true,
                        "description": "The invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ChangeInvoiceStatusRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/invoices/delete": {
            "post": {
                "operationId": "invoices.delete",
                "summary": "delete the specified resources in storage",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DeleteInvoiceRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/invoices": {
            "get": {
                "operationId": "invoices.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "limit",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "default": 10
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `InvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/InvoiceResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "invoice_total_count": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "invoice_total_count"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "invoices.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/InvoicesRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`InvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/InvoiceResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/invoices/{invoice}": {
            "get": {
                "operationId": "invoices.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "invoice",
                        "in": "path",
                        "required": true,
                        "description": "The invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "invoices.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "invoice",
                        "in": "path",
                        "required": true,
                        "description": "The invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/InvoicesRequest"
                                    },
                                    {
                                        "type": "object",
                                        "properties": {
                                            "items": {
                                                "type": "string"
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`InvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/InvoiceResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/{company}/customer/invoices": {
            "get": {
                "operationId": "domains.sales.customerPortal.invoices.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "invoiceTotalCount": {
                                                    "type": "integer",
                                                    "description": "Issued invoices only: a credit note is a reversal document,\nnot another invoice the customer received.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "invoiceTotalCount"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/{company}/customer/invoices/{id}": {
            "get": {
                "operationId": "domains.sales.customerPortal.invoices.show",
                "tags": [
                    "Invoices"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company slug",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/items/delete": {
            "post": {
                "operationId": "items.delete",
                "summary": "Delete a list of existing Items",
                "tags": [
                    "Items"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DeleteItemsRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/items": {
            "get": {
                "operationId": "items.index",
                "summary": "Retrieve a list of existing Items",
                "tags": [
                    "Items"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `ItemResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/ItemResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "tax_types": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/TaxType"
                                                    }
                                                },
                                                "item_total_count": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "tax_types",
                                                "item_total_count"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "items.store",
                "summary": "Create Item",
                "tags": [
                    "Items"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ItemsRequest"
                                    },
                                    {
                                        "type": "object",
                                        "properties": {
                                            "taxes": {
                                                "type": "string"
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`ItemResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ItemResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/items/{item}": {
            "get": {
                "operationId": "items.show",
                "summary": "get an existing Item",
                "tags": [
                    "Items"
                ],
                "parameters": [
                    {
                        "name": "item",
                        "in": "path",
                        "required": true,
                        "description": "The item ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`ItemResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ItemResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "items.update",
                "summary": "Update an existing Item",
                "tags": [
                    "Items"
                ],
                "parameters": [
                    {
                        "name": "item",
                        "in": "path",
                        "required": true,
                        "description": "The item ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "allOf": [
                                    {
                                        "$ref": "#/components/schemas/ItemsRequest"
                                    },
                                    {
                                        "type": "object",
                                        "properties": {
                                            "taxes": {
                                                "type": "string"
                                            }
                                        }
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`ItemResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ItemResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/installation/languages": {
            "get": {
                "operationId": "languages.languages",
                "summary": "Display the languages page",
                "tags": [
                    "Languages"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "languages": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "languages"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/installation/login": {
            "post": {
                "operationId": "installation.login",
                "tags": [
                    "Login"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "type": {
                                            "type": "string",
                                            "const": "Bearer"
                                        },
                                        "token": {
                                            "type": "string"
                                        },
                                        "user": {
                                            "anyOf": [
                                                {
                                                    "$ref": "#/components/schemas/User"
                                                },
                                                {
                                                    "type": "null"
                                                }
                                            ]
                                        },
                                        "company": {
                                            "allOf": [
                                                {
                                                    "$ref": "#/components/schemas/Company"
                                                },
                                                {
                                                    "type": "string"
                                                }
                                            ]
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "type",
                                        "token",
                                        "user",
                                        "company"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "const": "Super admin company not found."
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "const": "Super admin user not found."
                                        }
                                    },
                                    "required": [
                                        "message"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/mail/drivers": {
            "get": {
                "operationId": "mailConfiguration.getMailDrivers",
                "summary": "Return the available mail drivers",
                "tags": [
                    "MailConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {}
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/mail/config": {
            "get": {
                "operationId": "mailConfiguration.getMailEnvironment",
                "summary": "Return the mail environment variables",
                "tags": [
                    "MailConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {}
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "mailConfiguration.saveMailEnvironment",
                "summary": "Save the mail environment variables",
                "tags": [
                    "MailConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/MailEnvironmentRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "string",
                                            "const": "mail_variables_save_successfully"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/mail/test": {
            "post": {
                "operationId": "mailConfiguration.testEmailConfig",
                "summary": "Test the email configuration",
                "tags": [
                    "MailConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "to": {
                                        "type": "string",
                                        "format": "email"
                                    },
                                    "subject": {
                                        "type": "string"
                                    },
                                    "message": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "to",
                                    "subject",
                                    "message"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/modules/pairing": {
            "get": {
                "operationId": "marketplacePairing.status",
                "tags": [
                    "MarketplacePairing"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "paired": {
                                            "type": "boolean"
                                        },
                                        "expired": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "boolean"
                                                }
                                            ]
                                        },
                                        "paired_at": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "paired",
                                        "expired",
                                        "paired_at"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "delete": {
                "operationId": "marketplacePairing.disconnect",
                "tags": [
                    "MarketplacePairing"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/modules/pairing/start": {
            "post": {
                "operationId": "marketplacePairing.start",
                "tags": [
                    "MarketplacePairing"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "201": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "device_code": {
                                            "type": "string"
                                        },
                                        "user_code": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "verification_uri": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "verification_uri_complete": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "expires_in": {
                                            "type": [
                                                "object",
                                                "null"
                                            ]
                                        },
                                        "interval": {
                                            "type": [
                                                "object",
                                                "null"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "device_code",
                                        "user_code",
                                        "verification_uri",
                                        "verification_uri_complete",
                                        "expires_in",
                                        "interval"
                                    ]
                                }
                            }
                        }
                    },
                    "503": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "marketplace_unavailable"
                                        }
                                    },
                                    "required": [
                                        "error"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/modules/pairing/poll": {
            "post": {
                "operationId": "marketplacePairing.poll",
                "tags": [
                    "MarketplacePairing"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "string",
                                                    "const": "paired"
                                                }
                                            },
                                            "required": [
                                                "status"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "status": {
                                                    "type": "string",
                                                    "const": "pending"
                                                }
                                            },
                                            "required": [
                                                "status"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "error": {
                                                    "type": "string",
                                                    "const": "pairing_failed"
                                                }
                                            },
                                            "required": [
                                                "error"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "error": {
                                                    "type": "string",
                                                    "const": "pairing_expired"
                                                }
                                            },
                                            "required": [
                                                "error"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/members/delete": {
            "post": {
                "operationId": "members.delete",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Members"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DeleteMemberRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/members": {
            "get": {
                "operationId": "members.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Members"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/UserResource"
                                            }
                                        },
                                        "links": {
                                            "type": "object",
                                            "properties": {
                                                "first": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "prev": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "next": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "first",
                                                "last",
                                                "prev",
                                                "next"
                                            ]
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                },
                                                "user_total_count": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "from",
                                                "last_page",
                                                "links",
                                                "path",
                                                "per_page",
                                                "to",
                                                "total",
                                                "user_total_count"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "members.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "Members"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/MemberRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/members/{member}": {
            "get": {
                "operationId": "members.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Members"
                ],
                "parameters": [
                    {
                        "name": "member",
                        "in": "path",
                        "required": true,
                        "description": "The member ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "members.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "Members"
                ],
                "parameters": [
                    {
                        "name": "member",
                        "in": "path",
                        "required": true,
                        "description": "The member ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/MemberRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/modules/{module}/uninstall": {
            "post": {
                "operationId": "moduleInstallation.uninstall",
                "tags": [
                    "ModuleInstallation"
                ],
                "parameters": [
                    {
                        "name": "module",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/UninstallMarketplaceModuleRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/modules/install": {
            "post": {
                "operationId": "moduleInstallation.install",
                "tags": [
                    "ModuleInstallation"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/InstallMarketplaceModuleRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/modules/{slug}/settings": {
            "get": {
                "operationId": "moduleSettings.show",
                "tags": [
                    "ModuleSettings"
                ],
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "schema": {
                                            "type": "object",
                                            "properties": {
                                                "sections": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "additionalProperties": {}
                                                    }
                                                }
                                            },
                                            "required": [
                                                "sections"
                                            ]
                                        },
                                        "values": {
                                            "type": "object",
                                            "additionalProperties": {
                                                "type": "string"
                                            }
                                        }
                                    },
                                    "required": [
                                        "schema",
                                        "values"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "moduleSettings.update",
                "tags": [
                    "ModuleSettings"
                ],
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/modules": {
            "get": {
                "operationId": "modules.index",
                "tags": [
                    "Modules"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `ModuleResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/ModuleResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "503": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "marketplace_unavailable"
                                        }
                                    },
                                    "required": [
                                        "error"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/modules/{module}": {
            "get": {
                "operationId": "modules.show",
                "tags": [
                    "Modules"
                ],
                "parameters": [
                    {
                        "name": "module",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`ModuleResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ModuleResource"
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "modules": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/ModuleResource"
                                                    }
                                                }
                                            },
                                            "required": [
                                                "modules"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "503": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "marketplace_unavailable"
                                        }
                                    },
                                    "required": [
                                        "error"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "not_found"
                                        }
                                    },
                                    "required": [
                                        "error"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/modules/{module}/enable": {
            "post": {
                "operationId": "modules.enable",
                "tags": [
                    "Modules"
                ],
                "parameters": [
                    {
                        "name": "module",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "409": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "error": {
                                            "type": "string",
                                            "const": "module_runtime_missing"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "error"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/modules/{module}/disable": {
            "post": {
                "operationId": "modules.disable",
                "tags": [
                    "Modules"
                ],
                "parameters": [
                    {
                        "name": "module",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/notes": {
            "get": {
                "operationId": "notes.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Notes"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `NoteResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/NoteResource"
                                            }
                                        },
                                        "links": {
                                            "type": "object",
                                            "properties": {
                                                "first": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "prev": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "next": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "first",
                                                "last",
                                                "prev",
                                                "next"
                                            ]
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "from",
                                                "last_page",
                                                "links",
                                                "path",
                                                "per_page",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "notes.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "Notes"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/NotesRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`NoteResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/NoteResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/notes/{note}": {
            "get": {
                "operationId": "notes.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Notes"
                ],
                "parameters": [
                    {
                        "name": "note",
                        "in": "path",
                        "required": true,
                        "description": "The note ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`NoteResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/NoteResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "notes.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "Notes"
                ],
                "parameters": [
                    {
                        "name": "note",
                        "in": "path",
                        "required": true,
                        "description": "The note ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`NoteResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/NoteResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "notes.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "Notes"
                ],
                "parameters": [
                    {
                        "name": "note",
                        "in": "path",
                        "required": true,
                        "description": "The note ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/installation/wizard-step": {
            "get": {
                "operationId": "onboardingWizard.getStep",
                "summary": "Handle the incoming request",
                "tags": [
                    "OnboardingWizard"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "profile_complete": {
                                                    "type": "null"
                                                },
                                                "profile_language": {
                                                    "type": "null"
                                                }
                                            },
                                            "required": [
                                                "profile_complete",
                                                "profile_language"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "profile_complete": {
                                                    "type": "integer"
                                                },
                                                "profile_language": {
                                                    "type": "string",
                                                    "const": "en"
                                                }
                                            },
                                            "required": [
                                                "profile_complete",
                                                "profile_language"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "onboardingWizard.updateStep",
                "tags": [
                    "OnboardingWizard"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "profile_complete": {
                                            "type": "null"
                                        }
                                    },
                                    "required": [
                                        "profile_complete"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/installation/wizard-language": {
            "post": {
                "operationId": "onboardingWizard.saveLanguage",
                "tags": [
                    "OnboardingWizard"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "profile_language": {
                                            "type": "null"
                                        }
                                    },
                                    "required": [
                                        "profile_language"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/{company}/customer/payment-method": {
            "get": {
                "operationId": "customerPortal.paymentMethod",
                "summary": "Handle the incoming request",
                "tags": [
                    "PaymentMethod"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company slug",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentMethodResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentMethodResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/payment-methods": {
            "get": {
                "operationId": "payment-methods.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "PaymentMethods"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `PaymentMethodResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/PaymentMethodResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "payment-methods.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "PaymentMethods"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/PaymentMethodRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`PaymentMethodResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/PaymentMethodResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/payment-methods/{paymentMethod}": {
            "get": {
                "operationId": "payment-methods.show",
                "summary": "Display the specified resource",
                "tags": [
                    "PaymentMethods"
                ],
                "parameters": [
                    {
                        "name": "paymentMethod",
                        "in": "path",
                        "required": true,
                        "description": "The payment method ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`PaymentMethodResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/PaymentMethodResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "payment-methods.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "PaymentMethods"
                ],
                "parameters": [
                    {
                        "name": "paymentMethod",
                        "in": "path",
                        "required": true,
                        "description": "The payment method ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/PaymentMethodRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`PaymentMethodResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/PaymentMethodResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "payment-methods.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "PaymentMethods"
                ],
                "parameters": [
                    {
                        "name": "paymentMethod",
                        "in": "path",
                        "required": true,
                        "description": "The payment method ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/payments/{payment}/send/preview": {
            "get": {
                "operationId": "payments.sendPreview",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "payment",
                        "in": "path",
                        "required": true,
                        "description": "The payment ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/payments/{payment}/send": {
            "post": {
                "operationId": "payments.send",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "payment",
                        "in": "path",
                        "required": true,
                        "description": "The payment ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SendPaymentRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/payments/{payment}/allocations": {
            "put": {
                "operationId": "payments.replaceAllocations",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "payment",
                        "in": "path",
                        "required": true,
                        "description": "The payment ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ReplacePaymentAllocationsRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`PaymentResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/PaymentResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/payments/delete": {
            "post": {
                "operationId": "payments.delete",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/DeletePaymentsRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/payments": {
            "get": {
                "operationId": "payments.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `PaymentResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/PaymentResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "payment_total_count": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "payment_total_count"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "payments.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/PaymentRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`PaymentResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/PaymentResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/payments/{payment}": {
            "get": {
                "operationId": "payments.show",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "payment",
                        "in": "path",
                        "required": true,
                        "description": "The payment ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`PaymentResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/PaymentResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "payments.update",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "payment",
                        "in": "path",
                        "required": true,
                        "description": "The payment ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`PaymentResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/PaymentResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/{company}/customer/payments": {
            "get": {
                "operationId": "domains.receivables.customerPortal.payments.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "paymentTotalCount": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "paymentTotalCount"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/{company}/customer/payments/{id}": {
            "get": {
                "operationId": "domains.receivables.customerPortal.payments.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Payments"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company slug",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/pdf/drivers": {
            "get": {
                "operationId": "pdfConfiguration.getDrivers",
                "summary": "Returns the available drivers",
                "tags": [
                    "PdfConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "prefixItems": [
                                        {
                                            "type": "string",
                                            "const": "dompdf"
                                        },
                                        {
                                            "type": "string",
                                            "const": "gotenberg"
                                        }
                                    ],
                                    "minItems": 2,
                                    "maxItems": 2,
                                    "additionalItems": false
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/pdf/config": {
            "get": {
                "operationId": "pdfConfiguration.getEnvironment",
                "summary": "Return the PDF settings",
                "tags": [
                    "PdfConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "additionalProperties": {
                                        "anyOf": [
                                            {
                                                "type": "boolean"
                                            },
                                            {
                                                "type": "string"
                                            },
                                            {
                                                "type": "null"
                                            }
                                        ]
                                    }
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "pdfConfiguration.saveEnvironment",
                "summary": "Saves the settings",
                "tags": [
                    "PdfConfiguration"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/PdfConfigurationRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "string",
                                            "const": "pdf_variables_save_successfully"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/{company}/customer/profile": {
            "post": {
                "operationId": "profile.updateProfile",
                "tags": [
                    "Profile"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "description": "The company slug",
                        "schema": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/CustomerProfileRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/{company}/customer/me": {
            "get": {
                "operationId": "profile.getUser",
                "tags": [
                    "Profile"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/recurring-invoices/delete": {
            "post": {
                "operationId": "recurringInvoice.delete",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "RecurringInvoice"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/recurring-invoices": {
            "get": {
                "operationId": "recurring-invoices.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "RecurringInvoice"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `RecurringInvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/RecurringInvoiceResource"
                                            }
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "recurring_invoice_total_count": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "recurring_invoice_total_count"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "recurring-invoices.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "RecurringInvoice"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/RecurringInvoiceRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`RecurringInvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/RecurringInvoiceResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/recurring-invoices/{recurringInvoice}": {
            "get": {
                "operationId": "recurring-invoices.show",
                "summary": "Display the specified resource",
                "tags": [
                    "RecurringInvoice"
                ],
                "parameters": [
                    {
                        "name": "recurringInvoice",
                        "in": "path",
                        "required": true,
                        "description": "The recurring invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`RecurringInvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/RecurringInvoiceResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "recurring-invoices.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "RecurringInvoice"
                ],
                "parameters": [
                    {
                        "name": "recurringInvoice",
                        "in": "path",
                        "required": true,
                        "description": "The recurring invoice ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/RecurringInvoiceRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`RecurringInvoiceResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/RecurringInvoiceResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/recurring-invoice-frequency": {
            "get": {
                "operationId": "company.recurringInvoiceFrequency",
                "tags": [
                    "RecurringInvoiceFrequency"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "next_invoice_at": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "next_invoice_at"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/installation/requirements": {
            "get": {
                "operationId": "requirements.requirements",
                "summary": "Display the requirements page",
                "tags": [
                    "Requirements"
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "phpSupportInfo": {
                                            "type": "string"
                                        },
                                        "requirements": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "phpSupportInfo",
                                        "requirements"
                                    ]
                                }
                            }
                        }
                    }
                }
            }
        },
        "/auth/reset/password": {
            "post": {
                "operationId": "domains.accounts.auth.resetPassword.reset",
                "summary": "Reset the given user's password",
                "tags": [
                    "ResetPassword"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "token": {
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email"
                                    },
                                    "password": {
                                        "type": "string"
                                    },
                                    "password_confirmation": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "token",
                                    "email",
                                    "password",
                                    "password_confirmation"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "message": {
                                                    "type": "string",
                                                    "const": "Password reset successfully."
                                                }
                                            },
                                            "required": [
                                                "message"
                                            ]
                                        },
                                        {
                                            "type": "object"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/{company}/customer/auth/reset/password": {
            "post": {
                "operationId": "customer.password.reset",
                "summary": "Reset the given user's password",
                "tags": [
                    "ResetPassword"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "token": {
                                        "type": "string"
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email"
                                    },
                                    "password": {
                                        "type": "string"
                                    },
                                    "password_confirmation": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "token",
                                    "email",
                                    "password",
                                    "password_confirmation"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "message": {
                                                    "type": "string",
                                                    "const": "Password reset successfully."
                                                }
                                            },
                                            "required": [
                                                "message"
                                            ]
                                        },
                                        {
                                            "type": "object"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/roles": {
            "get": {
                "operationId": "roles.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Roles"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `RoleResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/RoleResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "roles.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "Roles"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/RoleRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`RoleResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/RoleResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/roles/{role}": {
            "get": {
                "operationId": "roles.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Roles"
                ],
                "parameters": [
                    {
                        "name": "role",
                        "in": "path",
                        "required": true,
                        "description": "The role ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`RoleResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/RoleResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "roles.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "Roles"
                ],
                "parameters": [
                    {
                        "name": "role",
                        "in": "path",
                        "required": true,
                        "description": "The role ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`RoleResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/RoleResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "roles.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "Roles"
                ],
                "parameters": [
                    {
                        "name": "role",
                        "in": "path",
                        "required": true,
                        "description": "The role ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/search": {
            "get": {
                "operationId": "company.search",
                "summary": "Handle the incoming request",
                "tags": [
                    "Search"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "customers": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "data": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/Customer"
                                                    }
                                                },
                                                "first_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "data",
                                                "first_page_url",
                                                "from",
                                                "last_page_url",
                                                "last_page",
                                                "links",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        },
                                        "users": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "data": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/User"
                                                    }
                                                },
                                                "first_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "data",
                                                "first_page_url",
                                                "from",
                                                "last_page_url",
                                                "last_page",
                                                "links",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "customers",
                                        "users"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/search/user": {
            "get": {
                "operationId": "search.users",
                "tags": [
                    "Search"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "users": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "data": {
                                                    "type": "array",
                                                    "items": {
                                                        "$ref": "#/components/schemas/User"
                                                    }
                                                },
                                                "first_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "next_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "prev_page_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "data",
                                                "first_page_url",
                                                "from",
                                                "last_page_url",
                                                "last_page",
                                                "links",
                                                "next_page_url",
                                                "path",
                                                "per_page",
                                                "prev_page_url",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "users"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/customers/{customer}/statement/send": {
            "post": {
                "operationId": "company.sendCustomerStatement",
                "tags": [
                    "SendCustomerStatement"
                ],
                "parameters": [
                    {
                        "name": "customer",
                        "in": "path",
                        "required": true,
                        "description": "The customer ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SendCustomerStatementRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/next-number": {
            "get": {
                "operationId": "serialNumber.nextNumber",
                "tags": [
                    "SerialNumber"
                ],
                "parameters": [
                    {
                        "name": "format",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "nextNumber": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "nextNumber"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "message": {
                                                    "type": "string"
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "message"
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "required": [
                                                "success"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/number-placeholders": {
            "get": {
                "operationId": "serialNumber.placeholders",
                "tags": [
                    "SerialNumber"
                ],
                "parameters": [
                    {
                        "name": "format",
                        "in": "query",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "placeholders": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            },
                                            "minItems": 0,
                                            "maxItems": 0,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "placeholders"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/settings": {
            "get": {
                "operationId": "settings.show",
                "tags": [
                    "Settings"
                ],
                "parameters": [
                    {
                        "name": "key",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "prefixItems": [
                                        {
                                            "type": "null"
                                        }
                                    ],
                                    "minItems": 1,
                                    "maxItems": 1,
                                    "additionalItems": false
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "post": {
                "operationId": "settings.update",
                "tags": [
                    "Settings"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SettingRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        null
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/tax-types": {
            "get": {
                "operationId": "tax-types.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "TaxTypes"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `TaxTypeResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/TaxTypeResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "tax-types.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "TaxTypes"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/TaxTypeRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`TaxTypeResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/TaxTypeResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/tax-types/{taxType}": {
            "get": {
                "operationId": "tax-types.show",
                "summary": "Display the specified resource",
                "tags": [
                    "TaxTypes"
                ],
                "parameters": [
                    {
                        "name": "taxType",
                        "in": "path",
                        "required": true,
                        "description": "The tax type ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`TaxTypeResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/TaxTypeResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "tax-types.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "TaxTypes"
                ],
                "parameters": [
                    {
                        "name": "taxType",
                        "in": "path",
                        "required": true,
                        "description": "The tax type ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`TaxTypeResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/TaxTypeResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "tax-types.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "TaxTypes"
                ],
                "parameters": [
                    {
                        "name": "taxType",
                        "in": "path",
                        "required": true,
                        "description": "The tax type ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/units": {
            "get": {
                "operationId": "units.index",
                "summary": "Display a listing of the resource",
                "tags": [
                    "Units"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Array of `UnitResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/UnitResource"
                                            }
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "post": {
                "operationId": "units.store",
                "summary": "Store a newly created resource in storage",
                "tags": [
                    "Units"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/UnitRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`UnitResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UnitResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/units/{unit}": {
            "get": {
                "operationId": "units.show",
                "summary": "Display the specified resource",
                "tags": [
                    "Units"
                ],
                "parameters": [
                    {
                        "name": "unit",
                        "in": "path",
                        "required": true,
                        "description": "The unit ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`UnitResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UnitResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "units.update",
                "summary": "Update the specified resource in storage",
                "tags": [
                    "Units"
                ],
                "parameters": [
                    {
                        "name": "unit",
                        "in": "path",
                        "required": true,
                        "description": "The unit ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/UnitRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`UnitResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UnitResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "delete": {
                "operationId": "units.destroy",
                "summary": "Remove the specified resource from storage",
                "tags": [
                    "Units"
                ],
                "parameters": [
                    {
                        "name": "unit",
                        "in": "path",
                        "required": true,
                        "description": "The unit ID",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/check/update": {
            "get": {
                "operationId": "update.checkVersion",
                "tags": [
                    "Update"
                ],
                "parameters": [
                    {
                        "name": "channel",
                        "in": "query",
                        "schema": {
                            "type": "string",
                            "default": "stable"
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": [
                                        "object",
                                        "null"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/update/download": {
            "post": {
                "operationId": "update.download",
                "tags": [
                    "Update"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "version": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "version"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "path": {
                                            "anyOf": [
                                                {
                                                    "type": "string"
                                                },
                                                {
                                                    "type": "boolean"
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "success": {
                                                            "type": "boolean"
                                                        },
                                                        "error": {
                                                            "type": "string",
                                                            "const": "Download Exception"
                                                        },
                                                        "data": {
                                                            "type": "object",
                                                            "properties": {
                                                                "path": {
                                                                    "type": "null"
                                                                }
                                                            },
                                                            "required": [
                                                                "path"
                                                            ]
                                                        }
                                                    },
                                                    "required": [
                                                        "success",
                                                        "error",
                                                        "data"
                                                    ]
                                                }
                                            ]
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "path"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/update/unzip": {
            "post": {
                "operationId": "update.unzip",
                "tags": [
                    "Update"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "path": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "path"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "500": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "error"
                                    ]
                                }
                            }
                        }
                    },
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "path": {
                                            "type": "string"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "path"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/update/copy": {
            "post": {
                "operationId": "update.copy",
                "tags": [
                    "Update"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "path": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "path"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "path": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "path"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/update/delete": {
            "post": {
                "operationId": "update.delete",
                "tags": [
                    "Update"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "anyOf": [
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "success": {
                                                            "type": "boolean"
                                                        },
                                                        "cleaned": {
                                                            "type": "integer"
                                                        }
                                                    },
                                                    "required": [
                                                        "success",
                                                        "cleaned"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "success": {
                                                            "type": "boolean"
                                                        },
                                                        "error": {
                                                            "type": "string",
                                                            "const": "Invalid manifest"
                                                        }
                                                    },
                                                    "required": [
                                                        "success",
                                                        "error"
                                                    ]
                                                }
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "cleaned": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "cleaned"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/update/clean": {
            "post": {
                "operationId": "update.clean",
                "tags": [
                    "Update"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "anyOf": [
                                        {
                                            "anyOf": [
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "success": {
                                                            "type": "boolean"
                                                        },
                                                        "cleaned": {
                                                            "type": "integer"
                                                        }
                                                    },
                                                    "required": [
                                                        "success",
                                                        "cleaned"
                                                    ]
                                                },
                                                {
                                                    "type": "object",
                                                    "properties": {
                                                        "success": {
                                                            "type": "boolean"
                                                        },
                                                        "error": {
                                                            "type": "string",
                                                            "const": "Invalid manifest"
                                                        }
                                                    },
                                                    "required": [
                                                        "success",
                                                        "error"
                                                    ]
                                                }
                                            ]
                                        },
                                        {
                                            "type": "object",
                                            "properties": {
                                                "success": {
                                                    "type": "boolean"
                                                },
                                                "cleaned": {
                                                    "type": "integer"
                                                }
                                            },
                                            "required": [
                                                "success",
                                                "cleaned"
                                            ]
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/update/migrate": {
            "post": {
                "operationId": "update.migrate",
                "tags": [
                    "Update"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/update/finish": {
            "post": {
                "operationId": "update.finish",
                "tags": [
                    "Update"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "installed": {
                                        "type": "string"
                                    },
                                    "version": {
                                        "type": "string"
                                    }
                                },
                                "required": [
                                    "installed",
                                    "version"
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "error": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            },
                                            "minItems": 0,
                                            "maxItems": 0,
                                            "additionalItems": false
                                        }
                                    },
                                    "required": [
                                        "success",
                                        "error",
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/me": {
            "get": {
                "operationId": "userProfile.show",
                "tags": [
                    "UserProfile"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "userProfile.update",
                "tags": [
                    "UserProfile"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ProfileRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/me/settings": {
            "get": {
                "operationId": "userProfile.showSettings",
                "tags": [
                    "UserProfile"
                ],
                "parameters": [
                    {
                        "name": "settings[]",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "array",
                            "items": {
                                "type": "string"
                            }
                        }
                    },
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            },
            "put": {
                "operationId": "userProfile.updateSettings",
                "tags": [
                    "UserProfile"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/UpdateSettingsRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/me/upload-avatar": {
            "post": {
                "operationId": "userProfile.uploadAvatar",
                "tags": [
                    "UserProfile"
                ],
                "parameters": [
                    {
                        "name": "company",
                        "in": "header",
                        "required": true,
                        "description": "ID of the company the request operates on (multi-tenancy).",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/AvatarRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    }
                }
            }
        },
        "/super-admin/users": {
            "get": {
                "operationId": "users.index",
                "tags": [
                    "Users"
                ],
                "responses": {
                    "200": {
                        "description": "Paginated set of `UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/UserResource"
                                            }
                                        },
                                        "links": {
                                            "type": "object",
                                            "properties": {
                                                "first": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "last": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "prev": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                },
                                                "next": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ]
                                                }
                                            },
                                            "required": [
                                                "first",
                                                "last",
                                                "prev",
                                                "next"
                                            ]
                                        },
                                        "meta": {
                                            "type": "object",
                                            "properties": {
                                                "current_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "from": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "minimum": 1
                                                },
                                                "last_page": {
                                                    "type": "integer",
                                                    "minimum": 1
                                                },
                                                "links": {
                                                    "type": "array",
                                                    "description": "Generated paginator links.",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "url": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "label": {
                                                                "type": "string"
                                                            },
                                                            "active": {
                                                                "type": "boolean"
                                                            }
                                                        },
                                                        "required": [
                                                            "url",
                                                            "label",
                                                            "active"
                                                        ]
                                                    }
                                                },
                                                "path": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "description": "Base path for paginator generated URLs."
                                                },
                                                "per_page": {
                                                    "type": "integer",
                                                    "description": "Number of items shown per page.",
                                                    "minimum": 0
                                                },
                                                "to": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "description": "Number of the last item in the slice.",
                                                    "minimum": 1
                                                },
                                                "total": {
                                                    "type": "integer",
                                                    "description": "Total number of items being paginated.",
                                                    "minimum": 0
                                                }
                                            },
                                            "required": [
                                                "current_page",
                                                "from",
                                                "last_page",
                                                "links",
                                                "path",
                                                "per_page",
                                                "to",
                                                "total"
                                            ]
                                        }
                                    },
                                    "required": [
                                        "data",
                                        "links",
                                        "meta"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/super-admin/users/{user}": {
            "get": {
                "operationId": "users.show",
                "tags": [
                    "Users"
                ],
                "parameters": [
                    {
                        "name": "user",
                        "in": "path",
                        "required": true,
                        "description": "The user ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            },
            "put": {
                "operationId": "users.update",
                "tags": [
                    "Users"
                ],
                "parameters": [
                    {
                        "name": "user",
                        "in": "path",
                        "required": true,
                        "description": "The user ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/AdminUserUpdateRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "`UserResource`",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "data"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    },
                    "422": {
                        "$ref": "#/components/responses/ValidationException"
                    },
                    "403": {
                        "$ref": "#/components/responses/AuthorizationException"
                    }
                }
            }
        },
        "/super-admin/users/{user}/impersonate": {
            "post": {
                "operationId": "users.impersonate",
                "tags": [
                    "Users"
                ],
                "parameters": [
                    {
                        "name": "user",
                        "in": "path",
                        "required": true,
                        "description": "The user ID",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "token": {
                                            "type": "string"
                                        },
                                        "impersonation_log_id": {
                                            "type": "integer"
                                        },
                                        "user": {
                                            "$ref": "#/components/schemas/UserResource"
                                        }
                                    },
                                    "required": [
                                        "token",
                                        "impersonation_log_id",
                                        "user"
                                    ]
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "cannot_impersonate_self"
                                        },
                                        "message": {
                                            "type": "string",
                                            "const": "You cannot impersonate yourself."
                                        }
                                    },
                                    "required": [
                                        "error",
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "$ref": "#/components/responses/ModelNotFoundException"
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        },
        "/super-admin/stop-impersonating": {
            "post": {
                "operationId": "users.stopImpersonating",
                "tags": [
                    "Users"
                ],
                "responses": {
                    "422": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "const": "not_impersonating"
                                        },
                                        "message": {
                                            "type": "string",
                                            "const": "No active impersonation session."
                                        }
                                    },
                                    "required": [
                                        "error",
                                        "message"
                                    ]
                                }
                            }
                        }
                    },
                    "200": {
                        "description": "",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        }
                                    },
                                    "required": [
                                        "success"
                                    ]
                                }
                            }
                        }
                    },
                    "401": {
                        "$ref": "#/components/responses/AuthenticationException"
                    }
                }
            }
        }
    },
    "components": {
        "securitySchemes": {
            "http": {
                "type": "http",
                "scheme": "bearer"
            }
        },
        "schemas": {
            "AddressResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "address_street_1": {
                        "type": "string"
                    },
                    "address_street_2": {
                        "type": "string"
                    },
                    "city": {
                        "type": "string"
                    },
                    "state": {
                        "type": "string"
                    },
                    "country_id": {
                        "type": "string"
                    },
                    "zip": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "fax": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "user_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "country": {
                        "$ref": "#/components/schemas/CountryResource"
                    },
                    "user": {
                        "$ref": "#/components/schemas/UserResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "address_street_1",
                    "address_street_2",
                    "city",
                    "state",
                    "country_id",
                    "zip",
                    "phone",
                    "fax",
                    "type",
                    "user_id",
                    "company_id",
                    "customer_id"
                ],
                "title": "AddressResource"
            },
            "AdminCompanyUpdateRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "owner_id": {
                        "type": "integer"
                    },
                    "vat_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tax_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "address": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_1": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_2": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "state": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country_id": {
                                "type": [
                                    "integer",
                                    "null"
                                ]
                            },
                            "zip": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "phone": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        }
                    }
                },
                "required": [
                    "name",
                    "owner_id"
                ],
                "title": "AdminCompanyUpdateRequest"
            },
            "AdminUserUpdateRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "password": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8
                    }
                },
                "required": [
                    "name",
                    "email"
                ],
                "title": "AdminUserUpdateRequest"
            },
            "App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "logo": {
                        "type": "string"
                    },
                    "logo_path": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "owner_id": {
                        "type": "string"
                    },
                    "address": {
                        "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.AddressResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "slug",
                    "logo",
                    "logo_path",
                    "unique_hash",
                    "owner_id"
                ],
                "title": "App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
            },
            "App.Domains.Contacts.Http.Resources.CustomerPortal.AddressResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "address_street_1": {
                        "type": "string"
                    },
                    "address_street_2": {
                        "type": "string"
                    },
                    "city": {
                        "type": "string"
                    },
                    "state": {
                        "type": "string"
                    },
                    "country_id": {
                        "type": "string"
                    },
                    "zip": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "fax": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "user_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "country": {
                        "$ref": "#/components/schemas/CountryResource"
                    },
                    "user": {
                        "$ref": "#/components/schemas/UserResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "address_street_1",
                    "address_street_2",
                    "city",
                    "state",
                    "country_id",
                    "zip",
                    "phone",
                    "fax",
                    "type",
                    "user_id",
                    "company_id",
                    "customer_id"
                ],
                "title": "App.Domains.Contacts.Http.Resources.CustomerPortal.AddressResource"
            },
            "App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "contact_name": {
                        "type": "string"
                    },
                    "company_name": {
                        "type": "string"
                    },
                    "website": {
                        "type": "string"
                    },
                    "enable_portal": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "facebook_id": {
                        "type": "string"
                    },
                    "google_id": {
                        "type": "string"
                    },
                    "github_id": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "avatar": {
                        "type": "string"
                    },
                    "prefix": {
                        "type": "string"
                    },
                    "tax_id": {
                        "type": "string"
                    },
                    "billing": {
                        "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.AddressResource"
                    },
                    "shipping": {
                        "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.AddressResource"
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/App.Domains.Money.Http.Resources.CustomerPortal.CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "email",
                    "phone",
                    "contact_name",
                    "company_name",
                    "website",
                    "enable_portal",
                    "currency_id",
                    "company_id",
                    "facebook_id",
                    "google_id",
                    "github_id",
                    "formatted_created_at",
                    "avatar",
                    "prefix",
                    "tax_id"
                ],
                "title": "App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource"
            },
            "App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "label": {
                        "type": "string"
                    },
                    "model_type": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "placeholder": {
                        "type": "string"
                    },
                    "options": {
                        "type": "string"
                    },
                    "boolean_answer": {
                        "type": "string"
                    },
                    "date_answer": {
                        "type": "string"
                    },
                    "time_answer": {
                        "type": "string"
                    },
                    "string_answer": {
                        "type": "string"
                    },
                    "number_answer": {
                        "type": "string"
                    },
                    "date_time_answer": {
                        "type": "string"
                    },
                    "is_required": {
                        "type": "string"
                    },
                    "in_use": {
                        "type": "string"
                    },
                    "order": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "default_answer": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "slug",
                    "label",
                    "model_type",
                    "type",
                    "placeholder",
                    "options",
                    "boolean_answer",
                    "date_answer",
                    "time_answer",
                    "string_answer",
                    "number_answer",
                    "date_time_answer",
                    "is_required",
                    "in_use",
                    "order",
                    "company_id",
                    "default_answer"
                ],
                "title": "App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldResource"
            },
            "App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldValueResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "custom_field_valuable_type": {
                        "type": "string"
                    },
                    "custom_field_valuable_id": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "boolean_answer": {
                        "type": "string"
                    },
                    "date_answer": {
                        "type": "string"
                    },
                    "time_answer": {
                        "type": "string"
                    },
                    "string_answer": {
                        "type": "string"
                    },
                    "number_answer": {
                        "type": "string"
                    },
                    "date_time_answer": {
                        "type": "string"
                    },
                    "custom_field_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "default_answer": {
                        "type": "string"
                    },
                    "custom_field": {
                        "$ref": "#/components/schemas/App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldResource"
                    },
                    "company": {
                        "$ref": "#/components/schemas/App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "custom_field_valuable_type",
                    "custom_field_valuable_id",
                    "type",
                    "boolean_answer",
                    "date_answer",
                    "time_answer",
                    "string_answer",
                    "number_answer",
                    "date_time_answer",
                    "custom_field_id",
                    "company_id",
                    "default_answer"
                ],
                "title": "App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldValueResource"
            },
            "App.Domains.Money.Http.Resources.CustomerPortal.CurrencyResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "code": {
                        "type": "string"
                    },
                    "symbol": {
                        "type": "string"
                    },
                    "precision": {
                        "type": "string"
                    },
                    "thousand_separator": {
                        "type": "string"
                    },
                    "decimal_separator": {
                        "type": "string"
                    },
                    "swap_currency_symbol": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "code",
                    "symbol",
                    "precision",
                    "thousand_separator",
                    "decimal_separator",
                    "swap_currency_symbol",
                    "exchange_rate"
                ],
                "title": "App.Domains.Money.Http.Resources.CustomerPortal.CurrencyResource"
            },
            "App.Domains.Purchases.Http.Resources.CustomerPortal.ExpenseCategoryResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "amount": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "description",
                    "company_id",
                    "amount",
                    "formatted_created_at"
                ],
                "title": "App.Domains.Purchases.Http.Resources.CustomerPortal.ExpenseCategoryResource"
            },
            "App.Domains.Purchases.Http.Resources.CustomerPortal.ExpenseResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "expense_date": {
                        "type": "string"
                    },
                    "expense_number": {
                        "type": "string"
                    },
                    "amount": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "attachment_receipt_url": {
                        "type": "string"
                    },
                    "attachment_receipt": {
                        "type": "string"
                    },
                    "attachment_receipt_meta": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "expense_category_id": {
                        "type": "string"
                    },
                    "formatted_expense_date": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "base_amount": {
                        "type": "string"
                    },
                    "payment_method_id": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource"
                    },
                    "expense_category": {
                        "$ref": "#/components/schemas/App.Domains.Purchases.Http.Resources.CustomerPortal.ExpenseCategoryResource"
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/App.Domains.Money.Http.Resources.CustomerPortal.CurrencyResource"
                    },
                    "payment_method": {
                        "$ref": "#/components/schemas/App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentMethodResource"
                    }
                },
                "required": [
                    "id",
                    "expense_date",
                    "expense_number",
                    "amount",
                    "notes",
                    "customer_id",
                    "attachment_receipt_url",
                    "attachment_receipt",
                    "attachment_receipt_meta",
                    "company_id",
                    "expense_category_id",
                    "formatted_expense_date",
                    "formatted_created_at",
                    "exchange_rate",
                    "currency_id",
                    "base_amount",
                    "payment_method_id"
                ],
                "title": "App.Domains.Purchases.Http.Resources.CustomerPortal.ExpenseResource"
            },
            "App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentMethodResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "company_id"
                ],
                "title": "App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentMethodResource"
            },
            "App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "payment_number": {
                        "type": "string"
                    },
                    "payment_date": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "amount": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "payment_method_id": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_amount": {
                        "type": "integer"
                    },
                    "allocations": {
                        "type": "string"
                    },
                    "allocated_amount": {
                        "type": "integer"
                    },
                    "unallocated_amount": {
                        "type": "integer"
                    },
                    "base_allocated_amount": {
                        "type": "integer"
                    },
                    "base_unallocated_amount": {
                        "type": "integer"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "transaction_id": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "formatted_payment_date": {
                        "type": "string"
                    },
                    "payment_pdf_url": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource"
                    },
                    "payment_method": {
                        "$ref": "#/components/schemas/App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentMethodResource"
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/App.Domains.Money.Http.Resources.CustomerPortal.CurrencyResource"
                    },
                    "transaction": {
                        "$ref": "#/components/schemas/App.Domains.Receivables.Http.Resources.CustomerPortal.TransactionResource"
                    }
                },
                "required": [
                    "id",
                    "payment_number",
                    "payment_date",
                    "notes",
                    "amount",
                    "unique_hash",
                    "company_id",
                    "payment_method_id",
                    "customer_id",
                    "exchange_rate",
                    "base_amount",
                    "allocations",
                    "allocated_amount",
                    "unallocated_amount",
                    "base_allocated_amount",
                    "base_unallocated_amount",
                    "currency_id",
                    "transaction_id",
                    "formatted_created_at",
                    "formatted_payment_date",
                    "payment_pdf_url"
                ],
                "title": "App.Domains.Receivables.Http.Resources.CustomerPortal.PaymentResource"
            },
            "App.Domains.Receivables.Http.Resources.CustomerPortal.TransactionResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "transaction_id": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "transaction_date": {
                        "type": "string"
                    },
                    "invoice_id": {
                        "type": "string"
                    },
                    "invoice": {
                        "$ref": "#/components/schemas/InvoiceResource"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "transaction_id",
                    "type",
                    "status",
                    "transaction_date",
                    "invoice_id"
                ],
                "title": "App.Domains.Receivables.Http.Resources.CustomerPortal.TransactionResource"
            },
            "App.Domains.Sales.Http.Resources.CustomerPortal.EstimateItemResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "quantity": {
                        "type": "string"
                    },
                    "unit_name": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "price": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "item_id": {
                        "type": "string"
                    },
                    "estimate_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_price": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    }
                },
                "required": [
                    "id",
                    "name",
                    "description",
                    "discount_type",
                    "quantity",
                    "unit_name",
                    "discount",
                    "discount_val",
                    "price",
                    "tax",
                    "total",
                    "item_id",
                    "estimate_id",
                    "company_id",
                    "exchange_rate",
                    "base_discount_val",
                    "base_price",
                    "base_tax",
                    "base_total"
                ],
                "title": "App.Domains.Sales.Http.Resources.CustomerPortal.EstimateItemResource"
            },
            "App.Domains.Sales.Http.Resources.CustomerPortal.EstimateResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "estimate_date": {
                        "type": "string"
                    },
                    "expiry_date": {
                        "type": "string"
                    },
                    "estimate_number": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "reference_number": {
                        "type": "string"
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "discount_per_item": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "sub_total": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "template_name": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_sub_total": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "formatted_expiry_date": {
                        "type": "string"
                    },
                    "formatted_estimate_date": {
                        "type": "string"
                    },
                    "estimate_pdf_url": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Sales.Http.Resources.CustomerPortal.EstimateItemResource"
                        }
                    },
                    "customer": {
                        "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Taxation.Http.Resources.CustomerPortal.TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/App.Domains.Money.Http.Resources.CustomerPortal.CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "estimate_date",
                    "expiry_date",
                    "estimate_number",
                    "status",
                    "reference_number",
                    "tax_per_item",
                    "discount_per_item",
                    "notes",
                    "discount",
                    "discount_type",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "unique_hash",
                    "template_name",
                    "customer_id",
                    "exchange_rate",
                    "base_discount_val",
                    "base_sub_total",
                    "base_total",
                    "base_tax",
                    "currency_id",
                    "formatted_expiry_date",
                    "formatted_estimate_date",
                    "estimate_pdf_url"
                ],
                "title": "App.Domains.Sales.Http.Resources.CustomerPortal.EstimateResource"
            },
            "App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceItemResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "price": {
                        "type": "string"
                    },
                    "quantity": {
                        "type": "string"
                    },
                    "unit_name": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "invoice_id": {
                        "type": "string"
                    },
                    "item_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "base_price": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "recurring_invoice_id": {
                        "type": "string"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    }
                },
                "required": [
                    "id",
                    "name",
                    "description",
                    "discount_type",
                    "price",
                    "quantity",
                    "unit_name",
                    "discount",
                    "discount_val",
                    "tax",
                    "total",
                    "invoice_id",
                    "item_id",
                    "company_id",
                    "base_price",
                    "exchange_rate",
                    "base_discount_val",
                    "base_tax",
                    "base_total",
                    "recurring_invoice_id"
                ],
                "title": "App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceItemResource"
            },
            "App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "invoice_date": {
                        "type": "string"
                    },
                    "due_date": {
                        "type": "string"
                    },
                    "invoice_number": {
                        "type": "string"
                    },
                    "reference_number": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "paid_status": {
                        "type": "string"
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "discount_per_item": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "sub_total": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "due_amount": {
                        "type": "string"
                    },
                    "sent": {
                        "type": "string"
                    },
                    "viewed": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "template_name": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "recurring_invoice_id": {
                        "type": "string"
                    },
                    "sequence_number": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_sub_total": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "base_due_amount": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "formatted_notes": {
                        "type": "string"
                    },
                    "invoice_pdf_url": {
                        "type": "string"
                    },
                    "formatted_invoice_date": {
                        "type": "string"
                    },
                    "formatted_due_date": {
                        "type": "string"
                    },
                    "payment_module_enabled": {
                        "type": "string"
                    },
                    "overdue": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceItemResource"
                        }
                    },
                    "customer": {
                        "$ref": "#/components/schemas/App.Domains.Contacts.Http.Resources.CustomerPortal.CustomerResource"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Taxation.Http.Resources.CustomerPortal.TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/App.Domains.Metadata.Http.Resources.CustomerPortal.CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/App.Domains.Money.Http.Resources.CustomerPortal.CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "invoice_date",
                    "due_date",
                    "invoice_number",
                    "reference_number",
                    "status",
                    "paid_status",
                    "tax_per_item",
                    "discount_per_item",
                    "notes",
                    "discount_type",
                    "discount",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "due_amount",
                    "sent",
                    "viewed",
                    "unique_hash",
                    "template_name",
                    "customer_id",
                    "recurring_invoice_id",
                    "sequence_number",
                    "base_discount_val",
                    "base_sub_total",
                    "base_total",
                    "base_tax",
                    "base_due_amount",
                    "currency_id",
                    "formatted_created_at",
                    "formatted_notes",
                    "invoice_pdf_url",
                    "formatted_invoice_date",
                    "formatted_due_date",
                    "payment_module_enabled",
                    "overdue"
                ],
                "title": "App.Domains.Sales.Http.Resources.CustomerPortal.InvoiceResource"
            },
            "App.Domains.Taxation.Http.Resources.CustomerPortal.TaxResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "tax_type_id": {
                        "type": "string"
                    },
                    "invoice_id": {
                        "type": "string"
                    },
                    "estimate_id": {
                        "type": "string"
                    },
                    "invoice_item_id": {
                        "type": "string"
                    },
                    "estimate_item_id": {
                        "type": "string"
                    },
                    "item_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "amount": {
                        "type": "string"
                    },
                    "percent": {
                        "type": "string"
                    },
                    "compound_tax": {
                        "type": "string"
                    },
                    "base_amount": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "recurring_invoice_id": {
                        "type": "string"
                    },
                    "tax_type": {
                        "$ref": "#/components/schemas/App.Domains.Taxation.Http.Resources.CustomerPortal.TaxTypeResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/App.Domains.Money.Http.Resources.CustomerPortal.CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "tax_type_id",
                    "invoice_id",
                    "estimate_id",
                    "invoice_item_id",
                    "estimate_item_id",
                    "item_id",
                    "company_id",
                    "name",
                    "amount",
                    "percent",
                    "compound_tax",
                    "base_amount",
                    "currency_id",
                    "recurring_invoice_id"
                ],
                "title": "App.Domains.Taxation.Http.Resources.CustomerPortal.TaxResource"
            },
            "App.Domains.Taxation.Http.Resources.CustomerPortal.TaxTypeResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "percent": {
                        "type": "string"
                    },
                    "transaction_type": {
                        "type": "string"
                    },
                    "compound_tax": {
                        "type": "string"
                    },
                    "collective_tax": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/App.Domains.Accounts.Http.Resources.CustomerPortal.CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "percent",
                    "transaction_type",
                    "compound_tax",
                    "collective_tax",
                    "description",
                    "company_id"
                ],
                "title": "App.Domains.Taxation.Http.Resources.CustomerPortal.TaxTypeResource"
            },
            "AvatarRequest": {
                "type": "object",
                "properties": {
                    "admin_avatar": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "binary",
                        "contentMediaType": "application/octet-stream",
                        "maxLength": 20000
                    },
                    "avatar": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "title": "AvatarRequest"
            },
            "BulkExchangeRateRequest": {
                "type": "object",
                "properties": {
                    "currencies": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "number"
                                },
                                "exchange_rate": {
                                    "type": "string"
                                }
                            },
                            "required": [
                                "id",
                                "exchange_rate"
                            ]
                        }
                    }
                },
                "required": [
                    "currencies"
                ],
                "title": "BulkExchangeRateRequest"
            },
            "ChangeInvoiceStatusRequest": {
                "type": "object",
                "properties": {
                    "status": {
                        "type": "string",
                        "enum": [
                            "SENT",
                            "COMPLETED"
                        ]
                    }
                },
                "required": [
                    "status"
                ],
                "title": "ChangeInvoiceStatusRequest"
            },
            "CompaniesRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "currency": {
                        "type": "string"
                    },
                    "address": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_1": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_2": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "state": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country_id": {
                                "type": "string"
                            },
                            "zip": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "phone": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "fax": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        },
                        "required": [
                            "country_id"
                        ]
                    }
                },
                "required": [
                    "name",
                    "currency",
                    "address"
                ],
                "title": "CompaniesRequest"
            },
            "Company": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "logo": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "unique_hash": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "slug": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "owner_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "vat_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tax_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "logo_path": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "logo",
                    "unique_hash",
                    "created_at",
                    "updated_at",
                    "slug",
                    "owner_id",
                    "vat_id",
                    "tax_id",
                    "logo_path"
                ],
                "title": "Company"
            },
            "CompanyInvitationResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "token": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "expires_at": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "role": {
                        "$ref": "#/components/schemas/RoleResource"
                    },
                    "invited_by": {
                        "$ref": "#/components/schemas/UserResource"
                    }
                },
                "required": [
                    "id",
                    "company_id",
                    "email",
                    "token",
                    "status",
                    "expires_at",
                    "created_at"
                ],
                "title": "CompanyInvitationResource"
            },
            "CompanyLogoRequest": {
                "type": "object",
                "properties": {
                    "company_logo": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "title": "CompanyLogoRequest"
            },
            "CompanyMailConfigurationRequest": {
                "type": "object",
                "properties": {
                    "use_custom_mail_config": {
                        "type": "string",
                        "enum": [
                            "YES",
                            "NO"
                        ]
                    },
                    "mail_driver": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "use_custom_mail_config"
                ],
                "title": "CompanyMailConfigurationRequest"
            },
            "CompanyRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "vat_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tax_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "address": {
                        "type": "object",
                        "properties": {
                            "country_id": {
                                "type": "string"
                            }
                        },
                        "required": [
                            "country_id"
                        ]
                    }
                },
                "required": [
                    "name",
                    "address"
                ],
                "title": "CompanyRequest"
            },
            "CompanyResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "vat_id": {
                        "type": "string"
                    },
                    "tax_id": {
                        "type": "string"
                    },
                    "logo": {
                        "type": "string"
                    },
                    "logo_path": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "owner_id": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string"
                    },
                    "updated_at": {
                        "type": "string"
                    },
                    "address": {
                        "$ref": "#/components/schemas/AddressResource"
                    },
                    "owner": {
                        "$ref": "#/components/schemas/UserResource"
                    },
                    "roles": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/RoleResource"
                        }
                    },
                    "user_role": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "id",
                    "name",
                    "vat_id",
                    "tax_id",
                    "logo",
                    "logo_path",
                    "unique_hash",
                    "owner_id",
                    "slug",
                    "created_at",
                    "updated_at",
                    "roles",
                    "user_role"
                ],
                "title": "CompanyResource"
            },
            "CountryResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "code": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "phone_code": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "code",
                    "name",
                    "phone_code"
                ],
                "title": "CountryResource"
            },
            "CreateCreditNoteRequest": {
                "type": "object",
                "properties": {
                    "reason": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 1000
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "integer"
                                },
                                "quantity": {
                                    "type": "number"
                                }
                            },
                            "required": [
                                "id",
                                "quantity"
                            ]
                        }
                    }
                },
                "title": "CreateCreditNoteRequest"
            },
            "CreditAllocationRequest": {
                "type": "object",
                "properties": {
                    "allocations": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "payment_id": {
                                    "type": "integer"
                                },
                                "invoice_id": {
                                    "type": "integer"
                                },
                                "amount": {
                                    "type": "integer",
                                    "minimum": 1
                                }
                            },
                            "required": [
                                "payment_id",
                                "invoice_id",
                                "amount"
                            ]
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "allocations"
                ],
                "title": "CreditAllocationRequest"
            },
            "CreditNoteResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "invoice_date": {
                        "type": "string"
                    },
                    "due_date": {
                        "type": "string"
                    },
                    "invoice_number": {
                        "type": "string"
                    },
                    "reference_number": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "related_invoice_id": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "paid_status": {
                        "type": "string"
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "tax_included": {
                        "type": "string"
                    },
                    "discount_per_item": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "sub_total": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "due_amount": {
                        "type": "string"
                    },
                    "sent": {
                        "type": "string"
                    },
                    "viewed": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "template_name": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "recurring_invoice_id": {
                        "type": "string"
                    },
                    "sequence_number": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_sub_total": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "creator_id": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "base_due_amount": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "invoice_pdf_url": {
                        "type": "string"
                    },
                    "formatted_invoice_date": {
                        "type": "string"
                    },
                    "formatted_due_date": {
                        "type": "string"
                    },
                    "allow_edit": {
                        "type": "string"
                    },
                    "payment_module_enabled": {
                        "type": "string"
                    },
                    "sales_tax_type": {
                        "type": "string"
                    },
                    "sales_tax_address_type": {
                        "type": "string"
                    },
                    "overdue": {
                        "type": "string"
                    },
                    "credit_notes": {
                        "type": "string",
                        "description": "Credit notes reversing this invoice (minimal reference so the\nUI can flag the invoice as cancelled and link to the storno\ndocument, mirroring the related_invoice back-link). Emitted only\nwhere the relation was eager-loaded: probing it per row costs two\nqueries each, and this resource is serialized in paginated lists."
                    },
                    "credit_reason": {
                        "type": "string",
                        "description": "Why this invoice was credited, if it was. Set only by the\ncredit-note flow, never by the invoice form."
                    },
                    "credited_total": {
                        "type": "integer",
                        "description": "How much of the invoice has been credited off it, as a positive\nnumber of cents (credit notes store negative totals), and whether\nthat covers the whole document. Both are read off the same loaded\nrelation the banner uses, so they cost no extra query."
                    },
                    "credited_status": {
                        "type": "string",
                        "enum": [
                            "FULL",
                            "PARTIAL",
                            "NONE"
                        ]
                    },
                    "credited_quantities": {
                        "type": "string",
                        "description": "Credited quantity per ORIGINAL line, which is what a partial\ncredit form needs to offer the remaining quantities. Emitted only\nwhen the credit notes' items came along."
                    },
                    "payment_allocations": {
                        "type": "string",
                        "description": "Allocation rows explain how this invoice was settled without\nreintroducing the removed singular payment.invoice relation.\nThey are loaded for the detail response only, so index listings\nremain free of per-row payment queries."
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InvoiceItemResource"
                        }
                    },
                    "customer": {
                        "$ref": "#/components/schemas/CustomerResource"
                    },
                    "creator": {
                        "$ref": "#/components/schemas/UserResource"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    },
                    "related_invoice": {
                        "type": "object",
                        "description": "type + related_invoice_id come from InvoiceResource; this adds the\nexpanded reference to the original invoice being reversed.\nRead off the loaded relation rather than probing it: the caller\neager-loads relatedInvoice, so an exists() query here would be\npure overhead.",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "invoice_number": {
                                "type": "string"
                            },
                            "invoice_date": {
                                "type": "string"
                            },
                            "formatted_invoice_date": {
                                "type": "string"
                            },
                            "total": {
                                "type": "string"
                            },
                            "unique_hash": {
                                "type": "string"
                            }
                        },
                        "required": [
                            "id",
                            "invoice_number",
                            "invoice_date",
                            "formatted_invoice_date",
                            "total",
                            "unique_hash"
                        ]
                    }
                },
                "required": [
                    "id",
                    "invoice_date",
                    "due_date",
                    "invoice_number",
                    "reference_number",
                    "type",
                    "related_invoice_id",
                    "status",
                    "paid_status",
                    "tax_per_item",
                    "tax_included",
                    "discount_per_item",
                    "notes",
                    "discount_type",
                    "discount",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "due_amount",
                    "sent",
                    "viewed",
                    "unique_hash",
                    "template_name",
                    "customer_id",
                    "recurring_invoice_id",
                    "sequence_number",
                    "exchange_rate",
                    "base_discount_val",
                    "base_sub_total",
                    "base_total",
                    "creator_id",
                    "base_tax",
                    "base_due_amount",
                    "currency_id",
                    "formatted_created_at",
                    "invoice_pdf_url",
                    "formatted_invoice_date",
                    "formatted_due_date",
                    "allow_edit",
                    "payment_module_enabled",
                    "sales_tax_type",
                    "sales_tax_address_type",
                    "overdue",
                    "credit_reason"
                ],
                "title": "CreditNoteResource"
            },
            "Currency": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "code": {
                        "type": "string"
                    },
                    "symbol": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "precision": {
                        "type": "integer"
                    },
                    "thousand_separator": {
                        "type": "string"
                    },
                    "decimal_separator": {
                        "type": "string"
                    },
                    "swap_currency_symbol": {
                        "type": "integer"
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "code",
                    "symbol",
                    "precision",
                    "thousand_separator",
                    "decimal_separator",
                    "swap_currency_symbol",
                    "created_at",
                    "updated_at"
                ],
                "title": "Currency"
            },
            "CurrencyResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "code": {
                        "type": "string"
                    },
                    "symbol": {
                        "type": "string"
                    },
                    "precision": {
                        "type": "string"
                    },
                    "thousand_separator": {
                        "type": "string"
                    },
                    "decimal_separator": {
                        "type": "string"
                    },
                    "swap_currency_symbol": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "code",
                    "symbol",
                    "precision",
                    "thousand_separator",
                    "decimal_separator",
                    "swap_currency_symbol",
                    "exchange_rate"
                ],
                "title": "CurrencyResource"
            },
            "CustomFieldRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "label": {
                        "type": "string"
                    },
                    "model_type": {
                        "type": "string"
                    },
                    "order": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "is_required": {
                        "type": "boolean"
                    },
                    "options": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "placeholder": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "name",
                    "label",
                    "model_type",
                    "order",
                    "type",
                    "is_required"
                ],
                "title": "CustomFieldRequest"
            },
            "CustomFieldResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "label": {
                        "type": "string"
                    },
                    "model_type": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "placeholder": {
                        "type": "string"
                    },
                    "options": {
                        "type": "string"
                    },
                    "boolean_answer": {
                        "type": "string"
                    },
                    "date_answer": {
                        "type": "string"
                    },
                    "time_answer": {
                        "type": "string"
                    },
                    "string_answer": {
                        "type": "string"
                    },
                    "number_answer": {
                        "type": "string"
                    },
                    "date_time_answer": {
                        "type": "string"
                    },
                    "is_required": {
                        "type": "string"
                    },
                    "in_use": {
                        "type": "string"
                    },
                    "order": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "default_answer": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "slug",
                    "label",
                    "model_type",
                    "type",
                    "placeholder",
                    "options",
                    "boolean_answer",
                    "date_answer",
                    "time_answer",
                    "string_answer",
                    "number_answer",
                    "date_time_answer",
                    "is_required",
                    "in_use",
                    "order",
                    "company_id",
                    "default_answer"
                ],
                "title": "CustomFieldResource"
            },
            "CustomFieldValueResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "custom_field_valuable_type": {
                        "type": "string"
                    },
                    "custom_field_valuable_id": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "boolean_answer": {
                        "type": "string"
                    },
                    "date_answer": {
                        "type": "string"
                    },
                    "time_answer": {
                        "type": "string"
                    },
                    "string_answer": {
                        "type": "string"
                    },
                    "number_answer": {
                        "type": "string"
                    },
                    "date_time_answer": {
                        "type": "string"
                    },
                    "custom_field_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "default_answer": {
                        "type": "string"
                    },
                    "default_formatted_answer": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "custom_field": {
                        "$ref": "#/components/schemas/CustomFieldResource"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "custom_field_valuable_type",
                    "custom_field_valuable_id",
                    "type",
                    "boolean_answer",
                    "date_answer",
                    "time_answer",
                    "string_answer",
                    "number_answer",
                    "date_time_answer",
                    "custom_field_id",
                    "company_id",
                    "default_answer",
                    "default_formatted_answer"
                ],
                "title": "CustomFieldValueResource"
            },
            "Customer": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "facebook_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "google_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "github_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "contact_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "company_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "website": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "enable_portal": {
                        "type": "boolean"
                    },
                    "currency_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "company_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "creator_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "prefix": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tax_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "avatar": {
                        "type": "string"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/Currency"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "email",
                    "phone",
                    "facebook_id",
                    "google_id",
                    "github_id",
                    "contact_name",
                    "company_name",
                    "website",
                    "enable_portal",
                    "currency_id",
                    "company_id",
                    "creator_id",
                    "created_at",
                    "updated_at",
                    "prefix",
                    "tax_id",
                    "avatar"
                ],
                "title": "Customer"
            },
            "CustomerProfileRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "password": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "customer_avatar": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "binary",
                        "contentMediaType": "application/octet-stream",
                        "maxLength": 20000
                    },
                    "is_customer_avatar_removed": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "billing": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_1": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_2": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "state": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country_id": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "zip": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "phone": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "fax": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        }
                    },
                    "shipping": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_1": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_2": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "state": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country_id": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "zip": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "phone": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "fax": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        }
                    }
                },
                "title": "CustomerProfileRequest"
            },
            "CustomerRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "password": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "company_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "contact_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "website": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "prefix": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tax_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "enable_portal": {
                        "type": "boolean"
                    },
                    "currency_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "billing": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_1": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_2": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "state": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country_id": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "zip": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "phone": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "fax": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        }
                    },
                    "shipping": {
                        "type": "object",
                        "properties": {
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_1": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "address_street_2": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "city": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "state": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "country_id": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "zip": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "phone": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "fax": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        }
                    }
                },
                "required": [
                    "name"
                ],
                "title": "CustomerRequest"
            },
            "CustomerResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "contact_name": {
                        "type": "string"
                    },
                    "company_name": {
                        "type": "string"
                    },
                    "website": {
                        "type": "string"
                    },
                    "enable_portal": {
                        "type": "string"
                    },
                    "password_added": {
                        "type": "boolean"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "facebook_id": {
                        "type": "string"
                    },
                    "google_id": {
                        "type": "string"
                    },
                    "github_id": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "updated_at": {
                        "type": "string"
                    },
                    "avatar": {
                        "type": "string"
                    },
                    "due_amount": {
                        "type": "string"
                    },
                    "base_due_amount": {
                        "type": "string"
                    },
                    "invoice_due_amount": {
                        "type": "string"
                    },
                    "base_invoice_due_amount": {
                        "type": "string"
                    },
                    "available_credit": {
                        "type": "string"
                    },
                    "base_available_credit": {
                        "type": "string"
                    },
                    "account_balance": {
                        "type": "string"
                    },
                    "base_account_balance": {
                        "type": "string"
                    },
                    "prefix": {
                        "type": "string"
                    },
                    "tax_id": {
                        "type": "string"
                    },
                    "billing": {
                        "$ref": "#/components/schemas/AddressResource"
                    },
                    "shipping": {
                        "$ref": "#/components/schemas/AddressResource"
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "email",
                    "phone",
                    "contact_name",
                    "company_name",
                    "website",
                    "enable_portal",
                    "password_added",
                    "currency_id",
                    "company_id",
                    "facebook_id",
                    "google_id",
                    "github_id",
                    "created_at",
                    "formatted_created_at",
                    "updated_at",
                    "avatar",
                    "due_amount",
                    "base_due_amount",
                    "invoice_due_amount",
                    "base_invoice_due_amount",
                    "available_credit",
                    "base_available_credit",
                    "account_balance",
                    "base_account_balance",
                    "prefix",
                    "tax_id"
                ],
                "title": "CustomerResource"
            },
            "CustomerStatementResource": {
                "anyOf": [
                    {
                        "type": "object",
                        "properties": {
                            "type": {
                                "type": "string"
                            },
                            "customer": {
                                "$ref": "#/components/schemas/CustomerResource"
                            },
                            "currency": {
                                "$ref": "#/components/schemas/CurrencyResource"
                            },
                            "as_of": {
                                "type": "string"
                            },
                            "invoices": {
                                "type": "array",
                                "items": {}
                            },
                            "credits": {
                                "type": "array",
                                "items": {}
                            },
                            "invoice_due_amount": {
                                "type": "integer"
                            },
                            "base_invoice_due_amount": {
                                "type": "integer"
                            },
                            "available_credit": {
                                "type": "integer"
                            },
                            "base_available_credit": {
                                "type": "integer"
                            },
                            "account_balance": {
                                "type": "integer"
                            },
                            "base_account_balance": {
                                "type": "integer"
                            }
                        },
                        "required": [
                            "type",
                            "customer",
                            "currency",
                            "as_of",
                            "invoices",
                            "credits",
                            "invoice_due_amount",
                            "base_invoice_due_amount",
                            "available_credit",
                            "base_available_credit",
                            "account_balance",
                            "base_account_balance"
                        ]
                    },
                    {
                        "type": "object",
                        "properties": {
                            "type": {
                                "type": "string"
                            },
                            "customer": {
                                "$ref": "#/components/schemas/CustomerResource"
                            },
                            "currency": {
                                "$ref": "#/components/schemas/CurrencyResource"
                            },
                            "from_date": {
                                "type": "string"
                            },
                            "to_date": {
                                "type": "string"
                            },
                            "opening_balance": {
                                "type": "integer"
                            },
                            "base_opening_balance": {
                                "type": "integer"
                            },
                            "closing_balance": {
                                "type": "integer"
                            },
                            "base_closing_balance": {
                                "type": "integer"
                            },
                            "entries": {
                                "type": "array",
                                "items": {}
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "current_page": {
                                        "type": "integer"
                                    },
                                    "last_page": {
                                        "type": "integer"
                                    },
                                    "per_page": {
                                        "type": "integer"
                                    },
                                    "total": {
                                        "type": "integer"
                                    }
                                },
                                "required": [
                                    "current_page",
                                    "last_page",
                                    "per_page",
                                    "total"
                                ]
                            }
                        },
                        "required": [
                            "type",
                            "customer",
                            "currency",
                            "from_date",
                            "to_date",
                            "opening_balance",
                            "base_opening_balance",
                            "closing_balance",
                            "base_closing_balance",
                            "entries",
                            "meta"
                        ]
                    }
                ],
                "title": "CustomerStatementResource"
            },
            "DatabaseEnvironmentRequest": {
                "type": "object",
                "properties": {
                    "app_url": {
                        "type": "string",
                        "format": "uri"
                    },
                    "database_connection": {
                        "type": "string"
                    },
                    "database_hostname": {
                        "type": "string"
                    },
                    "database_port": {
                        "type": "number"
                    },
                    "database_name": {
                        "type": "string"
                    },
                    "database_username": {
                        "type": "string"
                    },
                    "database_overwrite": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    }
                },
                "required": [
                    "app_url",
                    "database_connection",
                    "database_hostname",
                    "database_port",
                    "database_name",
                    "database_username"
                ],
                "title": "DatabaseEnvironmentRequest"
            },
            "DeleteCustomersRequest": {
                "type": "object",
                "properties": {
                    "ids": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "required": [
                    "ids"
                ],
                "title": "DeleteCustomersRequest"
            },
            "DeleteEstimatesRequest": {
                "type": "object",
                "properties": {
                    "ids": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "required": [
                    "ids"
                ],
                "title": "DeleteEstimatesRequest"
            },
            "DeleteExpensesRequest": {
                "type": "object",
                "properties": {
                    "ids": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "required": [
                    "ids"
                ],
                "title": "DeleteExpensesRequest"
            },
            "DeleteInvoiceRequest": {
                "type": "object",
                "properties": {
                    "ids": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "required": [
                    "ids"
                ],
                "title": "DeleteInvoiceRequest"
            },
            "DeleteItemsRequest": {
                "type": "object",
                "properties": {
                    "ids": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "required": [
                    "ids"
                ],
                "title": "DeleteItemsRequest"
            },
            "DeleteMemberRequest": {
                "type": "object",
                "properties": {
                    "users": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "required": [
                    "users"
                ],
                "title": "DeleteMemberRequest"
            },
            "DeletePaymentsRequest": {
                "type": "object",
                "properties": {
                    "ids": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "required": [
                    "ids"
                ],
                "title": "DeletePaymentsRequest"
            },
            "DiskEnvironmentRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "driver": {
                        "type": "string"
                    }
                },
                "required": [
                    "name",
                    "driver"
                ],
                "title": "DiskEnvironmentRequest"
            },
            "DomainEnvironmentRequest": {
                "type": "object",
                "properties": {
                    "app_domain": {
                        "type": "string"
                    }
                },
                "required": [
                    "app_domain"
                ],
                "title": "DomainEnvironmentRequest"
            },
            "Estimate": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "estimate_date": {
                        "type": "string"
                    },
                    "expiry_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "estimate_number": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "reference_number": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "discount_per_item": {
                        "type": "string"
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "discount": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "discount_type": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "discount_val": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "sub_total": {
                        "type": "integer"
                    },
                    "total": {
                        "type": "integer"
                    },
                    "tax": {
                        "type": "integer"
                    },
                    "unique_hash": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "user_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "company_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "creator_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "template_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "customer_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "exchange_rate": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "base_discount_val": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "base_sub_total": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "base_total": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "base_tax": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "currency_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "sequence_number": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "customer_sequence_number": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "sales_tax_type": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "sales_tax_address_type": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "tax_included": {
                        "type": "integer"
                    }
                },
                "required": [
                    "id",
                    "estimate_date",
                    "expiry_date",
                    "estimate_number",
                    "status",
                    "reference_number",
                    "tax_per_item",
                    "discount_per_item",
                    "notes",
                    "discount",
                    "discount_type",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "unique_hash",
                    "user_id",
                    "company_id",
                    "created_at",
                    "updated_at",
                    "creator_id",
                    "template_name",
                    "customer_id",
                    "exchange_rate",
                    "base_discount_val",
                    "base_sub_total",
                    "base_total",
                    "base_tax",
                    "currency_id",
                    "sequence_number",
                    "customer_sequence_number",
                    "sales_tax_type",
                    "sales_tax_address_type",
                    "tax_included"
                ],
                "title": "Estimate"
            },
            "EstimateItemResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "quantity": {
                        "type": "string"
                    },
                    "unit_name": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "price": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "item_id": {
                        "type": "string"
                    },
                    "estimate_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_price": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    }
                },
                "required": [
                    "id",
                    "name",
                    "description",
                    "discount_type",
                    "quantity",
                    "unit_name",
                    "discount",
                    "discount_val",
                    "price",
                    "tax",
                    "total",
                    "item_id",
                    "estimate_id",
                    "company_id",
                    "exchange_rate",
                    "base_discount_val",
                    "base_price",
                    "base_tax",
                    "base_total"
                ],
                "title": "EstimateItemResource"
            },
            "EstimateResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "estimate_date": {
                        "type": "string"
                    },
                    "expiry_date": {
                        "type": "string"
                    },
                    "estimate_number": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "reference_number": {
                        "type": "string"
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "tax_included": {
                        "type": "string"
                    },
                    "discount_per_item": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "sub_total": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "creator_id": {
                        "type": "string"
                    },
                    "template_name": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_sub_total": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "sequence_number": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "formatted_expiry_date": {
                        "type": "string"
                    },
                    "formatted_estimate_date": {
                        "type": "string"
                    },
                    "estimate_pdf_url": {
                        "type": "string"
                    },
                    "sales_tax_type": {
                        "type": "string"
                    },
                    "sales_tax_address_type": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/EstimateItemResource"
                        }
                    },
                    "customer": {
                        "$ref": "#/components/schemas/CustomerResource"
                    },
                    "creator": {
                        "$ref": "#/components/schemas/UserResource"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "estimate_date",
                    "expiry_date",
                    "estimate_number",
                    "status",
                    "reference_number",
                    "tax_per_item",
                    "tax_included",
                    "discount_per_item",
                    "notes",
                    "discount",
                    "discount_type",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "unique_hash",
                    "creator_id",
                    "template_name",
                    "customer_id",
                    "exchange_rate",
                    "base_discount_val",
                    "base_sub_total",
                    "base_total",
                    "base_tax",
                    "sequence_number",
                    "currency_id",
                    "formatted_expiry_date",
                    "formatted_estimate_date",
                    "estimate_pdf_url",
                    "sales_tax_type",
                    "sales_tax_address_type"
                ],
                "title": "EstimateResource"
            },
            "EstimatesRequest": {
                "type": "object",
                "properties": {
                    "estimate_date": {
                        "type": "string"
                    },
                    "expiry_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "estimate_number": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "discount": {
                        "type": "number"
                    },
                    "discount_val": {
                        "type": "integer"
                    },
                    "sub_total": {
                        "type": "integer"
                    },
                    "total": {
                        "type": "integer",
                        "maximum": 999999999999
                    },
                    "tax": {
                        "type": "string"
                    },
                    "template_name": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "description": {
                                    "type": [
                                        "string",
                                        "null"
                                    ]
                                },
                                "name": {
                                    "type": "string"
                                },
                                "quantity": {
                                    "type": "number"
                                },
                                "price": {
                                    "type": "integer"
                                }
                            },
                            "required": [
                                "name",
                                "quantity",
                                "price"
                            ]
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "estimate_date",
                    "customer_id",
                    "estimate_number",
                    "discount",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "template_name",
                    "items"
                ],
                "title": "EstimatesRequest"
            },
            "ExchangeRateProviderRequest": {
                "type": "object",
                "properties": {
                    "driver": {
                        "type": "string"
                    },
                    "key": {
                        "type": "string"
                    },
                    "active": {
                        "type": [
                            "boolean",
                            "null"
                        ]
                    },
                    "currencies": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "items": {
                            "type": [
                                "string",
                                "null"
                            ]
                        }
                    },
                    "driver_config": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "properties": {
                            "url": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "format": "uri",
                                "description": "Only the CurrencyConverter \"DEDICATED\" plan reads a custom URL from\ndriver_config; guard it against SSRF (private/reserved targets)."
                            }
                        }
                    }
                },
                "required": [
                    "driver",
                    "key"
                ],
                "title": "ExchangeRateProviderRequest"
            },
            "ExchangeRateProviderResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "key": {
                        "type": "string"
                    },
                    "driver": {
                        "type": "string"
                    },
                    "currencies": {
                        "type": "string"
                    },
                    "driver_config": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "active": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "key",
                    "driver",
                    "currencies",
                    "driver_config",
                    "company_id",
                    "active"
                ],
                "title": "ExchangeRateProviderResource"
            },
            "ExpenseCategoryRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "name"
                ],
                "title": "ExpenseCategoryRequest"
            },
            "ExpenseCategoryResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "amount": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "description",
                    "company_id",
                    "amount",
                    "formatted_created_at"
                ],
                "title": "ExpenseCategoryResource"
            },
            "ExpenseRequest": {
                "type": "object",
                "properties": {
                    "expense_date": {
                        "type": "string"
                    },
                    "expense_number": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "maxLength": 255
                    },
                    "expense_category_id": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "payment_method_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "amount": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "customer_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "attachment_receipt": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "binary",
                        "contentMediaType": "application/octet-stream",
                        "maxLength": 20000
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "tax_type_id": {
                                    "type": "integer"
                                },
                                "amount": {
                                    "type": "integer",
                                    "minimum": 0
                                }
                            },
                            "required": [
                                "tax_type_id",
                                "amount"
                            ]
                        }
                    }
                },
                "required": [
                    "expense_date",
                    "expense_category_id",
                    "amount",
                    "currency_id"
                ],
                "title": "ExpenseRequest"
            },
            "ExpenseResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "expense_date": {
                        "type": "string"
                    },
                    "expense_number": {
                        "type": "string"
                    },
                    "amount": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "attachment_receipt_url": {
                        "type": "string"
                    },
                    "attachment_receipt": {
                        "type": "string"
                    },
                    "attachment_receipt_meta": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "expense_category_id": {
                        "type": "string"
                    },
                    "creator_id": {
                        "type": "string"
                    },
                    "formatted_expense_date": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "base_amount": {
                        "type": "string"
                    },
                    "payment_method_id": {
                        "type": "string"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "customer": {
                        "$ref": "#/components/schemas/CustomerResource"
                    },
                    "expense_category": {
                        "$ref": "#/components/schemas/ExpenseCategoryResource"
                    },
                    "creator": {
                        "$ref": "#/components/schemas/UserResource"
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    },
                    "payment_method": {
                        "$ref": "#/components/schemas/PaymentMethodResource"
                    }
                },
                "required": [
                    "id",
                    "expense_date",
                    "expense_number",
                    "amount",
                    "notes",
                    "customer_id",
                    "attachment_receipt_url",
                    "attachment_receipt",
                    "attachment_receipt_meta",
                    "company_id",
                    "expense_category_id",
                    "creator_id",
                    "formatted_expense_date",
                    "formatted_created_at",
                    "exchange_rate",
                    "currency_id",
                    "base_amount",
                    "payment_method_id"
                ],
                "title": "ExpenseResource"
            },
            "FileDiskResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "driver": {
                        "type": "string"
                    },
                    "set_as_default": {
                        "type": "string"
                    },
                    "credentials": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "type",
                    "driver",
                    "set_as_default",
                    "credentials",
                    "company_id"
                ],
                "title": "FileDiskResource"
            },
            "InstallMarketplaceModuleRequest": {
                "type": "object",
                "properties": {
                    "slug": {
                        "type": "string",
                        "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
                        "maxLength": 100
                    },
                    "version": {
                        "type": "string",
                        "pattern": "^(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)(?:-[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*)?(?:\\+[0-9A-Za-z-]+(?:\\.[0-9A-Za-z-]+)*)?$",
                        "maxLength": 80
                    },
                    "channel": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            "stable",
                            "insider"
                        ]
                    }
                },
                "required": [
                    "slug",
                    "version"
                ],
                "title": "InstallMarketplaceModuleRequest"
            },
            "Invoice": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "invoice_date": {
                        "type": "string"
                    },
                    "due_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "invoice_number": {
                        "type": "string"
                    },
                    "reference_number": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "status": {
                        "type": "string"
                    },
                    "paid_status": {
                        "type": "string"
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "discount_per_item": {
                        "type": "string"
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "discount_type": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "discount": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "discount_val": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "sub_total": {
                        "type": "integer"
                    },
                    "total": {
                        "type": "integer"
                    },
                    "tax": {
                        "type": "integer"
                    },
                    "due_amount": {
                        "type": "integer"
                    },
                    "sent": {
                        "type": "integer"
                    },
                    "viewed": {
                        "type": "integer"
                    },
                    "unique_hash": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "user_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "company_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "creator_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "template_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "customer_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "recurring_invoice_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "exchange_rate": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "base_discount_val": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "base_sub_total": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "base_total": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "base_tax": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "base_due_amount": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "currency_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "sequence_number": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "customer_sequence_number": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "sales_tax_type": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "sales_tax_address_type": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "overdue": {
                        "type": "integer"
                    },
                    "tax_included": {
                        "type": "integer"
                    },
                    "type": {
                        "type": "string"
                    },
                    "related_invoice_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "credit_reason": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "id",
                    "invoice_date",
                    "due_date",
                    "invoice_number",
                    "reference_number",
                    "status",
                    "paid_status",
                    "tax_per_item",
                    "discount_per_item",
                    "notes",
                    "discount_type",
                    "discount",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "due_amount",
                    "sent",
                    "viewed",
                    "unique_hash",
                    "user_id",
                    "company_id",
                    "created_at",
                    "updated_at",
                    "creator_id",
                    "template_name",
                    "customer_id",
                    "recurring_invoice_id",
                    "exchange_rate",
                    "base_discount_val",
                    "base_sub_total",
                    "base_total",
                    "base_tax",
                    "base_due_amount",
                    "currency_id",
                    "sequence_number",
                    "customer_sequence_number",
                    "sales_tax_type",
                    "sales_tax_address_type",
                    "overdue",
                    "tax_included",
                    "type",
                    "related_invoice_id",
                    "credit_reason"
                ],
                "title": "Invoice"
            },
            "InvoiceItemResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "price": {
                        "type": "string"
                    },
                    "quantity": {
                        "type": "string"
                    },
                    "unit_name": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "invoice_id": {
                        "type": "string"
                    },
                    "item_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "base_price": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "recurring_invoice_id": {
                        "type": "string"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    }
                },
                "required": [
                    "id",
                    "name",
                    "description",
                    "discount_type",
                    "price",
                    "quantity",
                    "unit_name",
                    "discount",
                    "discount_val",
                    "tax",
                    "total",
                    "invoice_id",
                    "item_id",
                    "company_id",
                    "base_price",
                    "exchange_rate",
                    "base_discount_val",
                    "base_tax",
                    "base_total",
                    "recurring_invoice_id"
                ],
                "title": "InvoiceItemResource"
            },
            "InvoiceResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "invoice_date": {
                        "type": "string"
                    },
                    "due_date": {
                        "type": "string"
                    },
                    "invoice_number": {
                        "type": "string"
                    },
                    "reference_number": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "related_invoice_id": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "paid_status": {
                        "type": "string"
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "tax_included": {
                        "type": "string"
                    },
                    "discount_per_item": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "sub_total": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "due_amount": {
                        "type": "string"
                    },
                    "sent": {
                        "type": "string"
                    },
                    "viewed": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "template_name": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "recurring_invoice_id": {
                        "type": "string"
                    },
                    "sequence_number": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_discount_val": {
                        "type": "string"
                    },
                    "base_sub_total": {
                        "type": "string"
                    },
                    "base_total": {
                        "type": "string"
                    },
                    "creator_id": {
                        "type": "string"
                    },
                    "base_tax": {
                        "type": "string"
                    },
                    "base_due_amount": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "invoice_pdf_url": {
                        "type": "string"
                    },
                    "formatted_invoice_date": {
                        "type": "string"
                    },
                    "formatted_due_date": {
                        "type": "string"
                    },
                    "allow_edit": {
                        "type": "string"
                    },
                    "payment_module_enabled": {
                        "type": "string"
                    },
                    "sales_tax_type": {
                        "type": "string"
                    },
                    "sales_tax_address_type": {
                        "type": "string"
                    },
                    "overdue": {
                        "type": "string"
                    },
                    "credit_notes": {
                        "type": "string",
                        "description": "Credit notes reversing this invoice (minimal reference so the\nUI can flag the invoice as cancelled and link to the storno\ndocument, mirroring the related_invoice back-link). Emitted only\nwhere the relation was eager-loaded: probing it per row costs two\nqueries each, and this resource is serialized in paginated lists."
                    },
                    "credit_reason": {
                        "type": "string",
                        "description": "Why this invoice was credited, if it was. Set only by the\ncredit-note flow, never by the invoice form."
                    },
                    "credited_total": {
                        "type": "integer",
                        "description": "How much of the invoice has been credited off it, as a positive\nnumber of cents (credit notes store negative totals), and whether\nthat covers the whole document. Both are read off the same loaded\nrelation the banner uses, so they cost no extra query."
                    },
                    "credited_status": {
                        "type": "string",
                        "enum": [
                            "FULL",
                            "PARTIAL",
                            "NONE"
                        ]
                    },
                    "credited_quantities": {
                        "type": "string",
                        "description": "Credited quantity per ORIGINAL line, which is what a partial\ncredit form needs to offer the remaining quantities. Emitted only\nwhen the credit notes' items came along."
                    },
                    "payment_allocations": {
                        "type": "string",
                        "description": "Allocation rows explain how this invoice was settled without\nreintroducing the removed singular payment.invoice relation.\nThey are loaded for the detail response only, so index listings\nremain free of per-row payment queries."
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InvoiceItemResource"
                        }
                    },
                    "customer": {
                        "$ref": "#/components/schemas/CustomerResource"
                    },
                    "creator": {
                        "$ref": "#/components/schemas/UserResource"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "invoice_date",
                    "due_date",
                    "invoice_number",
                    "reference_number",
                    "type",
                    "related_invoice_id",
                    "status",
                    "paid_status",
                    "tax_per_item",
                    "tax_included",
                    "discount_per_item",
                    "notes",
                    "discount_type",
                    "discount",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "due_amount",
                    "sent",
                    "viewed",
                    "unique_hash",
                    "template_name",
                    "customer_id",
                    "recurring_invoice_id",
                    "sequence_number",
                    "exchange_rate",
                    "base_discount_val",
                    "base_sub_total",
                    "base_total",
                    "creator_id",
                    "base_tax",
                    "base_due_amount",
                    "currency_id",
                    "formatted_created_at",
                    "invoice_pdf_url",
                    "formatted_invoice_date",
                    "formatted_due_date",
                    "allow_edit",
                    "payment_module_enabled",
                    "sales_tax_type",
                    "sales_tax_address_type",
                    "overdue",
                    "credit_reason"
                ],
                "title": "InvoiceResource"
            },
            "InvoicesRequest": {
                "type": "object",
                "properties": {
                    "invoice_date": {
                        "type": "string"
                    },
                    "due_date": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "invoice_number": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "discount": {
                        "type": "number"
                    },
                    "discount_val": {
                        "type": "integer"
                    },
                    "sub_total": {
                        "type": "number"
                    },
                    "total": {
                        "type": "number",
                        "maximum": 999999999999
                    },
                    "tax": {
                        "type": "string"
                    },
                    "template_name": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "description": {
                                    "type": [
                                        "string",
                                        "null"
                                    ]
                                },
                                "name": {
                                    "type": "string"
                                },
                                "quantity": {
                                    "type": "number"
                                },
                                "price": {
                                    "type": "number"
                                }
                            },
                            "required": [
                                "name",
                                "quantity",
                                "price"
                            ]
                        },
                        "minItems": 1
                    }
                },
                "required": [
                    "invoice_date",
                    "customer_id",
                    "invoice_number",
                    "discount",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "template_name",
                    "items"
                ],
                "title": "InvoicesRequest"
            },
            "ItemResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "price": {
                        "type": "string"
                    },
                    "unit_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "creator_id": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string"
                    },
                    "updated_at": {
                        "type": "string"
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "unit": {
                        "$ref": "#/components/schemas/UnitResource"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "description",
                    "price",
                    "unit_id",
                    "company_id",
                    "creator_id",
                    "currency_id",
                    "created_at",
                    "updated_at",
                    "tax_per_item",
                    "formatted_created_at"
                ],
                "title": "ItemResource"
            },
            "ItemsRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "price": {
                        "type": "string"
                    },
                    "unit_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "name",
                    "price"
                ],
                "title": "ItemsRequest"
            },
            "LoginRequest": {
                "type": "object",
                "properties": {
                    "username": {
                        "type": "string"
                    },
                    "password": {
                        "type": "string"
                    },
                    "device_name": {
                        "type": "string"
                    }
                },
                "required": [
                    "username",
                    "password",
                    "device_name"
                ],
                "title": "LoginRequest"
            },
            "MailEnvironmentRequest": {
                "type": "object",
                "properties": {
                    "mail_driver": {
                        "type": "string",
                        "enum": [
                            "sendmail",
                            "smtp",
                            "mail",
                            "ses",
                            "mailgun",
                            "postmark"
                        ]
                    },
                    "from_name": {
                        "type": "string"
                    },
                    "from_mail": {
                        "type": "string",
                        "format": "email"
                    },
                    "mail_sendmail_path": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "mail_driver",
                    "from_name",
                    "from_mail"
                ],
                "title": "MailEnvironmentRequest"
            },
            "MemberRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "password": {
                        "type": "string",
                        "minLength": 8
                    },
                    "companies": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "id": {
                                    "type": "string"
                                },
                                "role": {
                                    "type": "string"
                                }
                            },
                            "required": [
                                "id",
                                "role"
                            ]
                        }
                    }
                },
                "required": [
                    "name",
                    "email",
                    "password",
                    "companies"
                ],
                "title": "MemberRequest"
            },
            "ModuleResource": {
                "type": "object",
                "properties": {
                    "id": {},
                    "average_rating": {},
                    "cover": {},
                    "slug": {},
                    "module_name": {},
                    "access_tier": {},
                    "access": {},
                    "entitlement": {},
                    "compatibility": {},
                    "compatible": {},
                    "release_state": {},
                    "yanked_reason": {},
                    "channel": {},
                    "faq": {},
                    "highlights": {},
                    "installed_module_version": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "installed_module_version_updated_at": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "latest_module_version": {},
                    "latest_module_version_updated_at": {},
                    "latest_min_invoiceshelf_version": {},
                    "latest_module_checksum_sha256": {},
                    "is_dev": {
                        "type": "boolean"
                    },
                    "license": {},
                    "long_description": {},
                    "monthly_price": {},
                    "name": {},
                    "purchased": {},
                    "purchase_url": {},
                    "reviews": {},
                    "screenshots": {},
                    "short_description": {},
                    "type": {},
                    "yearly_price": {},
                    "author_name": {},
                    "author_avatar": {},
                    "installed": {
                        "type": "boolean"
                    },
                    "enabled": {
                        "type": "boolean"
                    },
                    "supports_data_cleanup": {
                        "type": "boolean"
                    },
                    "update_available": {
                        "type": "boolean"
                    },
                    "video_link": {},
                    "video_thumbnail": {},
                    "links": {}
                },
                "required": [
                    "id",
                    "average_rating",
                    "cover",
                    "slug",
                    "module_name",
                    "access_tier",
                    "access",
                    "entitlement",
                    "compatibility",
                    "compatible",
                    "release_state",
                    "yanked_reason",
                    "channel",
                    "faq",
                    "highlights",
                    "installed_module_version",
                    "installed_module_version_updated_at",
                    "latest_module_version",
                    "latest_module_version_updated_at",
                    "latest_min_invoiceshelf_version",
                    "latest_module_checksum_sha256",
                    "is_dev",
                    "license",
                    "long_description",
                    "monthly_price",
                    "name",
                    "purchased",
                    "purchase_url",
                    "reviews",
                    "screenshots",
                    "short_description",
                    "type",
                    "yearly_price",
                    "author_name",
                    "author_avatar",
                    "installed",
                    "enabled",
                    "supports_data_cleanup",
                    "update_available",
                    "video_link",
                    "video_thumbnail",
                    "links"
                ],
                "title": "ModuleResource"
            },
            "NoteResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "is_default": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "type",
                    "name",
                    "notes",
                    "is_default"
                ],
                "title": "NoteResource"
            },
            "NotesRequest": {
                "type": "object",
                "properties": {
                    "type": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "is_default": {
                        "type": "string"
                    }
                },
                "required": [
                    "type",
                    "name",
                    "notes",
                    "is_default"
                ],
                "title": "NotesRequest"
            },
            "PaymentMethodRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    }
                },
                "required": [
                    "name"
                ],
                "title": "PaymentMethodRequest"
            },
            "PaymentMethodResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "company_id",
                    "type"
                ],
                "title": "PaymentMethodResource"
            },
            "PaymentRequest": {
                "type": "object",
                "properties": {
                    "payment_date": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "integer"
                    },
                    "exchange_rate": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "amount": {
                        "type": "integer",
                        "minimum": 1
                    },
                    "payment_number": {
                        "type": "string"
                    },
                    "payment_method_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "notes": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "allocations": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "invoice_id": {
                                    "type": "integer"
                                },
                                "amount": {
                                    "type": "integer",
                                    "minimum": 1
                                }
                            },
                            "required": [
                                "invoice_id",
                                "amount"
                            ]
                        }
                    }
                },
                "required": [
                    "payment_date",
                    "customer_id",
                    "amount",
                    "payment_number"
                ],
                "title": "PaymentRequest"
            },
            "PaymentResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "payment_number": {
                        "type": "string"
                    },
                    "payment_date": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "amount": {
                        "type": "string"
                    },
                    "unique_hash": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "payment_method_id": {
                        "type": "string"
                    },
                    "creator_id": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "base_amount": {
                        "type": "integer"
                    },
                    "allocations": {
                        "type": "string"
                    },
                    "allocated_amount": {
                        "type": "integer"
                    },
                    "unallocated_amount": {
                        "type": "integer"
                    },
                    "base_allocated_amount": {
                        "type": "integer"
                    },
                    "base_unallocated_amount": {
                        "type": "integer"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "transaction_id": {
                        "type": "string"
                    },
                    "sequence_number": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "formatted_payment_date": {
                        "type": "string"
                    },
                    "payment_pdf_url": {
                        "type": "string"
                    },
                    "customer": {
                        "$ref": "#/components/schemas/CustomerResource"
                    },
                    "payment_method": {
                        "$ref": "#/components/schemas/PaymentMethodResource"
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    },
                    "transaction": {
                        "$ref": "#/components/schemas/TransactionResource"
                    }
                },
                "required": [
                    "id",
                    "payment_number",
                    "payment_date",
                    "notes",
                    "amount",
                    "unique_hash",
                    "company_id",
                    "payment_method_id",
                    "creator_id",
                    "customer_id",
                    "exchange_rate",
                    "base_amount",
                    "allocations",
                    "allocated_amount",
                    "unallocated_amount",
                    "base_allocated_amount",
                    "base_unallocated_amount",
                    "currency_id",
                    "transaction_id",
                    "sequence_number",
                    "formatted_created_at",
                    "formatted_payment_date",
                    "payment_pdf_url"
                ],
                "title": "PaymentResource"
            },
            "PdfConfigurationRequest": {
                "type": "object",
                "properties": {
                    "pdf_driver": {
                        "type": "string"
                    },
                    "pdf_paper_width": {
                        "type": "string"
                    },
                    "pdf_paper_height": {
                        "type": "string"
                    },
                    "pdf_orientation": {
                        "type": "string",
                        "enum": [
                            "portrait",
                            "landscape"
                        ]
                    },
                    "pdf_margin_top": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "pdf_margin_right": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "pdf_margin_bottom": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "pdf_margin_left": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "pdf_page_numbers": {
                        "type": "boolean"
                    }
                },
                "required": [
                    "pdf_driver",
                    "pdf_paper_width",
                    "pdf_paper_height",
                    "pdf_orientation"
                ],
                "title": "PdfConfigurationRequest"
            },
            "ProfileRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "password": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8
                    },
                    "email": {
                        "type": "string"
                    }
                },
                "required": [
                    "name",
                    "email"
                ],
                "title": "ProfileRequest"
            },
            "RecurringInvoiceRequest": {
                "type": "object",
                "properties": {
                    "starts_at": {
                        "type": "string"
                    },
                    "send_automatically": {
                        "type": "boolean"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "discount": {
                        "type": "number"
                    },
                    "discount_val": {
                        "type": "integer"
                    },
                    "sub_total": {
                        "type": "integer"
                    },
                    "total": {
                        "type": "integer",
                        "maximum": 999999999999
                    },
                    "tax": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "frequency": {
                        "type": "string"
                    },
                    "limit_by": {
                        "type": "string"
                    },
                    "limit_count": {
                        "type": "string"
                    },
                    "limit_date": {
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "description": {
                                    "type": [
                                        "string",
                                        "null"
                                    ]
                                }
                            }
                        }
                    }
                },
                "required": [
                    "starts_at",
                    "send_automatically",
                    "customer_id",
                    "discount",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "status",
                    "frequency",
                    "limit_by",
                    "items"
                ],
                "title": "RecurringInvoiceRequest"
            },
            "RecurringInvoiceResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "starts_at": {
                        "type": "string"
                    },
                    "formatted_starts_at": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "formatted_next_invoice_at": {
                        "type": "string"
                    },
                    "formatted_limit_date": {
                        "type": "string"
                    },
                    "send_automatically": {
                        "type": "string"
                    },
                    "customer_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "creator_id": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "next_invoice_at": {
                        "type": "string"
                    },
                    "frequency": {
                        "type": "string"
                    },
                    "limit_by": {
                        "type": "string"
                    },
                    "limit_count": {
                        "type": "string"
                    },
                    "limit_date": {
                        "type": "string"
                    },
                    "exchange_rate": {
                        "type": "string"
                    },
                    "tax_per_item": {
                        "type": "string"
                    },
                    "tax_included": {
                        "type": "string"
                    },
                    "discount_per_item": {
                        "type": "string"
                    },
                    "notes": {
                        "type": "string"
                    },
                    "discount_type": {
                        "type": "string"
                    },
                    "discount": {
                        "type": "string"
                    },
                    "discount_val": {
                        "type": "string"
                    },
                    "sub_total": {
                        "type": "string"
                    },
                    "total": {
                        "type": "string"
                    },
                    "tax": {
                        "type": "string"
                    },
                    "due_amount": {
                        "type": "string"
                    },
                    "template_name": {
                        "type": "string"
                    },
                    "sales_tax_type": {
                        "type": "string"
                    },
                    "sales_tax_address_type": {
                        "type": "string"
                    },
                    "fields": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CustomFieldValueResource"
                        }
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InvoiceItemResource"
                        }
                    },
                    "customer": {
                        "$ref": "#/components/schemas/CustomerResource"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    },
                    "invoices": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/InvoiceResource"
                        }
                    },
                    "taxes": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/TaxResource"
                        }
                    },
                    "creator": {
                        "$ref": "#/components/schemas/UserResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "starts_at",
                    "formatted_starts_at",
                    "formatted_created_at",
                    "formatted_next_invoice_at",
                    "formatted_limit_date",
                    "send_automatically",
                    "customer_id",
                    "company_id",
                    "creator_id",
                    "status",
                    "next_invoice_at",
                    "frequency",
                    "limit_by",
                    "limit_count",
                    "limit_date",
                    "exchange_rate",
                    "tax_per_item",
                    "tax_included",
                    "discount_per_item",
                    "notes",
                    "discount_type",
                    "discount",
                    "discount_val",
                    "sub_total",
                    "total",
                    "tax",
                    "due_amount",
                    "template_name",
                    "sales_tax_type",
                    "sales_tax_address_type"
                ],
                "title": "RecurringInvoiceResource"
            },
            "ReplacePaymentAllocationsRequest": {
                "type": "object",
                "properties": {
                    "allocations": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "invoice_id": {
                                    "type": "integer"
                                },
                                "amount": {
                                    "type": "integer",
                                    "minimum": 1
                                }
                            },
                            "required": [
                                "invoice_id",
                                "amount"
                            ]
                        }
                    }
                },
                "required": [
                    "allocations"
                ],
                "title": "ReplacePaymentAllocationsRequest"
            },
            "RoleRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "abilities": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "required": [
                    "name",
                    "abilities"
                ],
                "title": "RoleRequest"
            },
            "RoleResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "level": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "abilities": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "title",
                    "level",
                    "formatted_created_at",
                    "abilities"
                ],
                "title": "RoleResource"
            },
            "SendCustomerStatementRequest": {
                "type": "object",
                "properties": {
                    "type": {
                        "type": "string",
                        "enum": [
                            "activity",
                            "outstanding"
                        ]
                    },
                    "from_date": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date"
                    },
                    "to_date": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date"
                    },
                    "as_of": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date"
                    },
                    "subject": {
                        "type": "string"
                    },
                    "body": {
                        "type": "string"
                    },
                    "to": {
                        "type": "string",
                        "format": "email"
                    },
                    "cc": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "email"
                    },
                    "bcc": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "email"
                    }
                },
                "required": [
                    "type",
                    "subject",
                    "body",
                    "to"
                ],
                "title": "SendCustomerStatementRequest"
            },
            "SendEstimatesRequest": {
                "type": "object",
                "properties": {
                    "subject": {
                        "type": "string"
                    },
                    "body": {
                        "type": "string"
                    },
                    "from": {
                        "type": "string"
                    },
                    "to": {
                        "type": "string"
                    },
                    "cc": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "bcc": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "subject",
                    "body",
                    "from",
                    "to"
                ],
                "title": "SendEstimatesRequest"
            },
            "SendInvoiceRequest": {
                "type": "object",
                "properties": {
                    "body": {
                        "type": "string"
                    },
                    "subject": {
                        "type": "string"
                    },
                    "from": {
                        "type": "string"
                    },
                    "to": {
                        "type": "string"
                    },
                    "cc": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "bcc": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "body",
                    "subject",
                    "from",
                    "to"
                ],
                "title": "SendInvoiceRequest"
            },
            "SendPaymentRequest": {
                "type": "object",
                "properties": {
                    "subject": {
                        "type": "string"
                    },
                    "body": {
                        "type": "string"
                    },
                    "from": {
                        "type": "string"
                    },
                    "to": {
                        "type": "string"
                    },
                    "cc": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "bcc": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "required": [
                    "subject",
                    "body",
                    "from",
                    "to"
                ],
                "title": "SendPaymentRequest"
            },
            "SettingRequest": {
                "type": "object",
                "properties": {
                    "settings": {
                        "type": "string"
                    }
                },
                "required": [
                    "settings"
                ],
                "title": "SettingRequest"
            },
            "TaxResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "tax_type_id": {
                        "type": "string"
                    },
                    "invoice_id": {
                        "type": "string"
                    },
                    "estimate_id": {
                        "type": "string"
                    },
                    "invoice_item_id": {
                        "type": "string"
                    },
                    "estimate_item_id": {
                        "type": "string"
                    },
                    "expense_id": {
                        "type": "string"
                    },
                    "item_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "amount": {
                        "type": "string"
                    },
                    "percent": {
                        "type": "string"
                    },
                    "calculation_type": {
                        "type": "string"
                    },
                    "fixed_amount": {
                        "type": "string"
                    },
                    "compound_tax": {
                        "type": "string"
                    },
                    "base_amount": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "recurring_invoice_id": {
                        "type": "string"
                    },
                    "tax_type": {
                        "$ref": "#/components/schemas/TaxTypeResource"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    }
                },
                "required": [
                    "id",
                    "tax_type_id",
                    "invoice_id",
                    "estimate_id",
                    "invoice_item_id",
                    "estimate_item_id",
                    "expense_id",
                    "item_id",
                    "company_id",
                    "name",
                    "amount",
                    "percent",
                    "calculation_type",
                    "fixed_amount",
                    "compound_tax",
                    "base_amount",
                    "currency_id",
                    "type",
                    "recurring_invoice_id"
                ],
                "title": "TaxResource"
            },
            "TaxType": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "percent": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "compound_tax": {
                        "type": "boolean"
                    },
                    "collective_tax": {
                        "type": "integer"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "company_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "type": {
                        "type": "string"
                    },
                    "calculation_type": {
                        "type": "string"
                    },
                    "fixed_amount": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "transaction_type": {
                        "type": "string"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "percent",
                    "compound_tax",
                    "collective_tax",
                    "description",
                    "company_id",
                    "created_at",
                    "updated_at",
                    "type",
                    "calculation_type",
                    "fixed_amount",
                    "transaction_type"
                ],
                "title": "TaxType"
            },
            "TaxTypeRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    },
                    "calculation_type": {
                        "type": "string",
                        "enum": [
                            "percentage",
                            "fixed"
                        ]
                    },
                    "percent": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "fixed_amount": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "compound_tax": {
                        "type": "boolean"
                    },
                    "collective_tax": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "transaction_type": {
                        "type": "string",
                        "enum": [
                            "sales",
                            "purchases"
                        ]
                    }
                },
                "required": [
                    "name",
                    "calculation_type"
                ],
                "title": "TaxTypeRequest"
            },
            "TaxTypeResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "percent": {
                        "type": "string"
                    },
                    "fixed_amount": {
                        "type": "string"
                    },
                    "calculation_type": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "transaction_type": {
                        "type": "string"
                    },
                    "compound_tax": {
                        "type": "string"
                    },
                    "collective_tax": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "percent",
                    "fixed_amount",
                    "calculation_type",
                    "type",
                    "transaction_type",
                    "compound_tax",
                    "collective_tax",
                    "description",
                    "company_id"
                ],
                "title": "TaxTypeResource"
            },
            "TransactionResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "transaction_id": {
                        "type": "string"
                    },
                    "type": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string"
                    },
                    "transaction_date": {
                        "type": "string"
                    },
                    "invoice_id": {
                        "type": "string"
                    },
                    "invoice": {
                        "$ref": "#/components/schemas/InvoiceResource"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "transaction_id",
                    "type",
                    "status",
                    "transaction_date",
                    "invoice_id"
                ],
                "title": "TransactionResource"
            },
            "UninstallMarketplaceModuleRequest": {
                "type": "object",
                "properties": {
                    "remove_data": {
                        "type": "boolean"
                    },
                    "confirmation": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "enum": [
                            ""
                        ],
                        "maxLength": 100
                    }
                },
                "required": [
                    "remove_data"
                ],
                "title": "UninstallMarketplaceModuleRequest"
            },
            "UnitRequest": {
                "type": "object",
                "properties": {
                    "name": {
                        "type": "string"
                    }
                },
                "required": [
                    "name"
                ],
                "title": "UnitRequest"
            },
            "UnitResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "company": {
                        "$ref": "#/components/schemas/CompanyResource"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "company_id"
                ],
                "title": "UnitResource"
            },
            "UpdateSettingsRequest": {
                "type": "object",
                "properties": {
                    "settings": {
                        "type": "string"
                    }
                },
                "required": [
                    "settings"
                ],
                "title": "UpdateSettingsRequest"
            },
            "UploadExpenseReceiptRequest": {
                "type": "object",
                "properties": {
                    "attachment_receipt": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                },
                "title": "UploadExpenseReceiptRequest"
            },
            "User": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "phone": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "role": {
                        "type": "string"
                    },
                    "facebook_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "google_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "github_id": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "contact_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "company_name": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "website": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "enable_portal": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "currency_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "company_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "created_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "updated_at": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "creator_id": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "avatar": {
                        "type": "string"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/Currency"
                    }
                },
                "required": [
                    "id",
                    "name",
                    "email",
                    "phone",
                    "role",
                    "facebook_id",
                    "google_id",
                    "github_id",
                    "contact_name",
                    "company_name",
                    "website",
                    "enable_portal",
                    "currency_id",
                    "company_id",
                    "created_at",
                    "updated_at",
                    "creator_id",
                    "avatar"
                ],
                "title": "User"
            },
            "UserResource": {
                "type": "object",
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "role": {
                        "type": "string"
                    },
                    "contact_name": {
                        "type": "string"
                    },
                    "company_name": {
                        "type": "string"
                    },
                    "website": {
                        "type": "string"
                    },
                    "enable_portal": {
                        "type": "string"
                    },
                    "currency_id": {
                        "type": "string"
                    },
                    "facebook_id": {
                        "type": "string"
                    },
                    "google_id": {
                        "type": "string"
                    },
                    "github_id": {
                        "type": "string"
                    },
                    "created_at": {
                        "type": "string"
                    },
                    "updated_at": {
                        "type": "string"
                    },
                    "avatar": {
                        "type": "string"
                    },
                    "is_owner": {
                        "type": "string"
                    },
                    "is_super_admin": {
                        "type": "string"
                    },
                    "roles": {
                        "type": "string"
                    },
                    "formatted_created_at": {
                        "type": "string"
                    },
                    "currency": {
                        "$ref": "#/components/schemas/CurrencyResource"
                    },
                    "companies": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/CompanyResource"
                        }
                    }
                },
                "required": [
                    "id",
                    "name",
                    "email",
                    "phone",
                    "role",
                    "contact_name",
                    "company_name",
                    "website",
                    "enable_portal",
                    "currency_id",
                    "facebook_id",
                    "google_id",
                    "github_id",
                    "created_at",
                    "updated_at",
                    "avatar",
                    "is_owner",
                    "is_super_admin",
                    "roles",
                    "formatted_created_at"
                ],
                "title": "UserResource"
            }
        },
        "responses": {
            "ValidationException": {
                "description": "Validation error",
                "content": {
                    "application/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Errors overview."
                                },
                                "errors": {
                                    "type": "object",
                                    "description": "A detailed description of each field that failed validation.",
                                    "additionalProperties": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                }
                            },
                            "required": [
                                "message",
                                "errors"
                            ]
                        }
                    }
                }
            },
            "AuthenticationException": {
                "description": "Unauthenticated",
                "content": {
                    "application/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Error overview."
                                }
                            },
                            "required": [
                                "message"
                            ]
                        }
                    }
                }
            },
            "ModelNotFoundException": {
                "description": "Not found",
                "content": {
                    "application/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Error overview."
                                }
                            },
                            "required": [
                                "message"
                            ]
                        }
                    }
                }
            },
            "AuthorizationException": {
                "description": "Authorization error",
                "content": {
                    "application/json": {
                        "schema": {
                            "type": "object",
                            "properties": {
                                "message": {
                                    "type": "string",
                                    "description": "Error overview."
                                }
                            },
                            "required": [
                                "message"
                            ]
                        }
                    }
                }
            }
        }
    }
}