░▒▓████████████████████████████████▓▒░ ░▒▓█ ▓▒░ ░▒▓█ ~ S W A M P ~ ▓▒░ ░▒▓█ ▓▒░ ░▒▓████████████████████████████████▓▒░
lon105.truehost.cloud
LOCATION:
/home/ilrtztmy/.trash/docs.2
☗ ROOT
↻ REFRESH
✎ CARVE FLESH
EDITING: openapi.yaml
openapi: 3.0.3 info: title: JILMEK Roofing & Construction API version: 1.1.0 servers: - url: https://api.jilmekroofingandconstruction.com/api paths: /health: get: {summary: Health check, responses: {"200": {description: OK}}} /ready: get: {summary: Readiness check, responses: {"200": {description: Ready}, "503": {description: Not ready}}} /site-settings/public: get: {summary: Public site settings, responses: {"200": {description: Settings}}} /services: get: {summary: Published services, responses: {"200": {description: Services}}} /projects: get: summary: Published projects with project-only API image URLs responses: "200": description: Projects content: application/json: schema: type: object properties: success: {type: boolean} data: type: array items: {$ref: '#/components/schemas/Project'} /enquiries: post: summary: Submit a public enquiry requestBody: required: true content: application/json: schema: {$ref: '#/components/schemas/Enquiry'} responses: {"201": {description: Created}, "422": {description: Validation error}, "429": {description: Rate limited}} get: security: [{bearerAuth: []}] summary: List enquiries for the admin dashboard responses: {"200": {description: Enquiries}, "401": {description: Unauthorized}} /enquiries/{id}: patch: security: [{bearerAuth: []}] summary: Update an enquiry status parameters: - {name: id, in: path, required: true, schema: {type: integer}} responses: {"200": {description: Updated}, "401": {description: Unauthorized}} delete: security: [{bearerAuth: []}] summary: Delete an enquiry parameters: - {name: id, in: path, required: true, schema: {type: integer}} responses: {"200": {description: Deleted}, "401": {description: Unauthorized}} /auth/login: post: summary: Issue an administrator JWT requestBody: required: true content: application/json: schema: type: object required: [email, password] properties: email: {type: string, format: email} password: {type: string, format: password} responses: {"200": {description: JWT issued}, "401": {description: Invalid credentials}} /auth/me: get: security: [{bearerAuth: []}] summary: Validate the current administrator JWT responses: {"200": {description: Current administrator}, "401": {description: Unauthorized}} /projects/{slug}/images: post: security: [{bearerAuth: []}] summary: Attach a public media item to a project parameters: - {name: slug, in: path, required: true, schema: {type: string}} responses: {"200": {description: Attached}, "401": {description: Unauthorized}} /projects/{slug}/images/{media_id}: delete: security: [{bearerAuth: []}] summary: Remove a media item from a project parameters: - {name: slug, in: path, required: true, schema: {type: string}} - {name: media_id, in: path, required: true, schema: {type: integer}} responses: {"200": {description: Removed}, "401": {description: Unauthorized}} components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT schemas: ProjectImage: type: object properties: id: {type: integer} url: {type: string, format: uri} alt_text: {type: string, nullable: true} caption: {type: string, nullable: true} width: {type: integer, nullable: true} height: {type: integer, nullable: true} Project: type: object properties: id: {type: integer} slug: {type: string} title: {type: string} category: {type: string} summary: {type: string, nullable: true} description: {type: string, nullable: true} location: {type: string, nullable: true} cover_media_id: {type: integer, nullable: true} cover_image: {$ref: '#/components/schemas/ProjectImage', nullable: true} images: type: array items: {$ref: '#/components/schemas/ProjectImage'} Enquiry: type: object required: [full_name, phone, location, service_needed, message] properties: full_name: {type: string, maxLength: 180} phone: {type: string, maxLength: 50} email: {type: string, format: email} location: {type: string} service_needed: {type: string} message: {type: string} preferred_contact_method: {type: string} source_page: {type: string}
CANCEL
Name
Type
Size
Modified
Actions
↩ ..
DIR
—
—
📄 openapi.yaml
YAML
4.8 KB
2026-11-06 12:37
EDIT