{
    "openapi": "3.1.0",
    "info": {
        "title": "7 Tech API",
        "version": "v1",
        "description": "Every endpoint is rate limited: 60 requests/minute unauthenticated, 120 requests/minute per token."
    },
    "servers": [
        {
            "url": "http://192.168.1.146:8000"
        }
    ],
    "components": {
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "scheme": "bearer"
            }
        },
        "schemas": {
            "CaseStudyButton": {
                "type": "object",
                "properties": {
                    "text": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "url": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "target": {
                        "type": "string",
                        "enum": [
                            "_self",
                            "_blank"
                        ]
                    },
                    "is_visible": {
                        "type": "boolean"
                    }
                }
            },
            "TransformationCard": {
                "type": "object",
                "properties": {
                    "badge": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "title": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "negative_result": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "positive_result": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                }
            },
            "ProjectCaseStudy": {
                "type": "object",
                "properties": {
                    "hero": {
                        "type": "object",
                        "properties": {
                            "hero_label": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "hero_title": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "hero_description": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "client_label": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "client_name": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "hero_image": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "duration_value": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "technologies": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                }
                            }
                        }
                    },
                    "results": {
                        "type": "object",
                        "properties": {
                            "section_label": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "section_title": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "cards": {
                                "type": "array",
                                "maxItems": 12,
                                "items": {
                                    "type": "object",
                                    "required": [
                                        "value",
                                        "title"
                                    ],
                                    "properties": {
                                        "value": {
                                            "type": "string"
                                        },
                                        "title": {
                                            "type": "string"
                                        },
                                        "description": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "order": {
                                            "type": "integer"
                                        },
                                        "is_visible": {
                                            "type": "boolean"
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "transformation": {
                        "type": "object",
                        "properties": {
                            "section_label": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "section_title": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "before": {
                                "$ref": "#/components/schemas/TransformationCard"
                            },
                            "after": {
                                "$ref": "#/components/schemas/TransformationCard"
                            }
                        }
                    },
                    "pillars": {
                        "type": "object",
                        "properties": {
                            "section_label": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "section_title": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "section_description": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "items": {
                                "type": "array",
                                "maxItems": 16,
                                "items": {
                                    "type": "object",
                                    "required": [
                                        "number",
                                        "title"
                                    ],
                                    "properties": {
                                        "number": {
                                            "type": "string"
                                        },
                                        "title": {
                                            "type": "string"
                                        },
                                        "description": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "footer_text": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        },
                                        "order": {
                                            "type": "integer"
                                        },
                                        "is_visible": {
                                            "type": "boolean"
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "cta": {
                        "type": "object",
                        "properties": {
                            "cta_label": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "cta_title": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "cta_description": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "primary_btn": {
                                "$ref": "#/components/schemas/CaseStudyButton"
                            },
                            "whatsapp_btn": {
                                "$ref": "#/components/schemas/CaseStudyButton"
                            },
                            "trust_microcopy": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            }
                        }
                    },
                    "related": {
                        "type": "object",
                        "properties": {
                            "section_label": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "section_title": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "view_all_text": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "view_all_url": {
                                "type": [
                                    "string",
                                    "null"
                                ]
                            },
                            "view_all_target": {
                                "type": "string",
                                "enum": [
                                    "_self",
                                    "_blank"
                                ]
                            },
                            "view_all_visible": {
                                "type": "boolean"
                            },
                            "related_project_ids": {
                                "type": "array",
                                "maxItems": 3,
                                "items": {
                                    "type": "integer"
                                }
                            }
                        }
                    }
                }
            },
            "ProjectDetail": {
                "type": "object",
                "properties": {
                    "public_id": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "summary": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "image_url": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "client": {
                        "type": [
                            "object",
                            "null"
                        ]
                    },
                    "case_study": {
                        "$ref": "#/components/schemas/ProjectCaseStudy"
                    },
                    "case_study_url": {
                        "type": "string"
                    },
                    "related_projects": {
                        "type": "array",
                        "items": {
                            "type": "object"
                        }
                    }
                }
            }
        }
    },
    "security": [
        {
            "bearerAuth": []
        }
    ],
    "paths": {
        "/api/v1/auth/token": {
            "post": {
                "summary": "Issue an API token",
                "security": [],
                "responses": {
                    "201": {
                        "description": "Token issued"
                    },
                    "409": {
                        "description": "Password change or two-factor enrolment required first"
                    },
                    "422": {
                        "description": "Invalid credentials or validation failure"
                    },
                    "429": {
                        "description": "Too many attempts"
                    }
                }
            }
        },
        "/api/v1/auth/token/current": {
            "get": {
                "summary": "Show the current API token metadata",
                "responses": {
                    "200": {
                        "description": "Token metadata"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            },
            "delete": {
                "summary": "Revoke the current API token",
                "responses": {
                    "200": {
                        "description": "Token revoked"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/auth/tokens": {
            "get": {
                "summary": "List the caller's tokens",
                "responses": {
                    "200": {
                        "description": "Token list"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            },
            "delete": {
                "summary": "Revoke all of the caller's tokens",
                "responses": {
                    "200": {
                        "description": "Tokens revoked"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/auth/tokens/{token}": {
            "delete": {
                "summary": "Revoke one API token",
                "parameters": [
                    {
                        "name": "token",
                        "in": "path",
                        "required": true,
                        "description": "Token public id (UUID)",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Revocation result"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/auth/me": {
            "get": {
                "summary": "Current API user and effective permissions",
                "responses": {
                    "200": {
                        "description": "User payload"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/dashboard": {
            "get": {
                "summary": "Executive dashboard data",
                "parameters": [
                    {
                        "name": "from",
                        "in": "query",
                        "required": true,
                        "description": "Inclusive start date (Y-m-d)",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "to",
                        "in": "query",
                        "required": true,
                        "description": "Inclusive end date (Y-m-d), at most 90 days after `from`",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Dashboard payload"
                    },
                    "403": {
                        "description": "Missing analytics.view"
                    },
                    "422": {
                        "description": "Invalid or oversized range"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/content-images/{media}": {
            "get": {
                "summary": "Stream a ready public image stored by the media system",
                "security": [],
                "parameters": [
                    {
                        "name": "media",
                        "in": "path",
                        "required": true,
                        "description": "Media public id (UUID), returned as media.content_url",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Image bytes"
                    },
                    "404": {
                        "description": "Image is missing, private, or not ready"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/client-logos": {
            "get": {
                "summary": "Published client logos for the frontend",
                "security": [],
                "responses": {
                    "200": {
                        "description": "Array of objects containing logo_url only"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/public/contact-submissions": {
            "post": {
                "summary": "Submit the public Contact us form",
                "description": "Stores the visitor name, email, phone, and message so authorized administrators can review it on the Contact us administration page.",
                "security": [],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "message"
                                ],
                                "properties": {
                                    "name": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "maxLength": 160
                                    },
                                    "email": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "email",
                                        "maxLength": 254
                                    },
                                    "phone": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "maxLength": 40
                                    },
                                    "message": {
                                        "type": "string",
                                        "minLength": 5,
                                        "maxLength": 5000
                                    },
                                    "source": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "maxLength": 60
                                    },
                                    "locale": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "enum": [
                                            "ar",
                                            "en",
                                            null
                                        ]
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Contact request stored successfully"
                    },
                    "422": {
                        "description": "Invalid form data"
                    },
                    "429": {
                        "description": "Too many submissions"
                    }
                }
            }
        },
        "/api/v1/public/portfolio": {
            "get": {
                "summary": "Published portfolio page and project cards for the frontend",
                "description": "Public read-only endpoint. Returns the editable portfolio header, categories, project cards, CTA, and bottom button. Only published projects are included.",
                "security": [],
                "responses": {
                    "200": {
                        "description": "Published portfolio payload"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/public/posts": {
            "get": {
                "summary": "Editable blog page and published articles for the frontend",
                "description": "Returns the page title and description, category filters, featured article, ordered popular articles, latest articles, CTA, and the backward-compatible paginated data list.",
                "security": [],
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number for the data list",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Articles per page (1-100)",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Blog page settings and published articles"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/public/posts/{slug}": {
            "get": {
                "summary": "Published blog article details",
                "description": "Returns the editable title, summary, article sections, conclusion, and CTA for one published article.",
                "security": [],
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "required": true,
                        "description": "Published article slug or public id",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Published article details"
                    },
                    "404": {
                        "description": "Article not found or not published"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/public/footer": {
            "get": {
                "summary": "Editable public footer content for the frontend",
                "description": "Public read-only endpoint. Returns the enabled state, brand logo, tagline, copyright, and active links grouped into company, services, explore, contact, social, legal, and navigation.",
                "security": [],
                "responses": {
                    "200": {
                        "description": "Public footer payload"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/public/careers": {
            "get": {
                "summary": "Editable careers page, categories, application labels, and open jobs",
                "description": "Public read-only endpoint used by the frontend. Supports q and category filters.",
                "security": [],
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Search title, job code, department, and description",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "category",
                        "in": "query",
                        "required": false,
                        "description": "Career category slug",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Career page settings and open jobs"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/public/project-request-page": {
            "get": {
                "summary": "Editable Request your project page content and field definitions",
                "description": "Public read-only endpoint for the frontend form labels, section copy, limits, success message, and administrator-defined extra fields.",
                "security": [],
                "responses": {
                    "200": {
                        "description": "Project request page settings"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/public/project-requests": {
            "post": {
                "summary": "Submit a project request",
                "description": "Accepts multipart/form-data. The PDF attachment is optional and limited to 10MB.",
                "security": [],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "name",
                                    "phone",
                                    "project_details"
                                ],
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "maxLength": 160
                                    },
                                    "phone": {
                                        "type": "string",
                                        "maxLength": 40
                                    },
                                    "email": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "email"
                                    },
                                    "project_details": {
                                        "type": "string",
                                        "maxLength": 3000
                                    },
                                    "attachment": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "format": "binary"
                                    },
                                    "extra_data": {
                                        "type": [
                                            "object",
                                            "null"
                                        ],
                                        "additionalProperties": {
                                            "type": [
                                                "string",
                                                "null"
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Project request stored"
                    },
                    "422": {
                        "description": "Validation failure"
                    },
                    "429": {
                        "description": "Too many submissions"
                    }
                }
            }
        },
        "/api/v1/public/careers/{job}/applications": {
            "post": {
                "summary": "Submit a public job application",
                "description": "Accepts multipart/form-data. CV must be a PDF no larger than 5MB; cover_letter is limited to 10,000 characters.",
                "security": [],
                "parameters": [
                    {
                        "name": "job",
                        "in": "path",
                        "required": true,
                        "description": "Job public_id (UUID)",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "applicant_name",
                                    "email",
                                    "cv"
                                ],
                                "properties": {
                                    "applicant_name": {
                                        "type": "string",
                                        "maxLength": 160
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email"
                                    },
                                    "phone": {
                                        "type": "string"
                                    },
                                    "linkedin_url": {
                                        "type": "string",
                                        "format": "uri"
                                    },
                                    "portfolio_url": {
                                        "type": "string",
                                        "format": "uri"
                                    },
                                    "cover_letter": {
                                        "type": "string",
                                        "maxLength": 10000
                                    },
                                    "cv": {
                                        "type": "string",
                                        "format": "binary"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Application submitted"
                    },
                    "404": {
                        "description": "Job not found"
                    },
                    "422": {
                        "description": "Validation failure or duplicate application"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/public/projects/{slug}": {
            "get": {
                "summary": "Published project case study for the frontend",
                "description": "Public read-only endpoint. Accepts the project slug or public_id and returns the complete editable case study plus related projects.",
                "security": [],
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "required": true,
                        "description": "Published project slug or public_id",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Published project case study"
                    },
                    "404": {
                        "description": "Published project not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/jobs/{job}/applications": {
            "get": {
                "summary": "List the job applications section for one job",
                "description": "Applications are a nested section of jobs. Requires the `applications.manage` permission.",
                "parameters": [
                    {
                        "name": "job",
                        "in": "path",
                        "required": true,
                        "description": "Job public_id (UUID)",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated applications for the selected job"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing applications.manage"
                    },
                    "404": {
                        "description": "Job not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/jobs/{job}/applications/{application}": {
            "get": {
                "summary": "Show one application from a job applications section",
                "description": "Requires the `applications.manage` permission. The application must belong to the selected job.",
                "parameters": [
                    {
                        "name": "job",
                        "in": "path",
                        "required": true,
                        "description": "Job public_id (UUID)",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "application",
                        "in": "path",
                        "required": true,
                        "description": "Application public_id (UUID)",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Application payload"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing applications.manage"
                    },
                    "404": {
                        "description": "Job or application not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/users": {
            "get": {
                "summary": "List users",
                "description": "Requires the `users.manage` permission. Exposed fields: id, public_id, name, email, email_verified_at, two_factor_confirmed_at, is_active, activated_at, activated_by, deactivated_at, deactivated_by, deactivation_reason, last_login_at, last_password_changed_at, force_password_change, timezone, locale, lock_version, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "email",
                                "email_verified_at",
                                "two_factor_confirmed_at",
                                "is_active",
                                "activated_at",
                                "activated_by",
                                "deactivated_at",
                                "deactivated_by",
                                "deactivation_reason",
                                "last_login_at",
                                "last_password_changed_at",
                                "force_password_change",
                                "timezone",
                                "locale",
                                "lock_version",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated users"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing users.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/users/{id}": {
            "get": {
                "summary": "Show one users",
                "description": "Requires the `users.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single users"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing users.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/roles": {
            "get": {
                "summary": "List roles",
                "description": "Requires the `roles.manage` permission. Exposed fields: id, code, name, description, is_system, is_active, lock_version, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "code",
                                "name",
                                "description",
                                "is_system",
                                "is_active",
                                "lock_version",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated roles"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing roles.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/roles/{id}": {
            "get": {
                "summary": "Show one roles",
                "description": "Requires the `roles.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single roles"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing roles.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/permissions": {
            "get": {
                "summary": "List permissions",
                "description": "Requires the `permissions.manage` permission. Exposed fields: id, name, description, module, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "name",
                                "description",
                                "module",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated permissions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing permissions.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/permissions/{id}": {
            "get": {
                "summary": "Show one permissions",
                "description": "Requires the `permissions.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single permissions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing permissions.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/authentication-events": {
            "get": {
                "summary": "List authentication-events",
                "description": "Requires the `audit-logs.view` permission. Exposed fields: id, user_id, type, result, reason, request_id, occurred_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "user_id",
                                "type",
                                "result",
                                "reason",
                                "request_id",
                                "occurred_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated authentication-events"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing audit-logs.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/authentication-events/{id}": {
            "get": {
                "summary": "Show one authentication-events",
                "description": "Requires the `audit-logs.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single authentication-events"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing audit-logs.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/analytics-events": {
            "get": {
                "summary": "List analytics-events",
                "description": "Requires the `analytics.view` permission. Exposed fields: id, event_id, event_name, consent, source, properties, occurred_at, received_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "event_id",
                                "event_name",
                                "consent",
                                "source",
                                "properties",
                                "occurred_at",
                                "received_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated analytics-events"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing analytics.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/analytics-events/{id}": {
            "get": {
                "summary": "Show one analytics-events",
                "description": "Requires the `analytics.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single analytics-events"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing analytics.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/metric-definitions": {
            "get": {
                "summary": "List metric-definitions",
                "description": "Requires the `analytics.view` permission. Exposed fields: id, code, version, name, description, aggregation, numerator_event, denominator_event, decimal_places, is_active, effective_from, effective_to, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "code",
                                "version",
                                "name",
                                "description",
                                "aggregation",
                                "numerator_event",
                                "denominator_event",
                                "decimal_places",
                                "is_active",
                                "effective_from",
                                "effective_to",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated metric-definitions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing analytics.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/metric-definitions/{id}": {
            "get": {
                "summary": "Show one metric-definitions",
                "description": "Requires the `analytics.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single metric-definitions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing analytics.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/daily-metrics": {
            "get": {
                "summary": "List daily-metrics",
                "description": "Requires the `analytics.view` permission. Exposed fields: id, metric_definition_id, metric_date, dimensions, numerator, denominator, value, computed_at, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "metric_definition_id",
                                "metric_date",
                                "dimensions",
                                "numerator",
                                "denominator",
                                "value",
                                "computed_at",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated daily-metrics"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing analytics.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/daily-metrics/{id}": {
            "get": {
                "summary": "Show one daily-metrics",
                "description": "Requires the `analytics.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single daily-metrics"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing analytics.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/company-profiles": {
            "get": {
                "summary": "List company-profiles",
                "description": "Requires the `company.manage` permission. Exposed fields: id, public_id, profile_key, legal_name, display_name, tagline, description, public_email, public_phone, address_line, city, country_code, website_url, about_content, lock_version, updated_by_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "profile_key",
                                "legal_name",
                                "display_name",
                                "tagline",
                                "description",
                                "public_email",
                                "public_phone",
                                "address_line",
                                "city",
                                "country_code",
                                "website_url",
                                "about_content",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated company-profiles"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing company.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/company-profiles/{id}": {
            "get": {
                "summary": "Show one company-profiles",
                "description": "Requires the `company.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single company-profiles"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing company.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/contact-submissions": {
            "get": {
                "summary": "List contact-submissions",
                "description": "Requires the `company.manage` permission. Exposed fields: id, public_id, name, email, phone, message, source, locale, status, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "email",
                                "phone",
                                "message",
                                "source",
                                "locale",
                                "status",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated contact-submissions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing company.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/contact-submissions/{id}": {
            "get": {
                "summary": "Show one contact-submissions",
                "description": "Requires the `company.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single contact-submissions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing company.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/menu-bar-settings": {
            "get": {
                "summary": "List menu-bar-settings",
                "description": "Requires the `home.manage` permission. Exposed fields: id, public_id, settings_key, brand_name, brand_logo_url, cta_button_text, cta_button_url, cta_button_enabled, cta_button_target, is_language_switcher_enabled, language_switcher_label, is_theme_toggle_enabled, is_sticky, is_enabled, lock_version, updated_by_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "settings_key",
                                "brand_name",
                                "brand_logo_url",
                                "cta_button_text",
                                "cta_button_url",
                                "cta_button_enabled",
                                "cta_button_target",
                                "is_language_switcher_enabled",
                                "language_switcher_label",
                                "is_theme_toggle_enabled",
                                "is_sticky",
                                "is_enabled",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated menu-bar-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/menu-bar-settings/{id}": {
            "get": {
                "summary": "Show one menu-bar-settings",
                "description": "Requires the `home.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single menu-bar-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/menu-bar-links": {
            "get": {
                "summary": "List menu-bar-links",
                "description": "Requires the `home.manage` permission. Exposed fields: id, public_id, label, url, display_order, is_active, open_in_new_tab, badge_text, icon, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "label",
                                "url",
                                "display_order",
                                "is_active",
                                "open_in_new_tab",
                                "badge_text",
                                "icon",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated menu-bar-links"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/menu-bar-links/{id}": {
            "get": {
                "summary": "Show one menu-bar-links",
                "description": "Requires the `home.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single menu-bar-links"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/footer-settings": {
            "get": {
                "summary": "List footer-settings",
                "description": "Requires the `footer.manage` permission. Exposed fields: id, public_id, settings_key, brand_name, logo_url, tagline, copyright_notice, is_enabled, lock_version, updated_by_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "settings_key",
                                "brand_name",
                                "logo_url",
                                "tagline",
                                "copyright_notice",
                                "is_enabled",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated footer-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing footer.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/footer-settings/{id}": {
            "get": {
                "summary": "Show one footer-settings",
                "description": "Requires the `footer.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single footer-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing footer.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/footer-links": {
            "get": {
                "summary": "List footer-links",
                "description": "Requires the `footer.manage` permission. Exposed fields: id, public_id, group, label, url, display_order, is_active, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "group",
                                "label",
                                "url",
                                "display_order",
                                "is_active",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated footer-links"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing footer.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/footer-links/{id}": {
            "get": {
                "summary": "Show one footer-links",
                "description": "Requires the `footer.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single footer-links"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing footer.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-pages": {
            "get": {
                "summary": "List home-pages",
                "description": "Requires the `home.manage` permission. Exposed fields: id, public_id, page_key, lock_version, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "page_key",
                                "lock_version",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated home-pages"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-pages/{id}": {
            "get": {
                "summary": "Show one home-pages",
                "description": "Requires the `home.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single home-pages"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-page-revisions": {
            "get": {
                "summary": "List home-page-revisions",
                "description": "Requires the `home.manage` permission. Exposed fields: id, public_id, home_page_id, revision_number, status, page_title, meta_description, publish_at, published_at, created_by_user_id, updated_by_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "home_page_id",
                                "revision_number",
                                "status",
                                "page_title",
                                "meta_description",
                                "publish_at",
                                "published_at",
                                "created_by_user_id",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated home-page-revisions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-page-revisions/{id}": {
            "get": {
                "summary": "Show one home-page-revisions",
                "description": "Requires the `home.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single home-page-revisions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-page-sections": {
            "get": {
                "summary": "List home-page-sections",
                "description": "Requires the `home.manage` permission. Exposed fields: id, home_page_revision_id, section_key, eyebrow, heading, body, heading_highlight, note, media_id, cta_label, cta_url, display_order, is_enabled, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "home_page_revision_id",
                                "section_key",
                                "eyebrow",
                                "heading",
                                "body",
                                "heading_highlight",
                                "note",
                                "media_id",
                                "cta_label",
                                "cta_url",
                                "display_order",
                                "is_enabled",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated home-page-sections"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-page-sections/{id}": {
            "get": {
                "summary": "Show one home-page-sections",
                "description": "Requires the `home.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single home-page-sections"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-section-buttons": {
            "get": {
                "summary": "List home-section-buttons",
                "description": "Requires the `home.manage` permission. Exposed fields: id, public_id, home_page_section_id, label, url, style, opens_in_new_tab, display_order, is_active, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "home_page_section_id",
                                "label",
                                "url",
                                "style",
                                "opens_in_new_tab",
                                "display_order",
                                "is_active",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated home-section-buttons"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-section-buttons/{id}": {
            "get": {
                "summary": "Show one home-section-buttons",
                "description": "Requires the `home.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single home-section-buttons"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-section-items": {
            "get": {
                "summary": "List home-section-items",
                "description": "Requires the `home.manage` permission. Exposed fields: id, public_id, home_page_section_id, title, body, value, icon, url, media_id, display_order, is_active, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "home_page_section_id",
                                "title",
                                "body",
                                "value",
                                "icon",
                                "url",
                                "media_id",
                                "display_order",
                                "is_active",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated home-section-items"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/home-section-items/{id}": {
            "get": {
                "summary": "Show one home-section-items",
                "description": "Requires the `home.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single home-section-items"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing home.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/services": {
            "get": {
                "summary": "List services",
                "description": "Public read-only endpoint for the frontend. Only published services are returned. Exposed fields: id, public_id, name, slug, summary, description, status, display_order, is_featured, service_category_id, lock_version, card_image_url, card_image_alt, hero_subtitle, hero_description, hero_image_url, use_card_image_as_hero, hero_image_alt, cta_btn_text, cta_btn_url, cta_btn_target, cta_btn_style, cta_is_visible, features_label, features_title, features_list, technologies_list, target_audience_title, target_audience_description, methodology_label, methodology_title, methodology_description, methodology_steps, deliverables_label, deliverables_title, deliverables_list, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "security": [],
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "status",
                                "display_order",
                                "is_featured",
                                "service_category_id",
                                "lock_version",
                                "card_image_url",
                                "card_image_alt",
                                "hero_subtitle",
                                "hero_description",
                                "hero_image_url",
                                "use_card_image_as_hero",
                                "hero_image_alt",
                                "cta_btn_text",
                                "cta_btn_url",
                                "cta_btn_target",
                                "cta_btn_style",
                                "cta_is_visible",
                                "features_label",
                                "features_title",
                                "features_list",
                                "technologies_list",
                                "target_audience_title",
                                "target_audience_description",
                                "methodology_label",
                                "methodology_title",
                                "methodology_description",
                                "methodology_steps",
                                "deliverables_label",
                                "deliverables_title",
                                "deliverables_list",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Published services"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/services/{id}": {
            "get": {
                "summary": "Show one published service",
                "description": "Public read-only endpoint for the frontend; no Bearer token is required.",
                "security": [],
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Service slug or public_id",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Published service"
                    },
                    "404": {
                        "description": "Service not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/templates": {
            "get": {
                "summary": "List templates",
                "description": "Requires the `templates.manage` permission. Exposed fields: id, public_id, name, slug, summary, description, status, display_order, is_featured, project_archive_original_name, project_archive_size, project_archive_file_count, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "status",
                                "display_order",
                                "is_featured",
                                "project_archive_original_name",
                                "project_archive_size",
                                "project_archive_file_count",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated templates"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing templates.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/templates/{id}": {
            "get": {
                "summary": "Show one templates",
                "description": "Requires the `templates.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single templates"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing templates.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/service-categories": {
            "get": {
                "summary": "List service-categories",
                "description": "Requires the `categories.manage` permission. Exposed fields: id, public_id, name, slug, summary, description, status, display_order, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "status",
                                "display_order",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated service-categories"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing categories.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/service-categories/{id}": {
            "get": {
                "summary": "Show one service-categories",
                "description": "Requires the `categories.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single service-categories"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing categories.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/industries": {
            "get": {
                "summary": "List industries",
                "description": "Requires the `industries.manage` permission. Exposed fields: id, public_id, name, slug, summary, description, status, display_order, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "status",
                                "display_order",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated industries"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing industries.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/industries/{id}": {
            "get": {
                "summary": "Show one industries",
                "description": "Requires the `industries.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single industries"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing industries.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/features": {
            "get": {
                "summary": "List features",
                "description": "Requires the `features.manage` permission. Exposed fields: id, public_id, name, slug, summary, description, status, display_order, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "status",
                                "display_order",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated features"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing features.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/features/{id}": {
            "get": {
                "summary": "Show one features",
                "description": "Requires the `features.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single features"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing features.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/technologies": {
            "get": {
                "summary": "List technologies",
                "description": "Requires the `technologies.manage` permission. Exposed fields: id, public_id, name, slug, summary, description, status, display_order, website_url, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "status",
                                "display_order",
                                "website_url",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated technologies"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing technologies.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/technologies/{id}": {
            "get": {
                "summary": "Show one technologies",
                "description": "Requires the `technologies.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single technologies"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing technologies.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/media": {
            "get": {
                "summary": "List media",
                "description": "Requires the `media.manage` permission. Exposed fields: id, public_id, original_name, mime_type, extension, byte_size, visibility, processing_status, alt_text, width, height, lock_version, uploaded_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "original_name",
                                "mime_type",
                                "extension",
                                "byte_size",
                                "visibility",
                                "processing_status",
                                "alt_text",
                                "width",
                                "height",
                                "lock_version",
                                "uploaded_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated media"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing media.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/media/{id}": {
            "get": {
                "summary": "Show one media",
                "description": "Requires the `media.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single media"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing media.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/page-image-collections": {
            "get": {
                "summary": "List page-image-collections",
                "description": "Requires the `media.manage` permission. Exposed fields: id, public_id, page_key, permission_name, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "page_key",
                                "permission_name",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated page-image-collections"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing media.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/page-image-collections/{id}": {
            "get": {
                "summary": "Show one page-image-collections",
                "description": "Requires the `media.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single page-image-collections"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing media.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/clients": {
            "get": {
                "summary": "List clients",
                "description": "Requires the `clients.manage` permission. Exposed fields: id, public_id, name, slug, summary, description, status, display_order, website_url, logo_url, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "status",
                                "display_order",
                                "website_url",
                                "logo_url",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated clients"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing clients.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/clients/{id}": {
            "get": {
                "summary": "Show one clients",
                "description": "Requires the `clients.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single clients"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing clients.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/client-logos": {
            "get": {
                "summary": "List client-logos",
                "description": "Requires the `clients.manage` permission. Exposed fields: logo_url.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "logo_url"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated client-logos"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing clients.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/projects": {
            "get": {
                "summary": "List projects",
                "description": "Requires the `projects.manage` permission. Exposed fields: id, public_id, name, slug, summary, description, status, display_order, client_id, completed_on, badge, technologies, image_url, case_study_btn_text, case_study_btn_target, show_case_study_btn, has_case_study, case_study, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "status",
                                "display_order",
                                "client_id",
                                "completed_on",
                                "badge",
                                "technologies",
                                "image_url",
                                "case_study_btn_text",
                                "case_study_btn_target",
                                "show_case_study_btn",
                                "has_case_study",
                                "case_study",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated projects"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing projects.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/projects/{id}": {
            "get": {
                "summary": "Show a complete project and case study",
                "description": "Requires the `projects.manage` permission. Returns the resolved six-section case study, client information, web URL, and selected related projects.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Project public_id (UUID). Do not use the slug here.",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Complete project and case-study payload",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/ProjectDetail"
                                        },
                                        "meta": {
                                            "type": "object"
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing projects.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/partners": {
            "get": {
                "summary": "List partners",
                "description": "Requires the `partners.manage` permission. Exposed fields: id, public_id, name, slug, summary, description, website_url, logo_url, alt_text, target, status, display_order, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "summary",
                                "description",
                                "website_url",
                                "logo_url",
                                "alt_text",
                                "target",
                                "status",
                                "display_order",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated partners"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing partners.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/partners/{id}": {
            "get": {
                "summary": "Show one partners",
                "description": "Requires the `partners.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single partners"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing partners.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/partner-logos": {
            "get": {
                "summary": "List partner-logos",
                "description": "Requires the `partners.manage` permission. Exposed fields: id, public_id, logo_url, display_order.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "logo_url",
                                "display_order"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated partner-logos"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing partners.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/partner-logos/{id}": {
            "get": {
                "summary": "Show one partner-logos",
                "description": "Requires the `partners.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single partner-logos"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing partners.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/portfolio-page-settings": {
            "get": {
                "summary": "List portfolio-page-settings",
                "description": "Requires the `projects.manage` permission. Exposed fields: id, setting_key, portfolio_content, partners_content, lock_version, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "setting_key",
                                "portfolio_content",
                                "partners_content",
                                "lock_version",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated portfolio-page-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing projects.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/portfolio-page-settings/{id}": {
            "get": {
                "summary": "Show one portfolio-page-settings",
                "description": "Requires the `projects.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single portfolio-page-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing projects.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/posts": {
            "get": {
                "summary": "List posts",
                "description": "Requires the `blog.manage` permission. Exposed fields: id, public_id, slug, category, cover_image_url, display_order, next_revision_number, lock_version, created_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "slug",
                                "category",
                                "cover_image_url",
                                "display_order",
                                "next_revision_number",
                                "lock_version",
                                "created_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated posts"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing blog.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/posts/{id}": {
            "get": {
                "summary": "Show one posts",
                "description": "Requires the `blog.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single posts"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing blog.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/post-revisions": {
            "get": {
                "summary": "List post-revisions",
                "description": "Requires the `blog.manage` permission. Exposed fields: id, post_id, revision_number, title, category, author_name, reading_time, cover_image_url, cover_image_alt, intro, excerpt, body, content_sections, conclusion, cta, status, publish_at, published_at, author_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "post_id",
                                "revision_number",
                                "title",
                                "category",
                                "author_name",
                                "reading_time",
                                "cover_image_url",
                                "cover_image_alt",
                                "intro",
                                "excerpt",
                                "body",
                                "content_sections",
                                "conclusion",
                                "cta",
                                "status",
                                "publish_at",
                                "published_at",
                                "author_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated post-revisions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing blog.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/post-revisions/{id}": {
            "get": {
                "summary": "Show one post-revisions",
                "description": "Requires the `blog.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single post-revisions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing blog.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/blog-page-settings": {
            "get": {
                "summary": "List blog-page-settings",
                "description": "Requires the `blog.manage` permission. Exposed fields: id, setting_key, content, lock_version, updated_by_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "setting_key",
                                "content",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated blog-page-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing blog.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/blog-page-settings/{id}": {
            "get": {
                "summary": "Show one blog-page-settings",
                "description": "Requires the `blog.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single blog-page-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing blog.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/jobs": {
            "get": {
                "summary": "List jobs",
                "description": "Requires the `jobs.manage` permission. Exposed fields: id, public_id, job_code, slug, title, department, category_slug, location, employment_type, description, salary_min, salary_max, currency_code, opens_at, closes_at, status, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "job_code",
                                "slug",
                                "title",
                                "department",
                                "category_slug",
                                "location",
                                "employment_type",
                                "description",
                                "salary_min",
                                "salary_max",
                                "currency_code",
                                "opens_at",
                                "closes_at",
                                "status",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated jobs"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing jobs.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/jobs/{id}": {
            "get": {
                "summary": "Show one jobs",
                "description": "Requires the `jobs.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single jobs"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing jobs.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/career-page-settings": {
            "get": {
                "summary": "List career-page-settings",
                "description": "Requires the `jobs.manage` permission. Exposed fields: id, setting_key, content, lock_version, updated_by_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "setting_key",
                                "content",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated career-page-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing jobs.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/career-page-settings/{id}": {
            "get": {
                "summary": "Show one career-page-settings",
                "description": "Requires the `jobs.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single career-page-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing jobs.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/currencies": {
            "get": {
                "summary": "List currencies",
                "description": "Requires the `pricing.view` permission. Exposed fields: code, name, symbol, minor_unit, is_enabled, display_order, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "code",
                                "name",
                                "symbol",
                                "minor_unit",
                                "is_enabled",
                                "display_order",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated currencies"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/currencies/{id}": {
            "get": {
                "summary": "Show one currencies",
                "description": "Requires the `pricing.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single currencies"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/packages": {
            "get": {
                "summary": "List packages",
                "description": "Requires the `pricing.view` permission. Exposed fields: id, public_id, name, slug, description, status, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "description",
                                "status",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated packages"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/packages/{id}": {
            "get": {
                "summary": "Show one packages",
                "description": "Requires the `pricing.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single packages"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/package-items": {
            "get": {
                "summary": "List package-items",
                "description": "Requires the `pricing.view` permission. Exposed fields: package_id, subject_type, subject_id, quantity, display_order.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "package_id",
                                "subject_type",
                                "subject_id",
                                "quantity",
                                "display_order"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated package-items"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/price-lists": {
            "get": {
                "summary": "List price-lists",
                "description": "Requires the `pricing.view` permission. Exposed fields: id, public_id, name, slug, status, currency_code, context, effective_from, effective_until, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "status",
                                "currency_code",
                                "context",
                                "effective_from",
                                "effective_until",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated price-lists"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/price-lists/{id}": {
            "get": {
                "summary": "Show one price-lists",
                "description": "Requires the `pricing.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single price-lists"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/price-entries": {
            "get": {
                "summary": "List price-entries",
                "description": "Requires the `pricing.view` permission. Exposed fields: id, public_id, price_list_id, subject_type, subject_id, amount, price_type, minimum_quantity, maximum_quantity, effective_from, effective_until, status, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "price_list_id",
                                "subject_type",
                                "subject_id",
                                "amount",
                                "price_type",
                                "minimum_quantity",
                                "maximum_quantity",
                                "effective_from",
                                "effective_until",
                                "status",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated price-entries"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/price-entries/{id}": {
            "get": {
                "summary": "Show one price-entries",
                "description": "Requires the `pricing.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single price-entries"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/pricing-rules": {
            "get": {
                "summary": "List pricing-rules",
                "description": "Requires the `pricing.view` permission. Exposed fields: id, public_id, price_list_id, name, priority, condition_type, condition_config, effect_type, adjustment_type, adjustment_value, effective_from, effective_until, status, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "price_list_id",
                                "name",
                                "priority",
                                "condition_type",
                                "condition_config",
                                "effect_type",
                                "adjustment_type",
                                "adjustment_value",
                                "effective_from",
                                "effective_until",
                                "status",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated pricing-rules"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/pricing-rules/{id}": {
            "get": {
                "summary": "Show one pricing-rules",
                "description": "Requires the `pricing.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single pricing-rules"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing pricing.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/contacts": {
            "get": {
                "summary": "List contacts",
                "description": "Requires the `contacts.manage` permission. Exposed fields: id, public_id, name, company_name, email, phone, timezone, locale, notes, owner_user_id, is_active, lock_version, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "company_name",
                                "email",
                                "phone",
                                "timezone",
                                "locale",
                                "notes",
                                "owner_user_id",
                                "is_active",
                                "lock_version",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated contacts"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing contacts.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/contacts/{id}": {
            "get": {
                "summary": "Show one contacts",
                "description": "Requires the `contacts.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single contacts"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing contacts.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/leads": {
            "get": {
                "summary": "List leads",
                "description": "Requires the `leads.manage` permission. Exposed fields: id, public_id, contact_id, title, source, source_entity_type, source_entity_id, owner_user_id, status, qualification_notes, loss_reason, qualified_at, closed_at, lock_version, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "contact_id",
                                "title",
                                "source",
                                "source_entity_type",
                                "source_entity_id",
                                "owner_user_id",
                                "status",
                                "qualification_notes",
                                "loss_reason",
                                "qualified_at",
                                "closed_at",
                                "lock_version",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated leads"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing leads.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/leads/{id}": {
            "get": {
                "summary": "Show one leads",
                "description": "Requires the `leads.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single leads"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing leads.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/quotations": {
            "get": {
                "summary": "List quotations",
                "description": "Requires the `quotations.view` permission. Exposed fields: id, public_id, contact_id, lead_id, price_list_id, customer_name_snapshot, customer_email_snapshot, company_name_snapshot, status, currency_code, context, engine_version, subtotal, adjustments, tax, total, customer_notes, internal_notes, submitted_at, closed_at, created_by_user_id, lock_version, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "contact_id",
                                "lead_id",
                                "price_list_id",
                                "customer_name_snapshot",
                                "customer_email_snapshot",
                                "company_name_snapshot",
                                "status",
                                "currency_code",
                                "context",
                                "engine_version",
                                "subtotal",
                                "adjustments",
                                "tax",
                                "total",
                                "customer_notes",
                                "internal_notes",
                                "submitted_at",
                                "closed_at",
                                "created_by_user_id",
                                "lock_version",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated quotations"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/quotations/{id}": {
            "get": {
                "summary": "Show one quotations",
                "description": "Requires the `quotations.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single quotations"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/project-requests": {
            "get": {
                "summary": "List project-requests",
                "description": "Requires the `quotations.view` permission. Exposed fields: id, public_id, name, phone, email, project_details, extra_data, attachment_media_id, status, lock_version, submitted_at, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "phone",
                                "email",
                                "project_details",
                                "extra_data",
                                "attachment_media_id",
                                "status",
                                "lock_version",
                                "submitted_at",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated project-requests"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/project-requests/{id}": {
            "get": {
                "summary": "Show one project-requests",
                "description": "Requires the `quotations.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single project-requests"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/project-request-page-settings": {
            "get": {
                "summary": "List project-request-page-settings",
                "description": "Requires the `quotations.view` permission. Exposed fields: id, setting_key, content, lock_version, updated_by_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "setting_key",
                                "content",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated project-request-page-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/project-request-page-settings/{id}": {
            "get": {
                "summary": "Show one project-request-page-settings",
                "description": "Requires the `quotations.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single project-request-page-settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/quotation-draft-items": {
            "get": {
                "summary": "List quotation-draft-items",
                "description": "Requires the `quotations.view` permission. Exposed fields: id, quotation_id, subject_type, subject_id, quantity, display_order.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "quotation_id",
                                "subject_type",
                                "subject_id",
                                "quantity",
                                "display_order"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated quotation-draft-items"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/quotation-draft-items/{id}": {
            "get": {
                "summary": "Show one quotation-draft-items",
                "description": "Requires the `quotations.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single quotation-draft-items"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/quotation-lines": {
            "get": {
                "summary": "List quotation-lines",
                "description": "Requires the `quotations.view` permission. Exposed fields: id, quotation_id, source_price_entry_public_id, source_type, source_id, description_snapshot, quantity, unit_amount, subtotal, adjustment, total, display_order, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "quotation_id",
                                "source_price_entry_public_id",
                                "source_type",
                                "source_id",
                                "description_snapshot",
                                "quantity",
                                "unit_amount",
                                "subtotal",
                                "adjustment",
                                "total",
                                "display_order",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated quotation-lines"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/quotation-lines/{id}": {
            "get": {
                "summary": "Show one quotation-lines",
                "description": "Requires the `quotations.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single quotation-lines"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing quotations.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/meeting-types": {
            "get": {
                "summary": "List meeting-types",
                "description": "Requires the `meetings.view` permission. Exposed fields: id, public_id, name, slug, duration_minutes, channel, location, is_active, lock_version, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "slug",
                                "duration_minutes",
                                "channel",
                                "location",
                                "is_active",
                                "lock_version",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated meeting-types"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/meeting-types/{id}": {
            "get": {
                "summary": "Show one meeting-types",
                "description": "Requires the `meetings.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single meeting-types"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/schedulable-assignees": {
            "get": {
                "summary": "List schedulable-assignees",
                "description": "Requires the `meetings.view` permission. Exposed fields: id, public_id, kind, user_id, reference_key, display_name, timezone, is_active, lock_version, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "kind",
                                "user_id",
                                "reference_key",
                                "display_name",
                                "timezone",
                                "is_active",
                                "lock_version",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated schedulable-assignees"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/schedulable-assignees/{id}": {
            "get": {
                "summary": "Show one schedulable-assignees",
                "description": "Requires the `meetings.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single schedulable-assignees"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/availability-rules": {
            "get": {
                "summary": "List availability-rules",
                "description": "Requires the `meetings.view` permission. Exposed fields: id, schedulable_assignee_id, weekday, local_start_time, local_end_time, effective_from, effective_until, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "schedulable_assignee_id",
                                "weekday",
                                "local_start_time",
                                "local_end_time",
                                "effective_from",
                                "effective_until",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated availability-rules"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/availability-rules/{id}": {
            "get": {
                "summary": "Show one availability-rules",
                "description": "Requires the `meetings.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single availability-rules"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/availability-exceptions": {
            "get": {
                "summary": "List availability-exceptions",
                "description": "Requires the `meetings.view` permission. Exposed fields: id, schedulable_assignee_id, kind, starts_at, ends_at, reason, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "schedulable_assignee_id",
                                "kind",
                                "starts_at",
                                "ends_at",
                                "reason",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated availability-exceptions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/availability-exceptions/{id}": {
            "get": {
                "summary": "Show one availability-exceptions",
                "description": "Requires the `meetings.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single availability-exceptions"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/meetings": {
            "get": {
                "summary": "List meetings",
                "description": "Requires the `meetings.view` permission. Exposed fields: id, public_id, meeting_type_id, schedulable_assignee_id, assignee_kind, assignee_name_snapshot, customer_name, customer_email, customer_phone, customer_timezone, original_local_date, original_local_start_time, original_local_end_time, scheduled_start_at, scheduled_end_at, booking_created_at, status, confirmation_status, notes, source, created_by_user_id, cancelled_at, cancellation_reason, lock_version, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "meeting_type_id",
                                "schedulable_assignee_id",
                                "assignee_kind",
                                "assignee_name_snapshot",
                                "customer_name",
                                "customer_email",
                                "customer_phone",
                                "customer_timezone",
                                "original_local_date",
                                "original_local_start_time",
                                "original_local_end_time",
                                "scheduled_start_at",
                                "scheduled_end_at",
                                "booking_created_at",
                                "status",
                                "confirmation_status",
                                "notes",
                                "source",
                                "created_by_user_id",
                                "cancelled_at",
                                "cancellation_reason",
                                "lock_version",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated meetings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/meetings/{id}": {
            "get": {
                "summary": "Show one meetings",
                "description": "Requires the `meetings.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single meetings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing meetings.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/ai-providers": {
            "get": {
                "summary": "List ai-providers",
                "description": "Requires the `ai.manage` permission. Exposed fields: id, public_id, name, driver, model, status, configuration, lock_version, last_health_checked_at, last_health_status, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "name",
                                "driver",
                                "model",
                                "status",
                                "configuration",
                                "lock_version",
                                "last_health_checked_at",
                                "last_health_status",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated ai-providers"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing ai.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/ai-providers/{id}": {
            "get": {
                "summary": "Show one ai-providers",
                "description": "Requires the `ai.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single ai-providers"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing ai.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/ai-agents": {
            "get": {
                "summary": "List ai-agents",
                "description": "Requires the `ai.manage` permission. Exposed fields: id, public_id, ai_provider_id, name, slug, system_instructions, allowed_subject_types, max_results, is_active, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "ai_provider_id",
                                "name",
                                "slug",
                                "system_instructions",
                                "allowed_subject_types",
                                "max_results",
                                "is_active",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated ai-agents"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing ai.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/ai-agents/{id}": {
            "get": {
                "summary": "Show one ai-agents",
                "description": "Requires the `ai.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single ai-agents"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing ai.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/ai-runs": {
            "get": {
                "summary": "List ai-runs",
                "description": "Requires the `ai.manage` permission. Exposed fields: id, public_id, ai_agent_id, actor_user_id, intent, structured_output, status, provider_request_id, input_tokens, output_tokens, latency_ms, failure_code, occurred_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "ai_agent_id",
                                "actor_user_id",
                                "intent",
                                "structured_output",
                                "status",
                                "provider_request_id",
                                "input_tokens",
                                "output_tokens",
                                "latency_ms",
                                "failure_code",
                                "occurred_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated ai-runs"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing ai.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/ai-runs/{id}": {
            "get": {
                "summary": "Show one ai-runs",
                "description": "Requires the `ai.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single ai-runs"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing ai.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/integration-connections": {
            "get": {
                "summary": "List integration-connections",
                "description": "Requires the `integrations.manage` permission. Exposed fields: id, public_id, scope, provider, name, allowed_events, consent_required, is_active, lock_version, last_health_checked_at, last_health_status, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "scope",
                                "provider",
                                "name",
                                "allowed_events",
                                "consent_required",
                                "is_active",
                                "lock_version",
                                "last_health_checked_at",
                                "last_health_status",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated integration-connections"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing integrations.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/integration-connections/{id}": {
            "get": {
                "summary": "Show one integration-connections",
                "description": "Requires the `integrations.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single integration-connections"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing integrations.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/integration-deliveries": {
            "get": {
                "summary": "List integration-deliveries",
                "description": "Requires the `integrations.manage` permission. Exposed fields: id, outbox_message_id, integration_connection_id, status, attempt_count, provider_message_id, error_code, attempted_at, delivered_at, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "outbox_message_id",
                                "integration_connection_id",
                                "status",
                                "attempt_count",
                                "provider_message_id",
                                "error_code",
                                "attempted_at",
                                "delivered_at",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated integration-deliveries"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing integrations.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/integration-deliveries/{id}": {
            "get": {
                "summary": "Show one integration-deliveries",
                "description": "Requires the `integrations.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single integration-deliveries"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing integrations.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/outbox-messages": {
            "get": {
                "summary": "List outbox-messages",
                "description": "Requires the `integrations.manage` permission. Exposed fields: id, event_id, type, consent, source, status, attempt_count, occurred_at, available_at, locked_at, published_at, last_error_code, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "event_id",
                                "type",
                                "consent",
                                "source",
                                "status",
                                "attempt_count",
                                "occurred_at",
                                "available_at",
                                "locked_at",
                                "published_at",
                                "last_error_code",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated outbox-messages"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing integrations.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/outbox-messages/{id}": {
            "get": {
                "summary": "Show one outbox-messages",
                "description": "Requires the `integrations.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single outbox-messages"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing integrations.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/seo-metadata": {
            "get": {
                "summary": "List seo-metadata",
                "description": "Requires the `seo.manage` permission. Exposed fields: id, public_id, route_name, resource_key, title, description, canonical_path, robots, open_graph_title, open_graph_description, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "route_name",
                                "resource_key",
                                "title",
                                "description",
                                "canonical_path",
                                "robots",
                                "open_graph_title",
                                "open_graph_description",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated seo-metadata"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing seo.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/seo-metadata/{id}": {
            "get": {
                "summary": "Show one seo-metadata",
                "description": "Requires the `seo.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single seo-metadata"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing seo.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/seo-redirects": {
            "get": {
                "summary": "List seo-redirects",
                "description": "Requires the `seo.manage` permission. Exposed fields: id, public_id, from_path, to_path, status_code, is_active, hit_count, lock_version, updated_by_user_id, created_at, updated_at, deleted_at. Soft-deleted records are excluded unless `trashed` is set.",
                "parameters": [
                    {
                        "name": "trashed",
                        "in": "query",
                        "required": false,
                        "description": "Include soft-deleted records. Defaults to `without`. Requires the resource's delete permission; ignored otherwise.",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "without",
                                "with",
                                "only"
                            ]
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "from_path",
                                "to_path",
                                "status_code",
                                "is_active",
                                "hit_count",
                                "lock_version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at",
                                "deleted_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated seo-redirects"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing seo.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/seo-redirects/{id}": {
            "get": {
                "summary": "Show one seo-redirects",
                "description": "Requires the `seo.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single seo-redirects"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing seo.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/settings": {
            "get": {
                "summary": "List settings",
                "description": "Requires the `settings.manage` permission. Exposed fields: id, public_id, scope, key, type, value, version, updated_by_user_id, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "scope",
                                "key",
                                "type",
                                "value",
                                "version",
                                "updated_by_user_id",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing settings.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/settings/{id}": {
            "get": {
                "summary": "Show one settings",
                "description": "Requires the `settings.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single settings"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing settings.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/audit-logs": {
            "get": {
                "summary": "List audit-logs",
                "description": "Requires the `audit-logs.view` permission. Exposed fields: id, actor_user_id, action, subject_type, subject_id, result, request_id, occurred_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "actor_user_id",
                                "action",
                                "subject_type",
                                "subject_id",
                                "result",
                                "request_id",
                                "occurred_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated audit-logs"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing audit-logs.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/audit-logs/{id}": {
            "get": {
                "summary": "Show one audit-logs",
                "description": "Requires the `audit-logs.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single audit-logs"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing audit-logs.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/audit-archives": {
            "get": {
                "summary": "List audit-archives",
                "description": "Requires the `audit-logs.view` permission. Exposed fields: id, public_id, cutoff_at, first_log_id, last_log_id, records_count, byte_size, created_by_user_id, created_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "cutoff_at",
                                "first_log_id",
                                "last_log_id",
                                "records_count",
                                "byte_size",
                                "created_by_user_id",
                                "created_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated audit-archives"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing audit-logs.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/audit-archives/{id}": {
            "get": {
                "summary": "Show one audit-archives",
                "description": "Requires the `audit-logs.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single audit-archives"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing audit-logs.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/manual-archives": {
            "get": {
                "summary": "List manual-archives",
                "description": "Requires the `audit-logs.view` permission. Exposed fields: id, public_id, title, description, original_name, mime_type, file_size, created_by_user_id, created_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "public_id",
                                "title",
                                "description",
                                "original_name",
                                "mime_type",
                                "file_size",
                                "created_by_user_id",
                                "created_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated manual-archives"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing audit-logs.view"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/manual-archives/{id}": {
            "get": {
                "summary": "Show one manual-archives",
                "description": "Requires the `audit-logs.view` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single manual-archives"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing audit-logs.view"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/notification-deliveries": {
            "get": {
                "summary": "List notification-deliveries",
                "description": "Requires the `notifications.manage` permission. Exposed fields: id, notification_id, channel, recipient_type, template, template_version, status, attempts, error_code, queued_at, last_attempt_at, sent_at, failed_at, created_at, updated_at.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "required": false,
                        "description": "Page number",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "per_page",
                        "in": "query",
                        "required": false,
                        "description": "Items per page (1-100, default 25)",
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Free-text search across the resource's searchable fields",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sort",
                        "in": "query",
                        "required": false,
                        "description": "Field to sort by; must be one of the exposed fields",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "id",
                                "notification_id",
                                "channel",
                                "recipient_type",
                                "template",
                                "template_version",
                                "status",
                                "attempts",
                                "error_code",
                                "queued_at",
                                "last_attempt_at",
                                "sent_at",
                                "failed_at",
                                "created_at",
                                "updated_at"
                            ]
                        }
                    },
                    {
                        "name": "direction",
                        "in": "query",
                        "required": false,
                        "description": "Sort direction",
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "filter",
                        "in": "query",
                        "style": "deepObject",
                        "explode": true,
                        "description": "Exact-match filters keyed by field, e.g. filter[status]=published. Unknown fields are ignored.",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Paginated notification-deliveries"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing notifications.manage"
                    },
                    "404": {
                        "description": "Unknown resource"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        },
        "/api/v1/resources/notification-deliveries/{id}": {
            "get": {
                "summary": "Show one notification-deliveries",
                "description": "Requires the `notifications.manage` permission.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "description": "Route key of the record",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Single notification-deliveries"
                    },
                    "401": {
                        "description": "Unauthenticated"
                    },
                    "403": {
                        "description": "Missing notifications.manage"
                    },
                    "404": {
                        "description": "Record not found"
                    },
                    "429": {
                        "description": "Rate limit exceeded"
                    }
                }
            }
        }
    }
}
