{"openapi":"3.0.2","info":{"version":"2.0","title":"WBH Vacaturebank API V1","description":"This api will be deprecated in favor of the new API. The new API will be available at https:\/\/vacaturebank.werkenbijhogescholen.nl\/api\/v2","contact":{"name":"Support voor Werken bij Hogescholen","url":"https:\/\/werkenbijhogescholen.nl","email":"support@schakelmarketeers.nl"}},"servers":[{"url":"https:\/\/vacaturebank.werkenbijhogescholen.nl","description":"Production server"}],"tags":[{"name":"Authorization","description":"Endpoints for authorization"},{"name":"Vacancies","description":"Endpoints for vacancies"},{"name":"Facets\/Filters","description":"Endpoints for facets\/filters"}],"paths":{"\/api\/v1\/auth\/token":{"get":{"tags":["Authorization"],"summary":"Get a JWT token","description":"Get a JWT token by providing an API key","parameters":[{"in":"header","name":"Content-Type","required":true,"schema":{"type":"string"},"example":"application\/json"},{"in":"query","name":"api-key","required":true,"schema":{"type":"string"},"example":"FIJ9wwGxmeI8r8viSf4lVBpDTCxzYojfvGvRFRrd"}],"responses":{"200":{"description":"A Response with a JWT token","content":{"application\/json":{"schema":{"type":"object","properties":{"token":{"type":"string","example":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyX2lkIjoxLCJpYXQiOjE1MTYyMzkwMjJ9.1z2J"},"type":{"type":"string","example":"Bearer"},"expires_at":{"type":"integer","example":1516239022}}}}}},"401":{"description":"Unauthorized response","content":{"application\/json":{"schema":{"type":"object","properties":{"title":{"type":"string","example":"Unauthorized"},"message":{"type":"string","example":"Could not authenticate you, please check your API key."}}}}}}}}},"\/api\/v1\/locations":{"get":{"tags":["Facets\/Filters"],"security":[{"bearerAuth":[]}],"summary":"Get all locations","description":"Get a list of all locations","responses":{"200":{"description":"A list of locations","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Location"}}}}}}}},"\/api\/v1\/educations":{"get":{"tags":["Facets\/Filters"],"security":[{"bearerAuth":[]}],"summary":"Get all education types","description":"Get a list of all education types","responses":{"200":{"description":"A list of education types","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/EducationType"}}}}}}}},"\/api\/v1\/vacancies":{"get":{"tags":["Vacancies"],"security":[{"bearerAuth":[]}],"summary":"Get all vacancies","description":"Get a list of all vacancies based on the provided JWT token","responses":{"200":{"description":"A list of vacancies","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Vacancy"}}}}}}},"post":{"tags":["Vacancies"],"security":[{"bearerAuth":[]}],"summary":"Create a vacancy","description":"Create a single vacancy","requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Vacancy"}}}},"responses":{"200":{"description":"A single vacancy","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Vacancy"}}}}}}},"\/api\/v1\/vacancies\/{id}":{"get":{"tags":["Vacancies"],"security":[{"bearerAuth":[]}],"summary":"Get a vacancy by ID","description":"Get a single vacancy by ID based on the provided JWT token","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"A single vacancy","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Vacancy"}}}}}},"post":{"tags":["Vacancies"],"security":[{"bearerAuth":[]}],"summary":"Update a vacancy by ID","description":"Update a single vacancy by ID","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","format":"uuid"}}],"requestBody":{"content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Vacancy"}}}},"responses":{"200":{"description":"A single vacancy","content":{"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Vacancy"}}}}}},"delete":{"tags":["Vacancies"],"security":[{"bearerAuth":[]}],"summary":"Delete a vacancy by ID","description":"Delete a single vacancy by ID","parameters":[{"in":"path","name":"id","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Vacancy deleted","content":{"application\/json":{"schema":{"type":"object","properties":{"message":{"type":"string","example":"Vacancy deleted"}}}}}}}}},"\/api\/v1\/job_types":{"get":{"tags":["Facets\/Filters"],"security":[{"bearerAuth":[]}],"summary":"Get all job types","description":"Get a list of all job types","responses":{"200":{"description":"A list of job types","content":{"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/JobType"}}}}}}}}},"components":{"schemas":{"Location":{"type":"object","properties":{"alternatieve_schrijfwijzen":{"type":"string","example":"Amsterdam Zuidoost"},"woonplaats":{"type":"string","example":"Amsterdam-Zuidoost"}}},"EducationType":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"title":{"type":"string","example":"HBO"},"slug":{"type":"string","example":"hbo"}}},"JobType":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"title":{"type":"string","example":"Onderzoek \/ Lector"},"slug":{"type":"string","example":"onderzoek-lector"}}},"Vacancy":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"contact_info":{"type":"string","example":null},"educations":{"type":"array","items":{"type":"string"},"example":["wo","gepromoveerd"]},"job_types":{"type":"array","items":{"type":"integer"},"example":[62,58]},"salary":{"type":"object","properties":{"scale_min":{"type":"integer","example":4},"scale_max":{"type":"integer","example":15}}},"title":{"type":"string","example":"Quaerat ullam nobis tenetur debitis esse veritatis."},"date_start":{"type":"string","format":"date"},"date_end":{"type":"string","format":"date"},"location":{"type":"string","example":"Landsmeer"},"apply_method":{"type":"object","properties":{"type":{"type":"string","enum":["email","url"]},"value":{"type":"string","format":"uri","example":"https:\/\/www.kuiper.org\/minus-ut-possimus-veritatis"}}},"employments":{"type":"array","items":{"type":"string"},"example":["tijdelijk","vast"]},"fte":{"type":"object","properties":{"min":{"type":"number","format":"float","example":0.4},"max":{"type":"number","format":"float","example":0.1}}},"sectors":{"type":"array","items":{"type":"string"},"example":["landbouw","stafdienst_algemeen"]},"content":{"type":"object","properties":{"extra":{"type":"string","example":null},"organisation":{"type":"string","example":"Information about the organisation"},"conditions":{"type":"string","example":null},"description":{"type":"string","example":"Facilis vero perspiciatis quaerat beatae natus. Ipsam corporis porro illo omnis reprehenderit eos. Sunt quisquam quos voluptas.\n\nAut odio sit culpa voluptatum voluptates. Animi soluta velit dolore ab. Molestiae rem aut voluptatibus eveniet eos fugiat. Aut sed itaque qui possimus perferendis qui.\n\nVelit maiores hic quam veritatis sequi et facilis. Et repellendus voluptatem tempora eius et. Et rerum eveniet nihil.\n\nOmnis perspiciatis cumque velit dolorem veniam excepturi. Fugiat nobis impedit harum blanditiis ullam voluptatem qui.\n\nNihil eos asperiores consequatur quas voluptas cum nam. Delectus deleniti ullam repellat impedit ut. Et repellat impedit quo et est pariatur et."},"department":{"type":"string","example":null},"requirements":{"type":"string","example":null}}}}}},"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}}}}