{
    "openapi": "3.1.0",
    "info": {
        "title": "Mangarr API",
        "description": "",
        "version": "1.0.0"
    },
    "servers": [
        {
            "url": "/",
            "description": ""
        }
    ],
    "paths": {
        "/api/content-sources": {
            "get": {
                "operationId": "api_content-sources_get_collection",
                "tags": [
                    "ContentSource"
                ],
                "responses": {
                    "200": {
                        "description": "ContentSource collection",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/ContentSource"
                                    }
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/ContentSource.jsonld"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "type": "object",
                                            "properties": {
                                                "@id": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "@type": {
                                                    "type": "string"
                                                },
                                                "hydra:first": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:last": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:previous": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:next": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                }
                                            },
                                            "example": {
                                                "@id": "string",
                                                "type": "string",
                                                "hydra:first": "string",
                                                "hydra:last": "string",
                                                "hydra:previous": "string",
                                                "hydra:next": "string"
                                            }
                                        },
                                        "hydra:search": {
                                            "type": "object",
                                            "properties": {
                                                "@type": {
                                                    "type": "string"
                                                },
                                                "hydra:template": {
                                                    "type": "string"
                                                },
                                                "hydra:variableRepresentation": {
                                                    "type": "string"
                                                },
                                                "hydra:mapping": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "@type": {
                                                                "type": "string"
                                                            },
                                                            "variable": {
                                                                "type": "string"
                                                            },
                                                            "property": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "required": {
                                                                "type": "boolean"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/ContentSource"
                                    }
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "_embedded": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/ContentSource.jsonhal"
                                            }
                                        },
                                        "totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "itemsPerPage": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "_links": {
                                            "type": "object",
                                            "properties": {
                                                "self": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "first": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "last": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "next": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "previous": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    },
                                    "required": [
                                        "_links",
                                        "_embedded"
                                    ]
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/ContentSource"
                                    }
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/ContentSource"
                                    }
                                }
                            }
                        }
                    }
                },
                "summary": "Retrieves the collection of ContentSource resources.",
                "description": "Retrieves the collection of ContentSource resources.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "description": "The collection page number",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": true,
                        "schema": {
                            "type": "integer",
                            "default": 1
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "post": {
                "operationId": "api_content-sources_post",
                "tags": [
                    "ContentSource"
                ],
                "responses": {
                    "201": {
                        "description": "ContentSource resource created",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            }
                        },
                        "links": {}
                    },
                    "400": {
                        "description": "Invalid input"
                    },
                    "422": {
                        "description": "Unprocessable entity"
                    }
                },
                "summary": "Creates a ContentSource resource.",
                "description": "Creates a ContentSource resource.",
                "parameters": [],
                "requestBody": {
                    "description": "The new ContentSource resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/ld+json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource.jsonld"
                            }
                        },
                        "text/html": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/hal+json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource.jsonhal"
                            }
                        },
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/x-cbz": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/content-sources/export": {
            "get": {
                "operationId": "api_content-sourcesexport_get",
                "tags": [
                    "ContentSource"
                ],
                "responses": {
                    "200": {
                        "description": "ContentSource resource",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Retrieves a ContentSource resource.",
                "description": "Retrieves a ContentSource resource.",
                "parameters": [],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/content-sources/import": {
            "post": {
                "operationId": "api_content-sourcesimport_post",
                "tags": [
                    "ContentSource"
                ],
                "responses": {
                    "201": {
                        "description": "ContentSource resource created",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            }
                        },
                        "links": {}
                    },
                    "400": {
                        "description": "Invalid input"
                    },
                    "422": {
                        "description": "Unprocessable entity"
                    }
                },
                "summary": "Creates a ContentSource resource.",
                "description": "Creates a ContentSource resource.",
                "parameters": [],
                "requestBody": {
                    "description": "The new ContentSource resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/ld+json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource.jsonld"
                            }
                        },
                        "text/html": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/hal+json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource.jsonhal"
                            }
                        },
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/x-cbz": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/content-sources/{id}": {
            "get": {
                "operationId": "api_content-sources_id_get",
                "tags": [
                    "ContentSource"
                ],
                "responses": {
                    "200": {
                        "description": "ContentSource resource",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Retrieves a ContentSource resource.",
                "description": "Retrieves a ContentSource resource.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "GetContentSourceResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "put": {
                "operationId": "api_content-sources_id_put",
                "tags": [
                    "ContentSource"
                ],
                "responses": {
                    "200": {
                        "description": "ContentSource resource updated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContentSource"
                                }
                            }
                        },
                        "links": {}
                    },
                    "400": {
                        "description": "Invalid input"
                    },
                    "422": {
                        "description": "Unprocessable entity"
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Replaces the ContentSource resource.",
                "description": "Replaces the ContentSource resource.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "UpsertContentSourceResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "requestBody": {
                    "description": "The updated ContentSource resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/ld+json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource.jsonld"
                            }
                        },
                        "text/html": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/hal+json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource.jsonhal"
                            }
                        },
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        },
                        "application/x-cbz": {
                            "schema": {
                                "$ref": "#/components/schemas/ContentSource"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/conversions/convert": {
            "post": {
                "operationId": "api_conversionsconvert_post",
                "tags": [
                    "Conversion"
                ],
                "responses": {
                    "200": {
                        "description": "File converted successfully",
                        "content": {
                            "application/x-cbz": {
                                "schema": {
                                    "type": "string",
                                    "format": "binary"
                                }
                            }
                        }
                    }
                },
                "summary": "Convert comic book file to CBZ",
                "description": "Converts a CBR or CBZ file to CBZ format and returns the converted file for download",
                "parameters": [],
                "requestBody": {
                    "description": "",
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "file"
                                ],
                                "properties": {
                                    "file": {
                                        "type": "string",
                                        "format": "binary",
                                        "description": "Comic book file to convert (CBR, CBZ, max 150MB)"
                                    }
                                }
                            }
                        }
                    },
                    "required": false
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/jobs": {
            "get": {
                "operationId": "api_jobs_get_collection",
                "tags": [
                    "Job"
                ],
                "responses": {
                    "200": {
                        "description": "Job collection",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Job"
                                    }
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/Job.jsonld"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "type": "object",
                                            "properties": {
                                                "@id": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "@type": {
                                                    "type": "string"
                                                },
                                                "hydra:first": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:last": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:previous": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:next": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                }
                                            },
                                            "example": {
                                                "@id": "string",
                                                "type": "string",
                                                "hydra:first": "string",
                                                "hydra:last": "string",
                                                "hydra:previous": "string",
                                                "hydra:next": "string"
                                            }
                                        },
                                        "hydra:search": {
                                            "type": "object",
                                            "properties": {
                                                "@type": {
                                                    "type": "string"
                                                },
                                                "hydra:template": {
                                                    "type": "string"
                                                },
                                                "hydra:variableRepresentation": {
                                                    "type": "string"
                                                },
                                                "hydra:mapping": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "@type": {
                                                                "type": "string"
                                                            },
                                                            "variable": {
                                                                "type": "string"
                                                            },
                                                            "property": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "required": {
                                                                "type": "boolean"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Job"
                                    }
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "_embedded": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/Job.jsonhal"
                                            }
                                        },
                                        "totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "itemsPerPage": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "_links": {
                                            "type": "object",
                                            "properties": {
                                                "self": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "first": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "last": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "next": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "previous": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    },
                                    "required": [
                                        "_links",
                                        "_embedded"
                                    ]
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Job"
                                    }
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Job"
                                    }
                                }
                            }
                        }
                    }
                },
                "summary": "Retrieves the collection of Job resources.",
                "description": "Retrieves the collection of Job resources.",
                "parameters": [
                    {
                        "name": "status",
                        "in": "query",
                        "description": "Filtrer par status (s\u00e9par\u00e9s par des virgules pour plusieurs statuts, ex: \"pending,in_progress\" ou sous forme de tableau avec \"status[]=\")",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "oneOf": [
                                {
                                    "type": "string",
                                    "example": "pending,in_progress"
                                },
                                {
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "enum": [
                                            "pending",
                                            "in_progress",
                                            "completed",
                                            "failed",
                                            "cancelled"
                                        ]
                                    },
                                    "example": [
                                        "pending",
                                        "in_progress"
                                    ]
                                }
                            ]
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "type",
                        "in": "query",
                        "description": "Filtrer par type de job (ex: scraping_job)",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "createdAfter",
                        "in": "query",
                        "description": "Date de cr\u00e9ation minimum (format ISO8601)",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "createdBefore",
                        "in": "query",
                        "description": "Date de cr\u00e9ation maximum (format ISO8601)",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string",
                            "format": "date-time"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Num\u00e9ro de la page",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "default": 1,
                            "minimum": 1
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Nombre d'\u00e9l\u00e9ments par page",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "default": 20,
                            "minimum": 1
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "sortBy",
                        "in": "query",
                        "description": "Champ de tri",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "createdAt",
                                "type",
                                "status"
                            ],
                            "default": "createdAt"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "sortOrder",
                        "in": "query",
                        "description": "Ordre de tri",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "ASC",
                                "DESC"
                            ],
                            "default": "DESC"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/manga/chapters/fetch": {
            "post": {
                "operationId": "api_mangachaptersfetch_post",
                "tags": [
                    "Mangadex"
                ],
                "responses": {
                    "202": {
                        "description": "Demande de r\u00e9cup\u00e9ration accept\u00e9e et mise en file d'attente"
                    },
                    "422": {
                        "description": "Donn\u00e9es de validation invalides"
                    }
                },
                "summary": "R\u00e9cup\u00e9rer les chapitres d'un manga",
                "description": "Lance le processus de r\u00e9cup\u00e9ration des chapitres depuis la source externe pour un manga donn\u00e9",
                "parameters": [],
                "requestBody": {
                    "description": "Donn\u00e9es requises pour r\u00e9cup\u00e9rer les chapitres",
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "mangaId": {
                                        "type": "string",
                                        "description": "L'identifiant unique du manga"
                                    }
                                },
                                "required": [
                                    "mangaId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/manga/chapters/{id}": {
            "delete": {
                "operationId": "delete_chapter",
                "tags": [
                    "Chapters"
                ],
                "responses": {
                    "204": {
                        "description": "Chapter successfully deleted"
                    },
                    "404": {
                        "description": "Chapter not found"
                    }
                },
                "summary": "Delete a chapter (soft delete)",
                "description": "Marks a chapter as deleted by setting its visibility to false",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "The chapter ID",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/manga/chapters/{id}/cbz": {
            "delete": {
                "operationId": "delete_cbz",
                "tags": [
                    "Cbz"
                ],
                "responses": {
                    "204": {
                        "description": "CBZ file successfully deleted"
                    },
                    "404": {
                        "description": "Chapter or CBZ file not found"
                    }
                },
                "summary": "Delete chapter CBZ file",
                "description": "Removes the CBZ file for a specific chapter and updates the chapter accordingly",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "The chapter ID",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/manga/chapters/{id}/download": {
            "get": {
                "operationId": "download_chapter_cbz",
                "tags": [
                    "Cbz"
                ],
                "responses": {
                    "204": {
                        "description": "Cbz resource",
                        "content": {
                            "application/json": {
                                "schema": {}
                            },
                            "application/ld+json": {
                                "schema": {}
                            },
                            "text/html": {
                                "schema": {}
                            },
                            "application/hal+json": {
                                "schema": {}
                            },
                            "multipart/form-data": {
                                "schema": {}
                            },
                            "application/x-cbz": {
                                "schema": {}
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Retrieves a Cbz resource.",
                "description": "Retrieves a Cbz resource.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "DownloadCbzResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/manga/{mangaId}/chapters/refresh": {
            "post": {
                "operationId": "api_manga_mangaIdchaptersrefresh_post",
                "tags": [
                    "MangaRefresh"
                ],
                "responses": {
                    "202": {
                        "description": "Demande de refresh accept\u00e9e et mise en file d'attente"
                    },
                    "404": {
                        "description": "Manga non trouv\u00e9"
                    }
                },
                "summary": "Rafra\u00eechir les chapitres d'un manga",
                "description": "Lance la synchronisation incr\u00e9mentale avec scraping automatique des nouveaux chapitres",
                "parameters": [
                    {
                        "name": "mangaId",
                        "in": "path",
                        "description": "L'identifiant unique du manga",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "requestBody": {
                    "description": "The new MangaRefresh resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/MangaRefresh"
                            }
                        },
                        "application/ld+json": {
                            "schema": {
                                "$ref": "#/components/schemas/MangaRefresh.jsonld"
                            }
                        },
                        "text/html": {
                            "schema": {
                                "$ref": "#/components/schemas/MangaRefresh"
                            }
                        },
                        "application/hal+json": {
                            "schema": {
                                "$ref": "#/components/schemas/MangaRefresh.jsonhal"
                            }
                        },
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/MangaRefresh"
                            }
                        },
                        "application/x-cbz": {
                            "schema": {
                                "$ref": "#/components/schemas/MangaRefresh"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/manga/{mangaId}/monitoring/toggle": {
            "post": {
                "operationId": "api_manga_mangaIdmonitoringtoggle_post",
                "tags": [
                    "MangaMonitoring"
                ],
                "responses": {
                    "204": {
                        "description": "Monitoring modifi\u00e9 avec succ\u00e8s"
                    },
                    "404": {
                        "description": "Manga non trouv\u00e9"
                    },
                    "422": {
                        "description": "Donn\u00e9es de validation invalides"
                    }
                },
                "summary": "Activer/D\u00e9sactiver le monitoring d'un manga",
                "description": "Active ou d\u00e9sactive le monitoring automatique pour recevoir les nouveaux chapitres",
                "parameters": [
                    {
                        "name": "mangaId",
                        "in": "path",
                        "description": "L'identifiant unique du manga",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "requestBody": {
                    "description": "\u00c9tat du monitoring \u00e0 appliquer",
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "enabled": {
                                        "type": "boolean",
                                        "description": "True pour activer le monitoring, false pour le d\u00e9sactiver",
                                        "example": true
                                    }
                                },
                                "required": [
                                    "enabled"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangadex-search": {
            "get": {
                "operationId": "api_mangadex-search_get",
                "tags": [
                    "Mangadex"
                ],
                "responses": {
                    "200": {
                        "description": "Mangadex resource",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex.MangaSearchCollection"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex.MangaSearchCollection.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex.MangaSearchCollection"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex.MangaSearchCollection.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex.MangaSearchCollection"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex.MangaSearchCollection"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Retrieves a Mangadex resource.",
                "description": "Retrieves a Mangadex resource.",
                "parameters": [
                    {
                        "name": "title",
                        "in": "query",
                        "description": "The title to search for",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas": {
            "get": {
                "operationId": "api_mangas_get_collection",
                "tags": [
                    "Manga"
                ],
                "responses": {
                    "200": {
                        "description": "Manga collection",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Manga.MangaCollection"
                                    }
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "hydra:member": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/Manga.MangaCollection.jsonld"
                                            }
                                        },
                                        "hydra:totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "hydra:view": {
                                            "type": "object",
                                            "properties": {
                                                "@id": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "@type": {
                                                    "type": "string"
                                                },
                                                "hydra:first": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:last": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:previous": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                },
                                                "hydra:next": {
                                                    "type": "string",
                                                    "format": "iri-reference"
                                                }
                                            },
                                            "example": {
                                                "@id": "string",
                                                "type": "string",
                                                "hydra:first": "string",
                                                "hydra:last": "string",
                                                "hydra:previous": "string",
                                                "hydra:next": "string"
                                            }
                                        },
                                        "hydra:search": {
                                            "type": "object",
                                            "properties": {
                                                "@type": {
                                                    "type": "string"
                                                },
                                                "hydra:template": {
                                                    "type": "string"
                                                },
                                                "hydra:variableRepresentation": {
                                                    "type": "string"
                                                },
                                                "hydra:mapping": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object",
                                                        "properties": {
                                                            "@type": {
                                                                "type": "string"
                                                            },
                                                            "variable": {
                                                                "type": "string"
                                                            },
                                                            "property": {
                                                                "type": [
                                                                    "string",
                                                                    "null"
                                                                ]
                                                            },
                                                            "required": {
                                                                "type": "boolean"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    },
                                    "required": [
                                        "hydra:member"
                                    ]
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Manga.MangaCollection"
                                    }
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "_embedded": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/Manga.MangaCollection.jsonhal"
                                            }
                                        },
                                        "totalItems": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "itemsPerPage": {
                                            "type": "integer",
                                            "minimum": 0
                                        },
                                        "_links": {
                                            "type": "object",
                                            "properties": {
                                                "self": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "first": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "last": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "next": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                },
                                                "previous": {
                                                    "type": "object",
                                                    "properties": {
                                                        "href": {
                                                            "type": "string",
                                                            "format": "iri-reference"
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    },
                                    "required": [
                                        "_links",
                                        "_embedded"
                                    ]
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Manga.MangaCollection"
                                    }
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Manga.MangaCollection"
                                    }
                                }
                            }
                        }
                    }
                },
                "summary": "Retrieves the collection of Manga resources.",
                "description": "Retrieves the collection of Manga resources.",
                "parameters": [
                    {
                        "name": "page",
                        "in": "query",
                        "description": "The collection page number",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": true,
                        "schema": {
                            "type": "integer",
                            "default": 1
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/by-id/{id}": {
            "get": {
                "operationId": "api_mangasby-id_id_get",
                "tags": [
                    "Manga"
                ],
                "responses": {
                    "200": {
                        "description": "Manga resource",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Retrieves a Manga resource.",
                "description": "Retrieves a Manga resource.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "The manga identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/by-slug/{slug}": {
            "get": {
                "operationId": "get_manga_by_slug",
                "tags": [
                    "Manga"
                ],
                "responses": {
                    "200": {
                        "description": "Manga resource",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.MangaDetail"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Retrieves a Manga resource.",
                "description": "Retrieves a Manga resource.",
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "description": "GetMangaBySlugResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/create": {
            "post": {
                "operationId": "api_mangascreate_post",
                "tags": [
                    "Manga"
                ],
                "responses": {
                    "201": {
                        "description": "Manga resource created",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga"
                                }
                            }
                        },
                        "links": {}
                    },
                    "400": {
                        "description": "Invalid input"
                    },
                    "422": {
                        "description": "Unprocessable entity"
                    }
                },
                "summary": "Create a new manga directly",
                "description": "Creates a new manga with provided data",
                "parameters": [],
                "requestBody": {
                    "description": "The new Manga resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga"
                            }
                        },
                        "application/ld+json": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga.jsonld"
                            }
                        },
                        "text/html": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga"
                            }
                        },
                        "application/hal+json": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga.jsonhal"
                            }
                        },
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga"
                            }
                        },
                        "application/x-cbz": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/create-from-mangadex": {
            "post": {
                "operationId": "api_mangascreate-from-mangadex_post",
                "tags": [
                    "Mangadex"
                ],
                "responses": {
                    "201": {
                        "description": "Mangadex resource created",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Mangadex"
                                }
                            }
                        },
                        "links": {}
                    },
                    "400": {
                        "description": "Invalid input"
                    },
                    "422": {
                        "description": "Unprocessable entity"
                    }
                },
                "summary": "Create a new manga from Mangadex",
                "description": "Creates a new manga by fetching its data from Mangadex using an external ID",
                "parameters": [],
                "requestBody": {
                    "description": "",
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "required": [
                                    "externalId"
                                ],
                                "properties": {
                                    "externalId": {
                                        "type": "string",
                                        "description": "The Mangadex ID of the manga"
                                    }
                                }
                            }
                        }
                    },
                    "required": false
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/search": {
            "get": {
                "operationId": "api_mangassearch_get",
                "tags": [
                    "Manga"
                ],
                "responses": {
                    "200": {
                        "description": "R\u00e9sultats de la recherche",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "items": {
                                            "type": "array",
                                            "items": {
                                                "$ref": "#/components/schemas/MangaSearchItem"
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Param\u00e8tres de recherche invalides"
                    }
                },
                "summary": "Recherche des mangas dans la biblioth\u00e8que locale",
                "description": "Recherche des mangas par titre, slug ou auteur (minimum 3 caract\u00e8res)",
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "description": "Terme de recherche (minimum 3 caract\u00e8res)",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string",
                            "minLength": 3
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "Num\u00e9ro de page",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "default": 1,
                            "minimum": 1
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Nombre de r\u00e9sultats par page",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "default": 20,
                            "minimum": 1,
                            "maximum": 50
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/{id}/chapters": {
            "get": {
                "operationId": "api_mangas_idchapters_get",
                "tags": [
                    "Chapters"
                ],
                "responses": {
                    "200": {
                        "description": "Chapters resource",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Chapters.ChapterCollection"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Chapters.ChapterCollection.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Chapters.ChapterCollection"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Chapters.ChapterCollection.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Chapters.ChapterCollection"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Chapters.ChapterCollection"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Retrieves a Chapters resource.",
                "description": "Retrieves a Chapters resource.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "The manga identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "The page number",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "default": 1
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "Number of items per page",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "default": 20
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "sortOrder",
                        "in": "query",
                        "description": "Sort order for chapters",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ],
                            "default": "desc"
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/{id}/edit": {
            "put": {
                "operationId": "api_mangas_idedit_put",
                "tags": [
                    "Manga"
                ],
                "responses": {
                    "200": {
                        "description": "Manga resource updated",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Manga"
                                }
                            }
                        },
                        "links": {}
                    },
                    "400": {
                        "description": "Invalid input"
                    },
                    "422": {
                        "description": "Unprocessable entity"
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Edit an existing manga",
                "description": "Updates an existing manga with provided data (partial update supported)",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "EditMangaResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "requestBody": {
                    "description": "The updated Manga resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga"
                            }
                        },
                        "application/ld+json": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga.jsonld"
                            }
                        },
                        "text/html": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga"
                            }
                        },
                        "application/hal+json": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga.jsonhal"
                            }
                        },
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga"
                            }
                        },
                        "application/x-cbz": {
                            "schema": {
                                "$ref": "#/components/schemas/Manga"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/{id}/preferred-sources": {
            "get": {
                "operationId": "api_mangas_idpreferred-sources_get",
                "tags": [
                    "Scraping"
                ],
                "responses": {
                    "200": {
                        "description": "Sources r\u00e9cup\u00e9r\u00e9es avec succ\u00e8s",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "mangaId": {
                                            "type": "string"
                                        },
                                        "hasPreferredSources": {
                                            "type": "boolean"
                                        },
                                        "sources": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "id": {
                                                        "type": "string"
                                                    },
                                                    "name": {
                                                        "type": "string"
                                                    },
                                                    "baseUrl": {
                                                        "type": "string"
                                                    },
                                                    "description": {
                                                        "type": "string"
                                                    },
                                                    "isActive": {
                                                        "type": "boolean"
                                                    }
                                                }
                                            }
                                        }
                                    }
                                },
                                "example": {
                                    "mangaId": "1",
                                    "hasPreferredSources": true,
                                    "sources": [
                                        {
                                            "id": "1",
                                            "name": "MangaDex",
                                            "baseUrl": "https://mangadex.org",
                                            "description": "Source principale",
                                            "isActive": true
                                        },
                                        {
                                            "id": "2",
                                            "name": "MangaKakalot",
                                            "baseUrl": "https://mangakakalot.com",
                                            "description": "Source secondaire",
                                            "isActive": true
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "R\u00e9cup\u00e9rer les sources pr\u00e9f\u00e9r\u00e9es d'un manga",
                "description": "Retourne les sources pr\u00e9f\u00e9r\u00e9es configur\u00e9es pour un manga, ou toutes les sources disponibles si aucune pr\u00e9f\u00e9rence d\u00e9finie",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "GetMangaPreferredSourcesResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "post": {
                "operationId": "api_mangas_idpreferred-sources_post",
                "tags": [
                    "Scraping"
                ],
                "responses": {
                    "200": {
                        "description": "Scraping resource created",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping"
                                }
                            }
                        },
                        "links": {}
                    },
                    "400": {
                        "description": "Invalid input"
                    },
                    "422": {
                        "description": "Unprocessable entity"
                    }
                },
                "summary": "Configurer les sources pr\u00e9f\u00e9r\u00e9es d'un manga",
                "description": "D\u00e9finit l'ordre de priorit\u00e9 des sources de scraping pour un manga. Format attendu: {\"sourceIds\": [\"source1\", \"source2\"]}",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "SetMangaPreferredSourcesResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "requestBody": {
                    "description": "",
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "sourceIds": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                }
                            },
                            "example": {
                                "sourceIds": [
                                    "1",
                                    "2"
                                ]
                            }
                        }
                    },
                    "required": false
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/mangas/{id}/volumes/{volume}/download": {
            "get": {
                "operationId": "download_manga_volume",
                "tags": [
                    "Cbz"
                ],
                "responses": {
                    "204": {
                        "description": "Cbz resource",
                        "content": {
                            "application/json": {
                                "schema": {}
                            },
                            "application/ld+json": {
                                "schema": {}
                            },
                            "text/html": {
                                "schema": {}
                            },
                            "application/hal+json": {
                                "schema": {}
                            },
                            "multipart/form-data": {
                                "schema": {}
                            },
                            "application/x-cbz": {
                                "schema": {}
                            }
                        }
                    },
                    "404": {
                        "description": "Resource not found"
                    }
                },
                "summary": "Retrieves a Cbz resource.",
                "description": "Retrieves a Cbz resource.",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "DownloadVolumeResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "volume",
                        "in": "path",
                        "description": "DownloadVolumeResource identifier",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/reader/chapter/{chapterId}": {
            "get": {
                "operationId": "api_readerchapter_chapterId_get",
                "tags": [
                    "Reader"
                ],
                "responses": {
                    "200": {
                        "description": "Contexte du chapitre",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "id": {
                                            "type": "string"
                                        },
                                        "title": {
                                            "type": "string"
                                        },
                                        "number": {
                                            "type": "string"
                                        },
                                        "manga": {
                                            "type": "object",
                                            "properties": {
                                                "id": {
                                                    "type": "string"
                                                },
                                                "title": {
                                                    "type": "string"
                                                }
                                            }
                                        },
                                        "navigation": {
                                            "type": "object",
                                            "properties": {
                                                "previous": {
                                                    "type": "object",
                                                    "nullable": true,
                                                    "properties": {
                                                        "id": {
                                                            "type": "string"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        }
                                                    }
                                                },
                                                "next": {
                                                    "type": "object",
                                                    "nullable": true,
                                                    "properties": {
                                                        "id": {
                                                            "type": "string"
                                                        },
                                                        "number": {
                                                            "type": "string"
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Chapitre non trouv\u00e9"
                    }
                },
                "summary": "R\u00e9cup\u00e8re le contexte d'un chapitre",
                "description": "Retourne les m\u00e9tadonn\u00e9es du chapitre et sa navigation",
                "parameters": [
                    {
                        "name": "chapterId",
                        "in": "path",
                        "description": "",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/reader/chapter/{chapterId}/page/{pageNumber}": {
            "get": {
                "operationId": "api_readerchapter_chapterIdpage_pageNumber_get",
                "tags": [
                    "Reader"
                ],
                "responses": {
                    "200": {
                        "description": "Page du chapitre",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "id": {
                                            "type": "string"
                                        },
                                        "pageNumber": {
                                            "type": "integer"
                                        },
                                        "base64Content": {
                                            "type": "string",
                                            "description": "Contenu de l'image en base64"
                                        },
                                        "mimeType": {
                                            "type": "string",
                                            "example": "image/jpeg"
                                        },
                                        "dimensions": {
                                            "type": "object",
                                            "properties": {
                                                "width": {
                                                    "type": "integer"
                                                },
                                                "height": {
                                                    "type": "integer"
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Chapitre ou page non trouv\u00e9"
                    }
                },
                "summary": "R\u00e9cup\u00e8re une page sp\u00e9cifique d'un chapitre",
                "description": "Retourne le contenu d'une page en base64 avec ses m\u00e9tadonn\u00e9es",
                "parameters": [
                    {
                        "name": "chapterId",
                        "in": "path",
                        "description": "L'identifiant du chapitre",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "pageNumber",
                        "in": "path",
                        "description": "Le num\u00e9ro de la page \u00e0 r\u00e9cup\u00e9rer",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "minimum": 1
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/reader/chapter/{chapterId}/pages": {
            "get": {
                "operationId": "api_readerchapter_chapterIdpages_get",
                "tags": [
                    "Reader"
                ],
                "responses": {
                    "200": {
                        "description": "Collection pagin\u00e9e des pages du chapitre",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "pages": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "number": {
                                                        "type": "integer"
                                                    },
                                                    "dimensions": {
                                                        "type": "object",
                                                        "properties": {
                                                            "width": {
                                                                "type": "integer"
                                                            },
                                                            "height": {
                                                                "type": "integer"
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        },
                                        "totalItems": {
                                            "type": "integer"
                                        },
                                        "currentPage": {
                                            "type": "integer"
                                        },
                                        "itemsPerPage": {
                                            "type": "integer"
                                        },
                                        "totalPages": {
                                            "type": "integer"
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Chapitre non trouv\u00e9"
                    }
                },
                "summary": "R\u00e9cup\u00e8re les pages d'un chapitre",
                "description": "Retourne une collection pagin\u00e9e des pages du chapitre",
                "parameters": [
                    {
                        "name": "chapterId",
                        "in": "path",
                        "description": "",
                        "required": true,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "string"
                        },
                        "style": "simple",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "default": 1
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    },
                    {
                        "name": "itemsPerPage",
                        "in": "query",
                        "description": "",
                        "required": false,
                        "deprecated": false,
                        "allowEmptyValue": false,
                        "schema": {
                            "type": "integer",
                            "default": 20
                        },
                        "style": "form",
                        "explode": false,
                        "allowReserved": false
                    }
                ],
                "deprecated": false
            },
            "parameters": []
        },
        "/api/scraping/chapters": {
            "post": {
                "operationId": "api_scrapingchapters_post",
                "tags": [
                    "Scraping"
                ],
                "responses": {
                    "202": {
                        "description": "Scraping resource created",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping"
                                }
                            },
                            "application/ld+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping.jsonld"
                                }
                            },
                            "text/html": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping"
                                }
                            },
                            "application/hal+json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping.jsonhal"
                                }
                            },
                            "multipart/form-data": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping"
                                }
                            },
                            "application/x-cbz": {
                                "schema": {
                                    "$ref": "#/components/schemas/Scraping"
                                }
                            }
                        },
                        "links": {}
                    },
                    "400": {
                        "description": "Invalid input"
                    },
                    "422": {
                        "description": "Unprocessable entity"
                    }
                },
                "summary": "Creates a Scraping resource.",
                "description": "Creates a Scraping resource.",
                "parameters": [],
                "requestBody": {
                    "description": "The new Scraping resource",
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Scraping"
                            }
                        },
                        "application/ld+json": {
                            "schema": {
                                "$ref": "#/components/schemas/Scraping.jsonld"
                            }
                        },
                        "text/html": {
                            "schema": {
                                "$ref": "#/components/schemas/Scraping"
                            }
                        },
                        "application/hal+json": {
                            "schema": {
                                "$ref": "#/components/schemas/Scraping.jsonhal"
                            }
                        },
                        "multipart/form-data": {
                            "schema": {
                                "$ref": "#/components/schemas/Scraping"
                            }
                        },
                        "application/x-cbz": {
                            "schema": {
                                "$ref": "#/components/schemas/Scraping"
                            }
                        }
                    },
                    "required": true
                },
                "deprecated": false
            },
            "parameters": []
        },
        "/api/scraping/test-configuration": {
            "post": {
                "operationId": "api_scrapingtest-configuration_post",
                "tags": [
                    "Scraping",
                    "Configuration"
                ],
                "responses": {
                    "200": {
                        "description": "Test de configuration r\u00e9ussi",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "description": "Indique si le test a r\u00e9ussi"
                                        },
                                        "imageUrls": {
                                            "type": "array",
                                            "items": {
                                                "type": "string",
                                                "format": "uri"
                                            },
                                            "description": "Liste des URLs d'images trouv\u00e9es"
                                        },
                                        "totalImages": {
                                            "type": "integer",
                                            "description": "Nombre total d'images trouv\u00e9es"
                                        },
                                        "testedUrl": {
                                            "type": "string",
                                            "format": "uri",
                                            "description": "URL qui a \u00e9t\u00e9 test\u00e9e"
                                        },
                                        "scrapingType": {
                                            "type": "string",
                                            "description": "Type de scraping utilis\u00e9"
                                        },
                                        "errors": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "type": {
                                                        "type": "string",
                                                        "description": "Type d'erreur (selector_error, url_error, general_error)"
                                                    },
                                                    "field": {
                                                        "type": "string",
                                                        "description": "Champ concern\u00e9 par l'erreur"
                                                    },
                                                    "message": {
                                                        "type": "string",
                                                        "description": "Message d'erreur d\u00e9taill\u00e9"
                                                    },
                                                    "suggestion": {
                                                        "type": "string",
                                                        "description": "Suggestion pour corriger l'erreur"
                                                    }
                                                }
                                            },
                                            "description": "Liste des erreurs d\u00e9taill\u00e9es (vide en cas de succ\u00e8s)"
                                        }
                                    }
                                },
                                "examples": {
                                    "succes": {
                                        "summary": "Test r\u00e9ussi",
                                        "value": {
                                            "success": true,
                                            "imageUrls": [
                                                "https://mangasite.example.com/images/chapter1/page1.jpg",
                                                "https://mangasite.example.com/images/chapter1/page2.jpg",
                                                "https://mangasite.example.com/images/chapter1/page3.jpg"
                                            ],
                                            "totalImages": 3,
                                            "testedUrl": "https://mangasite.example.com/manga/one-piece/chapter/1",
                                            "scrapingType": "html",
                                            "errors": []
                                        }
                                    },
                                    "echec_selecteur": {
                                        "summary": "\u00c9chec - S\u00e9lecteur invalide",
                                        "value": {
                                            "success": false,
                                            "imageUrls": [],
                                            "totalImages": 0,
                                            "testedUrl": "https://mangasite.example.com/manga/one-piece/chapter/1",
                                            "scrapingType": "html",
                                            "errors": [
                                                {
                                                    "type": "selector_error",
                                                    "field": "imageSelector",
                                                    "message": "Le s\u00e9lecteur d'image '.invalid-selector' ne trouve aucun \u00e9l\u00e9ment sur la page",
                                                    "suggestion": "V\u00e9rifiez que le s\u00e9lecteur CSS est correct et qu'il correspond aux \u00e9l\u00e9ments d'image sur la page"
                                                }
                                            ]
                                        }
                                    },
                                    "echec_url": {
                                        "summary": "\u00c9chec - URL inaccessible",
                                        "value": {
                                            "success": false,
                                            "imageUrls": [],
                                            "totalImages": 0,
                                            "testedUrl": "https://invalid-site.example.com/chapter/1",
                                            "scrapingType": "html",
                                            "errors": [
                                                {
                                                    "type": "url_error",
                                                    "field": "testUrl",
                                                    "message": "Impossible d'acc\u00e9der \u00e0 l'URL de test: https://invalid-site.example.com/chapter/1",
                                                    "suggestion": "V\u00e9rifiez que l'URL est correcte et accessible, et que le chapitre existe"
                                                }
                                            ]
                                        }
                                    }
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Erreur de validation des donn\u00e9es d'entr\u00e9e",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object",
                                    "properties": {
                                        "type": {
                                            "type": "string",
                                            "example": "https://tools.ietf.org/html/rfc2616#section-10"
                                        },
                                        "title": {
                                            "type": "string",
                                            "example": "An error occurred"
                                        },
                                        "detail": {
                                            "type": "string",
                                            "example": "baseUrl: L'URL de base doit \u00eatre une URL valide"
                                        },
                                        "violations": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "properties": {
                                                    "propertyPath": {
                                                        "type": "string",
                                                        "description": "Champ contenant l'erreur"
                                                    },
                                                    "message": {
                                                        "type": "string",
                                                        "description": "Message d'erreur de validation"
                                                    }
                                                }
                                            }
                                        }
                                    }
                                },
                                "example": {
                                    "type": "https://symfony.com/errors/validation",
                                    "title": "Validation Failed",
                                    "detail": "baseUrl: L'URL de base doit \u00eatre une URL valide",
                                    "violations": [
                                        {
                                            "propertyPath": "baseUrl",
                                            "message": "L'URL de base doit \u00eatre une URL valide"
                                        }
                                    ]
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Invalid input"
                    }
                },
                "summary": "Tester une configuration de scraper",
                "description": "Teste une configuration de scraper en temps r\u00e9el sans l'enregistrer dans la base de donn\u00e9es. Cette API permet de valider les param\u00e8tres de scraping et de voir imm\u00e9diatement les URLs d'images qui seraient extraites.",
                "parameters": [],
                "requestBody": {
                    "description": "Configuration du scraper \u00e0 tester",
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "baseUrl": {
                                        "type": "string",
                                        "format": "uri",
                                        "description": "URL de base du site web source",
                                        "example": "https://mangasite.example.com"
                                    },
                                    "chapterUrlFormat": {
                                        "type": "string",
                                        "description": "Format d'URL pour acc\u00e9der aux chapitres avec placeholders {slug} et {chapter}",
                                        "example": "https://mangasite.example.com/manga/{slug}/chapter/{chapter}"
                                    },
                                    "scrapingType": {
                                        "type": "string",
                                        "enum": [
                                            "html",
                                            "javascript"
                                        ],
                                        "description": "Type de scraping \u00e0 utiliser (html pour les sites statiques, javascript pour les sites dynamiques)",
                                        "example": "html"
                                    },
                                    "testUrl": {
                                        "type": "string",
                                        "format": "uri",
                                        "description": "URL compl\u00e8te d'un chapitre existant \u00e0 utiliser pour le test",
                                        "example": "https://mangasite.example.com/manga/one-piece/chapter/1"
                                    },
                                    "mangaSlug": {
                                        "type": "string",
                                        "description": "Slug du manga utilis\u00e9 dans les URLs (sera utilis\u00e9 pour construire les URLs futures)",
                                        "example": "one-piece"
                                    },
                                    "chapterNumber": {
                                        "type": "number",
                                        "minimum": 0,
                                        "description": "Num\u00e9ro du chapitre \u00e0 tester",
                                        "example": 1
                                    },
                                    "imageSelector": {
                                        "type": "string",
                                        "nullable": true,
                                        "description": "S\u00e9lecteur CSS pour identifier les images dans la page",
                                        "example": "img.manga-page, .chapter-image img"
                                    },
                                    "nextPageSelector": {
                                        "type": "string",
                                        "nullable": true,
                                        "description": "S\u00e9lecteur CSS pour le lien vers la page suivante (pour les lecteurs horizontaux)",
                                        "example": "a.next-page, .navigation .next"
                                    },
                                    "chapterSelector": {
                                        "type": "string",
                                        "nullable": true,
                                        "description": "S\u00e9lecteur CSS pour identifier la zone contenant le chapitre",
                                        "example": ".chapter-content, #manga-reader"
                                    }
                                },
                                "required": [
                                    "baseUrl",
                                    "chapterUrlFormat",
                                    "scrapingType",
                                    "testUrl",
                                    "mangaSlug",
                                    "chapterNumber"
                                ]
                            },
                            "examples": {
                                "lecteur_vertical": {
                                    "summary": "Configuration pour un lecteur vertical",
                                    "description": "Exemple de configuration pour un site avec toutes les images sur une seule page",
                                    "value": {
                                        "baseUrl": "https://mangasite.example.com",
                                        "chapterUrlFormat": "https://mangasite.example.com/manga/{slug}/chapter/{chapter}",
                                        "scrapingType": "html",
                                        "testUrl": "https://mangasite.example.com/manga/one-piece/chapter/1",
                                        "mangaSlug": "one-piece",
                                        "chapterNumber": 1,
                                        "imageSelector": "img.manga-page",
                                        "nextPageSelector": null,
                                        "chapterSelector": ".chapter-content"
                                    }
                                },
                                "lecteur_horizontal": {
                                    "summary": "Configuration pour un lecteur horizontal",
                                    "description": "Exemple de configuration pour un site avec navigation page par page",
                                    "value": {
                                        "baseUrl": "https://mangasite.example.com",
                                        "chapterUrlFormat": "https://mangasite.example.com/read/{slug}/{chapter}/1",
                                        "scrapingType": "html",
                                        "testUrl": "https://mangasite.example.com/read/one-piece/1/1",
                                        "mangaSlug": "one-piece",
                                        "chapterNumber": 1,
                                        "imageSelector": "#manga-image",
                                        "nextPageSelector": "a.next-page",
                                        "chapterSelector": ".reader-container"
                                    }
                                }
                            }
                        }
                    },
                    "required": false
                },
                "deprecated": false
            },
            "parameters": []
        }
    },
    "components": {
        "schemas": {
            "Cbz": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "id": {
                        "type": "string"
                    }
                }
            },
            "Cbz.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "id": {
                        "type": "string"
                    }
                }
            },
            "Cbz.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "id": {
                        "type": "string"
                    }
                }
            },
            "ChapterListItem": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "number": {
                        "type": "number"
                    },
                    "title": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "volume": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "isVisible": {
                        "type": "boolean"
                    },
                    "isAvailable": {
                        "type": "boolean"
                    },
                    "createdAt": {
                        "type": "string"
                    }
                }
            },
            "ChapterListItem.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "number": {
                        "type": "number"
                    },
                    "title": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "volume": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "isVisible": {
                        "type": "boolean"
                    },
                    "isAvailable": {
                        "type": "boolean"
                    },
                    "createdAt": {
                        "type": "string"
                    }
                }
            },
            "ChapterListItem.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "id": {
                        "type": "string"
                    },
                    "number": {
                        "type": "number"
                    },
                    "title": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "volume": {
                        "type": [
                            "integer",
                            "null"
                        ]
                    },
                    "isVisible": {
                        "type": "boolean"
                    },
                    "isAvailable": {
                        "type": "boolean"
                    },
                    "createdAt": {
                        "type": "string"
                    }
                }
            },
            "Chapters": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "id": {
                        "type": "string"
                    }
                }
            },
            "Chapters.ChapterCollection": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ChapterListItem"
                        }
                    },
                    "total": {
                        "type": "integer"
                    },
                    "page": {
                        "type": "integer"
                    },
                    "limit": {
                        "type": "integer"
                    },
                    "hasNextPage": {
                        "type": "boolean"
                    },
                    "hasPreviousPage": {
                        "type": "boolean"
                    }
                }
            },
            "Chapters.ChapterCollection.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ChapterListItem.jsonhal"
                        }
                    },
                    "total": {
                        "type": "integer"
                    },
                    "page": {
                        "type": "integer"
                    },
                    "limit": {
                        "type": "integer"
                    },
                    "hasNextPage": {
                        "type": "boolean"
                    },
                    "hasPreviousPage": {
                        "type": "boolean"
                    }
                }
            },
            "Chapters.ChapterCollection.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/ChapterListItem.jsonld"
                        }
                    },
                    "total": {
                        "type": "integer"
                    },
                    "page": {
                        "type": "integer"
                    },
                    "limit": {
                        "type": "integer"
                    },
                    "hasNextPage": {
                        "type": "boolean"
                    },
                    "hasPreviousPage": {
                        "type": "boolean"
                    }
                }
            },
            "Chapters.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "id": {
                        "type": "string"
                    }
                }
            },
            "Chapters.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "id": {
                        "type": "string"
                    }
                }
            },
            "ContentSource": {
                "type": "object",
                "description": "Exporte toutes les sources de contenu au format JSON",
                "deprecated": false
            },
            "ContentSource.jsonhal": {
                "type": "object",
                "description": "Exporte toutes les sources de contenu au format JSON",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "ContentSource.jsonld": {
                "type": "object",
                "description": "Exporte toutes les sources de contenu au format JSON",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    }
                }
            },
            "Conversion": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "file": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "binary"
                    },
                    "fileName": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fileContent": {},
                    "filename": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "originalConvertedFilePath": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                }
            },
            "Conversion.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "file": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "binary"
                    },
                    "fileName": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fileContent": {},
                    "filename": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "originalConvertedFilePath": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                }
            },
            "Conversion.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "file": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "binary"
                    },
                    "fileName": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "fileContent": {},
                    "filename": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "originalConvertedFilePath": {
                        "type": [
                            "string",
                            "null"
                        ]
                    }
                }
            },
            "Job": {
                "type": "object",
                "description": "Liste des jobs",
                "deprecated": false,
                "properties": {
                    "id": {
                        "description": "Identifiant unique du job",
                        "type": "string"
                    },
                    "type": {
                        "description": "Type du job (ex: scraping_job)",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status du job",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Date de cr\u00e9ation du job",
                        "type": "string",
                        "format": "date-time"
                    },
                    "startedAt": {
                        "description": "Date de d\u00e9but d'ex\u00e9cution du job",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "completedAt": {
                        "description": "Date de fin d'ex\u00e9cution du job",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "failureReason": {
                        "description": "Raison de l'\u00e9chec si le job a \u00e9chou\u00e9",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "attempts": {
                        "minimum": 0,
                        "description": "Nombre de tentatives effectu\u00e9es",
                        "type": "integer"
                    },
                    "maxAttempts": {
                        "exclusiveMinimum": 0,
                        "description": "Nombre maximum de tentatives autoris\u00e9es",
                        "type": "integer"
                    },
                    "context": {
                        "description": "Donn\u00e9es contextuelles du job",
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "required": [
                    "type",
                    "status",
                    "createdAt"
                ]
            },
            "Job.jsonhal": {
                "type": "object",
                "description": "Liste des jobs",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "id": {
                        "description": "Identifiant unique du job",
                        "type": "string"
                    },
                    "type": {
                        "description": "Type du job (ex: scraping_job)",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status du job",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Date de cr\u00e9ation du job",
                        "type": "string",
                        "format": "date-time"
                    },
                    "startedAt": {
                        "description": "Date de d\u00e9but d'ex\u00e9cution du job",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "completedAt": {
                        "description": "Date de fin d'ex\u00e9cution du job",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "failureReason": {
                        "description": "Raison de l'\u00e9chec si le job a \u00e9chou\u00e9",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "attempts": {
                        "minimum": 0,
                        "description": "Nombre de tentatives effectu\u00e9es",
                        "type": "integer"
                    },
                    "maxAttempts": {
                        "exclusiveMinimum": 0,
                        "description": "Nombre maximum de tentatives autoris\u00e9es",
                        "type": "integer"
                    },
                    "context": {
                        "description": "Donn\u00e9es contextuelles du job",
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "required": [
                    "type",
                    "status",
                    "createdAt"
                ]
            },
            "Job.jsonld": {
                "type": "object",
                "description": "Liste des jobs",
                "deprecated": false,
                "properties": {
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "id": {
                        "description": "Identifiant unique du job",
                        "type": "string"
                    },
                    "type": {
                        "description": "Type du job (ex: scraping_job)",
                        "type": "string"
                    },
                    "status": {
                        "description": "Status du job",
                        "type": "string"
                    },
                    "createdAt": {
                        "description": "Date de cr\u00e9ation du job",
                        "type": "string",
                        "format": "date-time"
                    },
                    "startedAt": {
                        "description": "Date de d\u00e9but d'ex\u00e9cution du job",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "completedAt": {
                        "description": "Date de fin d'ex\u00e9cution du job",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date-time"
                    },
                    "failureReason": {
                        "description": "Raison de l'\u00e9chec si le job a \u00e9chou\u00e9",
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "attempts": {
                        "minimum": 0,
                        "description": "Nombre de tentatives effectu\u00e9es",
                        "type": "integer"
                    },
                    "maxAttempts": {
                        "exclusiveMinimum": 0,
                        "description": "Nombre maximum de tentatives autoris\u00e9es",
                        "type": "integer"
                    },
                    "context": {
                        "description": "Donn\u00e9es contextuelles du job",
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    }
                },
                "required": [
                    "type",
                    "status",
                    "createdAt"
                ]
            },
            "Manga": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "title",
                    "slug",
                    "description",
                    "author",
                    "publicationYear",
                    "genres",
                    "status"
                ],
                "properties": {
                    "title": {
                        "minLength": 1,
                        "maxLength": 255,
                        "type": "string"
                    },
                    "slug": {
                        "pattern": "^([a-z0-9-]+)$",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "minimum": 1900,
                        "maximum": 2100,
                        "type": "integer"
                    },
                    "genres": {
                        "minItems": 1,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "enum": [
                            "ongoing",
                            "completed",
                            "hiatus"
                        ],
                        "type": "string"
                    },
                    "externalId": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "imageUrl": {
                        "format": "uri",
                        "externalDocs": {
                            "url": "https://schema.org/url"
                        },
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "minimum": 0,
                        "maximum": 5,
                        "type": [
                            "number",
                            "null"
                        ]
                    }
                }
            },
            "Manga.MangaCollection": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaListItem"
                        }
                    },
                    "total": {
                        "type": "integer"
                    },
                    "page": {
                        "type": "integer"
                    },
                    "limit": {
                        "type": "integer"
                    },
                    "hasNextPage": {
                        "type": "boolean"
                    },
                    "hasPreviousPage": {
                        "type": "boolean"
                    }
                }
            },
            "Manga.MangaCollection.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaListItem.jsonhal"
                        }
                    },
                    "total": {
                        "type": "integer"
                    },
                    "page": {
                        "type": "integer"
                    },
                    "limit": {
                        "type": "integer"
                    },
                    "hasNextPage": {
                        "type": "boolean"
                    },
                    "hasPreviousPage": {
                        "type": "boolean"
                    }
                }
            },
            "Manga.MangaCollection.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaListItem.jsonld"
                        }
                    },
                    "total": {
                        "type": "integer"
                    },
                    "page": {
                        "type": "integer"
                    },
                    "limit": {
                        "type": "integer"
                    },
                    "hasNextPage": {
                        "type": "boolean"
                    },
                    "hasPreviousPage": {
                        "type": "boolean"
                    }
                }
            },
            "Manga.MangaDetail": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "alternativeSlugs": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "externalId": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "monitored": {
                        "type": "boolean"
                    }
                }
            },
            "Manga.MangaDetail.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "id": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "alternativeSlugs": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "externalId": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "monitored": {
                        "type": "boolean"
                    }
                }
            },
            "Manga.MangaDetail.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "id": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "alternativeSlugs": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "externalId": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "monitored": {
                        "type": "boolean"
                    }
                }
            },
            "Manga.MangaSearchCollection": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaSearchItem"
                        }
                    }
                }
            },
            "Manga.MangaSearchCollection.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaSearchItem.jsonhal"
                        }
                    }
                }
            },
            "Manga.MangaSearchCollection.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaSearchItem.jsonld"
                        }
                    }
                }
            },
            "Manga.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "title",
                    "slug",
                    "description",
                    "author",
                    "publicationYear",
                    "genres",
                    "status"
                ],
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "title": {
                        "minLength": 1,
                        "maxLength": 255,
                        "type": "string"
                    },
                    "slug": {
                        "pattern": "^([a-z0-9-]+)$",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "minimum": 1900,
                        "maximum": 2100,
                        "type": "integer"
                    },
                    "genres": {
                        "minItems": 1,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "enum": [
                            "ongoing",
                            "completed",
                            "hiatus"
                        ],
                        "type": "string"
                    },
                    "externalId": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "imageUrl": {
                        "format": "uri",
                        "externalDocs": {
                            "url": "https://schema.org/url"
                        },
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "minimum": 0,
                        "maximum": 5,
                        "type": [
                            "number",
                            "null"
                        ]
                    }
                }
            },
            "Manga.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "title",
                    "slug",
                    "description",
                    "author",
                    "publicationYear",
                    "genres",
                    "status"
                ],
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "title": {
                        "minLength": 1,
                        "maxLength": 255,
                        "type": "string"
                    },
                    "slug": {
                        "pattern": "^([a-z0-9-]+)$",
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "minimum": 1900,
                        "maximum": 2100,
                        "type": "integer"
                    },
                    "genres": {
                        "minItems": 1,
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "enum": [
                            "ongoing",
                            "completed",
                            "hiatus"
                        ],
                        "type": "string"
                    },
                    "externalId": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "imageUrl": {
                        "format": "uri",
                        "externalDocs": {
                            "url": "https://schema.org/url"
                        },
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "minimum": 0,
                        "maximum": 5,
                        "type": [
                            "number",
                            "null"
                        ]
                    }
                }
            },
            "MangaListItem": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "createdAt": {
                        "type": "string",
                        "format": "date-time"
                    }
                }
            },
            "MangaListItem.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "id": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "createdAt": {
                        "type": "string",
                        "format": "date-time"
                    }
                }
            },
            "MangaListItem.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "id": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    },
                    "createdAt": {
                        "type": "string",
                        "format": "date-time"
                    }
                }
            },
            "MangaMonitoring": {
                "type": "object",
                "description": "Active ou d\u00e9sactive le monitoring automatique d'un manga",
                "deprecated": false,
                "required": [
                    "enabled"
                ],
                "properties": {
                    "enabled": {}
                }
            },
            "MangaMonitoring.jsonhal": {
                "type": "object",
                "description": "Active ou d\u00e9sactive le monitoring automatique d'un manga",
                "deprecated": false,
                "required": [
                    "enabled"
                ],
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "enabled": {}
                }
            },
            "MangaMonitoring.jsonld": {
                "type": "object",
                "description": "Active ou d\u00e9sactive le monitoring automatique d'un manga",
                "deprecated": false,
                "required": [
                    "enabled"
                ],
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "enabled": {}
                }
            },
            "MangaRefresh": {
                "type": "object",
                "description": "D\u00e9clenche la synchronisation et le scraping des nouveaux chapitres d'un manga",
                "deprecated": false
            },
            "MangaRefresh.jsonhal": {
                "type": "object",
                "description": "D\u00e9clenche la synchronisation et le scraping des nouveaux chapitres d'un manga",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "MangaRefresh.jsonld": {
                "type": "object",
                "description": "D\u00e9clenche la synchronisation et le scraping des nouveaux chapitres d'un manga",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    }
                }
            },
            "MangaSearchItem": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "externalId": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    }
                }
            },
            "MangaSearchItem.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "externalId": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    }
                }
            },
            "MangaSearchItem.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "externalId": {
                        "type": "string"
                    },
                    "title": {
                        "type": "string"
                    },
                    "slug": {
                        "type": "string"
                    },
                    "description": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "publicationYear": {
                        "type": "integer"
                    },
                    "genres": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "status": {
                        "type": "string"
                    },
                    "imageUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "thumbnailUrl": {
                        "type": [
                            "string",
                            "null"
                        ]
                    },
                    "rating": {
                        "type": [
                            "number",
                            "null"
                        ]
                    }
                }
            },
            "Mangadex": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "externalId"
                ],
                "properties": {
                    "externalId": {
                        "type": "string"
                    }
                }
            },
            "Mangadex.MangaSearchCollection": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaSearchItem"
                        }
                    }
                }
            },
            "Mangadex.MangaSearchCollection.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaSearchItem.jsonhal"
                        }
                    }
                }
            },
            "Mangadex.MangaSearchCollection.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "items": {
                        "type": "array",
                        "items": {
                            "$ref": "#/components/schemas/MangaSearchItem.jsonld"
                        }
                    }
                }
            },
            "Mangadex.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "externalId"
                ],
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "externalId": {
                        "type": "string"
                    }
                }
            },
            "Mangadex.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "externalId"
                ],
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "externalId": {
                        "type": "string"
                    }
                }
            },
            "Reader": {
                "type": "object",
                "description": "",
                "deprecated": false
            },
            "Reader.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            "Reader.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    }
                }
            },
            "Scraping": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "chapterId"
                ],
                "properties": {
                    "chapterId": {
                        "description": "ID du chapitre \u00e0 scraper",
                        "type": "string"
                    }
                }
            },
            "Scraping.MangaPreferredSourcesDetail": {
                "type": "object",
                "description": "R\u00e9cup\u00e9rer les sources pr\u00e9f\u00e9r\u00e9es d'un manga ou toutes les sources si aucune pr\u00e9f\u00e9rence",
                "deprecated": false,
                "properties": {
                    "mangaId": {
                        "type": "string"
                    },
                    "sources": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "hasPreferredSources": {
                        "type": "boolean"
                    }
                }
            },
            "Scraping.MangaPreferredSourcesDetail.jsonhal": {
                "type": "object",
                "description": "R\u00e9cup\u00e9rer les sources pr\u00e9f\u00e9r\u00e9es d'un manga ou toutes les sources si aucune pr\u00e9f\u00e9rence",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "mangaId": {
                        "type": "string"
                    },
                    "sources": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "hasPreferredSources": {
                        "type": "boolean"
                    }
                }
            },
            "Scraping.MangaPreferredSourcesDetail.jsonld": {
                "type": "object",
                "description": "R\u00e9cup\u00e9rer les sources pr\u00e9f\u00e9r\u00e9es d'un manga ou toutes les sources si aucune pr\u00e9f\u00e9rence",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "mangaId": {
                        "type": "string"
                    },
                    "sources": {
                        "type": "array",
                        "items": {
                            "type": "string"
                        }
                    },
                    "hasPreferredSources": {
                        "type": "boolean"
                    }
                }
            },
            "Scraping.TestScraperConfigurationResource": {
                "type": "object",
                "description": "Teste une configuration de scraper sans l'enregistrer",
                "deprecated": false,
                "properties": {
                    "success": {
                        "type": "boolean"
                    },
                    "imageUrls": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "uri"
                        }
                    },
                    "totalImages": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "testedUrl": {
                        "type": "string",
                        "format": "uri"
                    },
                    "scrapingType": {
                        "type": "string",
                        "enum": [
                            "html",
                            "javascript"
                        ]
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string",
                                    "enum": [
                                        "selector_error",
                                        "url_error",
                                        "general_error"
                                    ],
                                    "description": "Type d'erreur rencontr\u00e9e"
                                },
                                "field": {
                                    "type": "string",
                                    "description": "Champ de configuration concern\u00e9 par l'erreur"
                                },
                                "message": {
                                    "type": "string",
                                    "description": "Message d'erreur d\u00e9taill\u00e9"
                                },
                                "suggestion": {
                                    "type": "string",
                                    "description": "Suggestion pour corriger l'erreur"
                                }
                            },
                            "required": [
                                "type",
                                "field",
                                "message",
                                "suggestion"
                            ]
                        }
                    }
                }
            },
            "Scraping.TestScraperConfigurationResource.jsonhal": {
                "type": "object",
                "description": "Teste une configuration de scraper sans l'enregistrer",
                "deprecated": false,
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "success": {
                        "type": "boolean"
                    },
                    "imageUrls": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "uri"
                        }
                    },
                    "totalImages": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "testedUrl": {
                        "type": "string",
                        "format": "uri"
                    },
                    "scrapingType": {
                        "type": "string",
                        "enum": [
                            "html",
                            "javascript"
                        ]
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string",
                                    "enum": [
                                        "selector_error",
                                        "url_error",
                                        "general_error"
                                    ],
                                    "description": "Type d'erreur rencontr\u00e9e"
                                },
                                "field": {
                                    "type": "string",
                                    "description": "Champ de configuration concern\u00e9 par l'erreur"
                                },
                                "message": {
                                    "type": "string",
                                    "description": "Message d'erreur d\u00e9taill\u00e9"
                                },
                                "suggestion": {
                                    "type": "string",
                                    "description": "Suggestion pour corriger l'erreur"
                                }
                            },
                            "required": [
                                "type",
                                "field",
                                "message",
                                "suggestion"
                            ]
                        }
                    }
                }
            },
            "Scraping.TestScraperConfigurationResource.jsonld": {
                "type": "object",
                "description": "Teste une configuration de scraper sans l'enregistrer",
                "deprecated": false,
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "success": {
                        "type": "boolean"
                    },
                    "imageUrls": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "format": "uri"
                        }
                    },
                    "totalImages": {
                        "type": "integer",
                        "minimum": 0
                    },
                    "testedUrl": {
                        "type": "string",
                        "format": "uri"
                    },
                    "scrapingType": {
                        "type": "string",
                        "enum": [
                            "html",
                            "javascript"
                        ]
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "type": "object",
                            "properties": {
                                "type": {
                                    "type": "string",
                                    "enum": [
                                        "selector_error",
                                        "url_error",
                                        "general_error"
                                    ],
                                    "description": "Type d'erreur rencontr\u00e9e"
                                },
                                "field": {
                                    "type": "string",
                                    "description": "Champ de configuration concern\u00e9 par l'erreur"
                                },
                                "message": {
                                    "type": "string",
                                    "description": "Message d'erreur d\u00e9taill\u00e9"
                                },
                                "suggestion": {
                                    "type": "string",
                                    "description": "Suggestion pour corriger l'erreur"
                                }
                            },
                            "required": [
                                "type",
                                "field",
                                "message",
                                "suggestion"
                            ]
                        }
                    }
                }
            },
            "Scraping.jsonhal": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "chapterId"
                ],
                "properties": {
                    "_links": {
                        "type": "object",
                        "properties": {
                            "self": {
                                "type": "object",
                                "properties": {
                                    "href": {
                                        "type": "string",
                                        "format": "iri-reference"
                                    }
                                }
                            }
                        }
                    },
                    "chapterId": {
                        "description": "ID du chapitre \u00e0 scraper",
                        "type": "string"
                    }
                }
            },
            "Scraping.jsonld": {
                "type": "object",
                "description": "",
                "deprecated": false,
                "required": [
                    "chapterId"
                ],
                "properties": {
                    "@context": {
                        "readOnly": true,
                        "oneOf": [
                            {
                                "type": "string"
                            },
                            {
                                "type": "object",
                                "properties": {
                                    "@vocab": {
                                        "type": "string"
                                    },
                                    "hydra": {
                                        "type": "string",
                                        "enum": [
                                            "http://www.w3.org/ns/hydra/core#"
                                        ]
                                    }
                                },
                                "required": [
                                    "@vocab",
                                    "hydra"
                                ],
                                "additionalProperties": true
                            }
                        ]
                    },
                    "@id": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "@type": {
                        "readOnly": true,
                        "type": "string"
                    },
                    "chapterId": {
                        "description": "ID du chapitre \u00e0 scraper",
                        "type": "string"
                    }
                }
            }
        },
        "responses": {},
        "parameters": {},
        "examples": {},
        "requestBodies": {},
        "headers": {},
        "securitySchemes": {
            "access_token": {
                "type": "http",
                "description": "",
                "scheme": "bearer"
            }
        }
    },
    "security": [
        {
            "access_token": []
        }
    ],
    "tags": []
}