Documentation Index Fetch the complete documentation index at: https://mintlify.com/mauroperez055/infoJobs/llms.txt
Use this file to discover all available pages before exploring further.
The POST /jobs endpoint creates a new job listing and appends it to the in-memory store. The request body is validated with a Zod schema before any write occurs — if validation fails, the server returns a 400 with the individual field errors so clients can surface them directly to users.
Jobs are stored in memory. All records — including newly created ones — are lost when the server restarts. This is an intentional design for the development environment; a persistent database layer is on the roadmap.
Request Body Parameters
Job title. Must be between 3 and 100 characters long.
Name of the company offering the position.
Job location or remote designation (e.g. "Remote", "Madrid, Spain").
Short summary description of the role. Optional.
Structured metadata for the job listing. Array of technology tags (e.g. ["react", "typescript"]).
Work modality — e.g. "remoto", "presencial", "híbrido".
Experience level — e.g. "junior", "mid", "senior".
Long-form structured content for the listing page. Key responsibilities of the role.
Required skills and qualifications.
Information about the company.
Example Request
curl -X POST http://localhost:1234/jobs \
-H "Content-Type: application/json" \
-d '{
"titulo": "Frontend Developer",
"empresa": "Acme Corp",
"ubicacion": "Remote",
"descripcion": "We are looking for a passionate frontend developer.",
"data": {
"technology": ["react", "typescript"],
"modalidad": "remoto",
"nivel": "senior"
},
"content": {
"description": "You will build and maintain our customer-facing React application.",
"responsibilities": "Develop new UI features, write unit tests, collaborate with design.",
"requirements": "3+ years of React experience, strong TypeScript skills.",
"about": "Acme Corp is a fast-growing SaaS startup based in Barcelona."
}
}'
201 Response
A successful creation returns HTTP 201 with the full job object, including the server-generated UUID.
{
"message" : "Job Created" ,
"data" : {
"id" : "c3f2a1b4-9d87-4e56-b123-0f7a6c2d8e91" ,
"titulo" : "Frontend Developer" ,
"empresa" : "Acme Corp" ,
"ubicacion" : "Remote" ,
"descripcion" : "We are looking for a passionate frontend developer." ,
"data" : {
"technology" : [ "react" , "typescript" ],
"modalidad" : "remoto" ,
"nivel" : "senior"
},
"content" : {
"description" : "You will build and maintain our customer-facing React application." ,
"responsibilities" : "Develop new UI features, write unit tests, collaborate with design." ,
"requirements" : "3+ years of React experience, strong TypeScript skills." ,
"about" : "Acme Corp is a fast-growing SaaS startup based in Barcelona."
}
}
}
400 Validation Error
Returned when the request body fails Zod schema validation. The details array contains one entry per failing field.
{
"error" : "Invalid request" ,
"details" : [
{
"code" : "too_small" ,
"minimum" : 3 ,
"type" : "string" ,
"inclusive" : true ,
"exact" : false ,
"message" : "El título debe tener al menos 3 caracteres" ,
"path" : [ "titulo" ]
}
]
}