Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/buk-jobs-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
description: '# Buk Data Access API.
To use the API, you need to obtain an **API Key**.
You can manage access within the platform, in **Settings => API Access.**
Once an API Key is created, you must send the value as a header in the HTTP request, in the `auth_token` field.
## For more details, you can review the article "How to integrate with Buk through an API"
# Endpoints'
title: Buk Jobs API
servers:
- url: https://demo.buk.cl/api/v1/brasil
tags:
- name: Jobs
paths:
/jobs/{id}/terminate:
patch:
summary: Complete the job with the given ID
description: 'Terminates the job with the given id. Requires end date and termination reason (unless it is a contract for services). The parameters are:
- end_date: End date of the job.
- termination_reason: Reason for job termination. Accepted reasons are:
"Chile: ["mutuo_acuerdo", "renuncia", "muerte", "vencimiento_plazo", "fin_servicio", "caso_fortuito", "falta_probidad", "acoso_sexual", "vias_de_hecho", "injurias", "conducta_inmoral", "acoso_laboral", "negociaciones_prohibidas", "no_concurrencia", "abandonar_trabajo", "faltas_seguridad", "perjuicio_material", "incumplimiento", "necesidades_empresa", "desahucio_gerente"]"
"Peru: ["renuncia", "renuncia_con_incentivos", "despido", "cese_colectivo", "jubilacion", "invalidez_absoluta_permanente", "terminacion_de_la_obra", "mutuo_disenso", "fallecimiento", "sucesion_en_posicion_empleador", "extincion_o_liquidacion_empleador", "no_se_inicio_relacion_laboral", "limite_edad", "injustificado"]"
"Mexico: ["renuncia_voluntaria", "muerte", "causa_imputable_patron", "despido_injustificado", "despido_justificado", "terminacion_natural", "incapacidad_permanente", "invalidez_trabajador", "reajuste_maquina", "clausura", "abandono_empleo", "ausentismo", "jubilacion", "otras"]"
"Colombia: ["renuncia_voluntaria", "causa_justa_empleador", "termino_mutuo_acuerdo", "vencimiento_plazo", "termino_obra", "termino_sentencia", "muerte", "termino_abandono", "sustitucion_patronal", "abandono_cargo", "decision_unilateral"]"
- comment: Internal comment on the job termination (OPTIONAL)
- employee_final_state: Final status of Colaborador, by default remains inactive: ["pending", "inactive"] (OPTIONAL)
- notice_date: Notice date of job termination in YYYY-MM-DD format; if this field is not added, end_date will be considered. (OPTIONAL)
**Permisos requeridos para utilizar este endpoint:**
* Employee permissions en: ''Lectura y Modificación''.'
tags:
- Jobs
parameters:
- name: id
in: path
description: ID of the work to be completed.
schema:
type: integer
required: true
responses:
'200':
description: As a response, the Colaborador job is received and successfully completed.
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/JobResponseCountry'
application/pdf:
schema:
properties:
data:
$ref: '#/components/schemas/JobResponseCountry'
'400':
description: There is an error with the data submitted
content:
application/json:
schema:
$ref: '#/components/schemas/bad_request'
application/pdf:
schema:
$ref: '#/components/schemas/bad_request'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/JobTerminateInput'
description: Updated Job object.
required: true
operationId: patchJobsByIdTerminate
x-operation-id-source: derived
/jobs/{id}/undo:
post:
summary: Undo the last move and return to the previous job
description: 'Undo the last move and return to the previous job.
**Permisos requeridos para utilizar este endpoint:**
* Employee permissions en: ''Lectura y Modificación''.'
tags:
- Jobs
parameters:
- name: id
in: path
description: ID of the job to be queried.
required: true
schema:
type: string
responses:
'201':
description: As a response, we received the information about the restored job
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/JobResponseCountry'
application/pdf:
schema:
properties:
data:
$ref: '#/components/schemas/JobResponseCountry'
'400':
description: There is an error with the data submitted
content:
application/json:
schema:
$ref: '#/components/schemas/bad_request'
application/pdf:
schema:
$ref: '#/components/schemas/bad_request'
operationId: postJobsByIdUndo
x-operation-id-source: derived
/jobs/{id}/undo_terminate:
patch:
summary: Termination cancelation
description: 'Cancels the termination of a job.
**Permisos requeridos para utilizar este endpoint:**
* Employee permissions en: ''Lectura y Modificación''.'
tags:
- Jobs
parameters:
- name: id
in: path
description: ID of the job to be canceled.
required: true
schema:
type: string
responses:
'200':
description: As a response, we received the information about the restored job
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/JobResponseCountry'
application/pdf:
schema:
properties:
data:
$ref: '#/components/schemas/JobResponseCountry'
'400':
description: There is an error with the data submitted
content:
application/json:
schema:
$ref: '#/components/schemas/bad_request'
application/pdf:
schema:
$ref: '#/components/schemas/bad_request'
operationId: patchJobsByIdUndoTerminate
x-operation-id-source: derived
/jobs/events/hires:
get:
summary: List job records of the Colaboradores
description: 'Displays the admissions of Colaborador It has a start and end date to specify a query period.
**Permisos requeridos para utilizar este endpoint:**
* Employee permissions en: ''Lectura'' o ''Lectura y Modificación''.'
tags:
- Jobs
parameters:
- name: start_date
in: query
description: Start date of the search query period in YYYY-MM-DD.
schema:
type: string
format: date
- name: end_date
in: query
description: End date of the search query period in YYYYY-MM-DD.
schema:
type: string
format: date
- name: sort
in: query
description: Parameter to sort records, the only possible value is "id"; if not sent, it is sorted by name
schema:
type: string
- name: page_size
in: query
description: (OPTIONAL) Number of answers per page. By default it has a value of 25 and must be within a range of [25 - 100].
schema:
type: integer
- name: page
in: query
description: (OPTIONAL) Page of work to be obtained. The first one is displayed by default.
schema:
type: integer
responses:
'200':
description: As a response, we receive an array (data) with the information of the retrieved movements.
name: data
content:
application/json:
schema:
properties:
pagination:
$ref: '#/components/schemas/Pagination'
data:
type: array
items:
$ref: '#/components/schemas/hire'
application/pdf:
schema:
properties:
pagination:
$ref: '#/components/schemas/Pagination'
data:
type: array
items:
$ref: '#/components/schemas/hire'
'400':
description: The request sent does not respect the proper format.
name: errors
content:
application/json:
schema:
properties:
errors:
type: array
items:
type: string
application/pdf:
schema:
properties:
errors:
type: array
items:
type: string
operationId: getJobsEventsHires
x-operation-id-source: derived
/jobs/events/movements:
get:
summary: List the activity records for the jobs of the Colaboradores
description: 'Displays the Colaborador movements list. It has a start and end date to specify a query period.
**Permisos requeridos para utilizar este endpoint:**
* Employee permissions en: ''Lectura'' o ''Lectura y Modificación''.'
tags:
- Jobs
parameters:
- name: start_date
in: query
description: Start date of the search query period in YYYY-MM-DD.
schema:
type: string
format: date
- name: end_date
in: query
description: End date of the search query period in YYYYY-MM-DD.
schema:
type: string
format: date
- name: sort
in: query
description: Parameter to sort records, the only possible value is "id"; if not sent, it is sorted by name
schema:
type: string
- name: page_size
in: query
description: (OPTIONAL) Number of answers per page. By default it has a value of 25 and must be within a range of [25 - 100].
schema:
type: integer
- name: page
in: query
description: (OPTIONAL) Page of work to be obtained. The first one is displayed by default.
schema:
type: integer
responses:
'200':
description: As a response, we receive an array (data) with the information of the retrieved movements.
name: data
content:
application/json:
schema:
properties:
pagination:
$ref: '#/components/schemas/Pagination'
data:
type: array
items:
$ref: '#/components/schemas/job_movement'
application/pdf:
schema:
properties:
pagination:
$ref: '#/components/schemas/Pagination'
data:
type: array
items:
$ref: '#/components/schemas/job_movement'
'400':
description: The request sent does not respect the proper format.
name: errors
content:
application/json:
schema:
properties:
errors:
type: array
items:
type: string
application/pdf:
schema:
properties:
errors:
type: array
items:
type: string
operationId: getJobsEventsMovements
x-operation-id-source: derived
/jobs/events/terminations:
get:
summary: List terminations
description: 'Displays the finished jobs that have an end date between the start date (start_date) and the end date (end_date).
**Permisos requeridos para utilizar este endpoint:**
* Employee permissions en: ''Lectura'' o ''Lectura y Modificación''.'
tags:
- Jobs
parameters:
- name: start_date
in: query
description: Start date of the search query period
schema:
type: string
format: date
- name: end_date
in: query
description: End date of the search query period
schema:
type: string
format: date
- name: sort
in: query
description: Parameter to sort records, the only possible value is "id"; if not sent, it is sorted by name
schema:
type: string
- name: page_size
in: query
description: (OPTIONAL) Number of answers per page. By default it has a value of 25 and must be within a range of [25 - 100].
schema:
type: integer
- name: page
in: query
description: (OPTIONAL) Page of work to be obtained. The first one is displayed by default.
schema:
type: integer
responses:
'200':
description: Results by page of terminations in the indicated period.
name: data
content:
application/json:
schema:
properties:
pagination:
$ref: '#/components/schemas/Pagination'
data:
type: array
items:
$ref: '#/components/schemas/TerminatedJob'
application/pdf:
schema:
properties:
pagination:
$ref: '#/components/schemas/Pagination'
data:
type: array
items:
$ref: '#/components/schemas/TerminatedJob'
'400':
description: The request sent does not respect the proper format.
name: errors
content:
application/json:
schema:
properties:
errors:
type: array
items:
type: string
application/pdf:
schema:
properties:
errors:
type: array
items:
type: string
operationId: getJobsEventsTerminations
x-operation-id-source: derived
components:
schemas:
BossModel:
properties:
id:
type: integer
cpf:
type: string
allOf:
- $ref: '#/components/schemas/BasePersonIdentifier'
JobTerminateInput:
required:
- end_date
- termination_reason
properties:
end_date:
type: string
format: date
description: Fecha de término del trabajo en YYYY-MM-DD.
termination_reason:
type: string
description: Causal de finiquito (ver opciones).
enum:
- mutuo_acuerdo
- renuncia
- muerte
- vencimiento_plazo
- fin_servicio
- caso_fortuito
- falta_probidad
- acoso_sexual
- vias_de_hecho
- injurias
- conducta_inmoral
- acoso_laboral
- negociaciones_prohibidas
- no_concurrencia
- abandonar_trabajo
- faltas_seguridad
- perjuicio_material
- incumplimiento
- necesidades_empresa
- desahucio_gerente
comment:
type: string
description: {}
employee_final_state:
type: string
description: {}
notice_date:
type: string
format: date
description: '- notice_date: Fecha de aviso de término de trabajo en YYYY-MM-DD, en caso de no agregar este campo se considerará el end_date. (OPCIONAL)'
Pagination:
properties:
next:
type: string
previous:
type: string
count:
type: integer
total_pages:
type: integer
JobResponseCountry:
properties:
id:
type: integer
company_id:
type: integer
start_date:
type: string
format: date
type_of_contract:
type: string
end_of_contract:
type: string
format: date
notice_date:
type: string
format: date
regular_hours:
type: number
end_date:
type: string
format: date
cost_center:
type: string
vinculation:
type: string
tipo_jornada:
type: string
otros_tipo_jornada:
type: string
regimen_laboral:
type: string
admission_indicative:
type: string
admission_type:
type: string
regimen_previsional:
type: string
wage_type:
type: string
work_day_description:
type: string
position_of_trust:
type: boolean
function_of_trust:
type: string
experience_contract:
type: boolean
unhealthiness_additional:
type: string
dangerousness_additional:
type: string
night_shift:
type: boolean
esocial_code:
type: string
periodicity:
type: string
custom_attributes:
type: object
area_id:
type: integer
role_id:
type: integer
leader_id:
type: integer
currency_code:
type: string
wage:
type: float
boss:
$ref: '#/components/schemas/BossModel'
without_wage:
type: boolean
bad_request:
properties:
errors:
type: array
items:
type: string
BasePersonIdentifier:
properties:
document_number:
type: string
description: Document Number of Colaborador.
document_type:
type: string
description: 'Document Type Colaborador. Valid Document Types in the {code: translation} format are: {"ci_brasil":"CPF","otro":"Other"}'
securitySchemes:
auth_token:
type: apiKey
name: auth_token
in: header