{
    "openapi": "3.0.0",
    "info": {
        "title": "Sobrus Central V2 API",
        "description": "Sobrus app!",
        "version": "1.0.0"
    },
    "paths": {
        "\/api\/careers\/job-postings": {
            "get": {
                "tags": [
                    "\/api\/careers"
                ],
                "operationId": "get_get_list_of_careers_job_postings",
                "parameters": [
                    {
                        "name": "jobTitle",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "properties": {
                                "op": {
                                    "type": "string",
                                    "enum": [
                                        "contains",
                                        "does_not_contain",
                                        "starts_with",
                                        "ends_with",
                                        "is",
                                        "is_not",
                                        "is_empty",
                                        "is_not_empty"
                                    ]
                                },
                                "q": {
                                    "type": "string"
                                }
                            },
                            "type": "object"
                        }
                    },
                    {
                        "name": "page",
                        "in": "query",
                        "description": "page number",
                        "schema": {
                            "type": "integer",
                            "default": "1"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "description": "number of data per page (20 by default)",
                        "schema": {
                            "type": "integer",
                            "default": "20"
                        }
                    },
                    {
                        "name": "order",
                        "in": "query",
                        "description": "The field used to choose the order you want",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "desc",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    },
                    {
                        "name": "orderBy",
                        "in": "query",
                        "description": "The column to order by",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "default": "id",
                            "enum": [
                                "id",
                                "updatedAt"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Get the list of all job postings paginated and filtered."
                    }
                }
            }
        },
        "\/api\/careers\/job-postings\/{id}": {
            "get": {
                "tags": [
                    "\/api\/careers"
                ],
                "operationId": "get_get_one_careers_job_posting_by_id",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "The job posting unique identifier.",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "pattern": "\\d+"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Get a job posting by its ID."
                    },
                    "404": {
                        "description": "Job posting was not found."
                    }
                }
            }
        },
        "\/api\/careers\/job-postings\/{id}\/clicks": {
            "post": {
                "tags": [
                    "\/api\/careers"
                ],
                "operationId": "post_add_one_careers_job_posting_click",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "pattern": "\\d+"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Job posting click was added successfully."
                    },
                    "400": {
                        "description": "Error raised by validation."
                    }
                }
            }
        },
        "\/api\/careers\/job-postings\/views": {
            "post": {
                "tags": [
                    "\/api\/careers"
                ],
                "operationId": "post_add_careers_job_postings_views",
                "requestBody": {
                    "description": "The fields used to add views to job postings",
                    "required": true,
                    "content": {
                        "application\/json": {
                            "schema": {
                                "required": [
                                    "jobPostingsIds"
                                ],
                                "properties": {
                                    "jobPostingsIds": {
                                        "type": "array",
                                        "items": {
                                            "description": "job posting unique ID.",
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Job posting was created successfully."
                    },
                    "400": {
                        "description": "Error raised by validation."
                    }
                }
            }
        },
        "\/api\/careers\/job-applications": {
            "post": {
                "tags": [
                    "\/api\/careers"
                ],
                "operationId": "post_create_new_careers_job_application",
                "requestBody": {
                    "description": "The fields used to create a new job applcation",
                    "required": true,
                    "content": {
                        "multipart\/form-data": {
                            "schema": {
                                "required": [
                                    "title",
                                    "firstName",
                                    "lastName",
                                    "nationalId",
                                    "cityId",
                                    "email",
                                    "phone",
                                    "availability",
                                    "resumeFile"
                                ],
                                "properties": {
                                    "jobPostingId": {
                                        "type": "integer"
                                    },
                                    "title": {
                                        "type": "string"
                                    },
                                    "firstName": {
                                        "type": "string"
                                    },
                                    "lastName": {
                                        "type": "string"
                                    },
                                    "nationalId": {
                                        "type": "string"
                                    },
                                    "cityId": {
                                        "type": "integer"
                                    },
                                    "email": {
                                        "type": "string"
                                    },
                                    "phone": {
                                        "type": "string"
                                    },
                                    "availability": {
                                        "type": "string",
                                        "enum": [
                                            "immediate",
                                            "in_a_month",
                                            "more_than_a_month"
                                        ]
                                    },
                                    "resumeFile": {
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Job application was created successfully."
                    },
                    "400": {
                        "description": "Error raised by validation."
                    }
                }
            }
        },
        "\/api\/requests\/marketplace\/registration": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/sobrus\/contact": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/labs\/contact": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/med\/contact": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/med\/to-be-contacted": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/med\/demo": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/pharma\/demo": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/pharma\/contact": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/pharma\/registration": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/requests\/mysobrus\/contact": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/articles": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/articles\/{slug}": {
            "get": {
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/articles\/{slug}\/visits": {
            "post": {
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/testimonials": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/testimonials\/{id}": {
            "get": {
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/policies": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/policies\/{id}": {
            "get": {
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/faqs": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/faqs\/{id}": {
            "get": {
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/faqs\/{id}\/feedbacks": {
            "post": {
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/sobrus-landing-pages\/faqs\/{id}\/visits": {
            "post": {
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/cities": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/specialities": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/location": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/onboarding\/pharma-tenant": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/pharmacies": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/registration-requests\/ecopara": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/registration-requests\/med": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/registration-requests\/monpharmacien": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/registration-requests\/monsitesobrus": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/commands\/sync": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/commands\/async": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/commands\/stream": {
            "post": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        },
        "\/api\/doc.json": {
            "get": {
                "responses": {
                    "default": {
                        "description": ""
                    }
                }
            }
        }
    }
}