intelliHR MCP by usefulapi

Read intelliHR people, jobs, leave, skills and training; create and update people records.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
97%
Integridad del esquema
88%
Calidad de los nombres
76%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (4)

  • LOWTool 'intellihr_list_person_documents' name length outside 3-30 rangeen intellihr_list_person_documents
  • LOWTool 'intellihr_list_business_entities' name length outside 3-30 rangeen intellihr_list_business_entities
  • LOWTool 'intellihr_list_custom_field_definitions' name length outside 3-30 rangeen intellihr_list_custom_field_definitions
  • LOWTool 'intellihr_create_extended_leave' name length outside 3-30 rangeen intellihr_create_extended_leave

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~5,799Tokens (definiciones de herramientas)
~1.9 KBTamaño de respuesta típico
Impacto significativo en la atención (4.53% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "intellihr": {
      "url": "https://intellihr.usefulapi.io/mcp"
    }
  }
}

Puntos de conexión remotos

https://intellihr.usefulapi.io/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (22)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢intellihr_list_people(name, email, employee_number, job_id, updated_within_days, ...)

List the people (employees) in intelliHR as at today: name, employee number, email, phone, addresses, emergency contact, employment status, their jobs (summary) and custom fields. Filter by name (matches any part of the name), email, employee number, job id, recently updated, or who is on extended leave. Health information is never returned. GET /people.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Match any part of a person's name (case-insensitive, any name order).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "email": {
      "description": "Exact primary email address.",
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "employee_number": {
      "description": "Exact employee number.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "job_id": {
      "description": "Current job id(s), comma separated: the people who hold them.",
      "type": "string"
    },
    "updated_within_days": {
      "description": "Only people updated within this many days.",
      "type": "integer",
      "minimum": 0,
      "maximum": 36500
    },
    "on_extended_leave": {
      "description": "true = only people on extended leave, false = only people not on extended leave.",
      "type": "boolean"
    },
    "newest_first": {
      "description": "Sort by creation date, newest first (default: API order).",
      "type": "boolean"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_get_person(person_id)

One person's full record by id: names, date of birth, gender, employee number, contact details, addresses, emergency contact, employment status, jobs, work rights, user account and custom fields. Health information is never returned. GET /people/{id}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "person_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    }
  },
  "required": [
    "person_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_person_documents(person_id, page, limit)

The documents stored on a person's record (file name, type, size, upload status and a download link). Contents are not read. GET /people/{personId}/documents.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "person_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "required": [
    "person_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_person_skills(person_id)

The skills assigned to a person (with their level and review details as intelliHR returns them). The whole list comes back at once. GET /people/{personId}/skills.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "person_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    }
  },
  "required": [
    "person_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_person_tasks(person_id, tab, page, limit)

Tasks (forms, reviews, check-ins, onboarding steps) for a person, by tab: DUE (default), ABOUT_ME, ABOUT_OTHERS, DONE or IGNORED. GET /people/{personId}/tasks.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "person_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    },
    "tab": {
      "description": "Which tab of tasks (default DUE).",
      "type": "string",
      "enum": [
        "DUE",
        "ABOUT_ME",
        "ABOUT_OTHERS",
        "DONE",
        "IGNORED"
      ]
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "required": [
    "person_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_jobs(person_id, person_name, email, employee_number, job_id, ...)

List jobs (roles people hold, past, current and future) as at today: person, position title, location, business unit and entity, supervisor, work type, FTE, remuneration schedule, start/end dates and status. Filter by person, job title, status (Current Job, Future Job, Ending Job, Past Job), work type, primary job, or upcoming/recent end dates. GET /jobs.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "person_id": {
      "description": "Person id(s), comma separated: the jobs of those people.",
      "type": "string"
    },
    "person_name": {
      "description": "The holder's name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "email": {
      "description": "The holder's primary email.",
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "employee_number": {
      "description": "The holder's employee number.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "job_id": {
      "type": "string",
      "description": "One UUID, or several separated by commas."
    },
    "job_name": {
      "description": "The job (position title) name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "status": {
      "type": "string",
      "enum": [
        "Current Job",
        "Future Job",
        "Ending Job",
        "Past Job"
      ]
    },
    "work_type": {
      "description": "Work type name, e.g. Fixed Contract.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "primary_only": {
      "description": "true = only primary jobs, false = only non-primary jobs.",
      "type": "boolean"
    },
    "ending_within_days": {
      "description": "Jobs with an end date in the next N days (including today).",
      "type": "integer",
      "minimum": 0,
      "maximum": 36500
    },
    "ended_within_days": {
      "description": "Jobs that ended in the last N days (including today).",
      "type": "integer",
      "minimum": 0,
      "maximum": 36500
    },
    "updated_within_days": {
      "type": "integer",
      "minimum": 0,
      "maximum": 36500
    },
    "employment_condition_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    },
    "newest_first": {
      "description": "Sort by creation date, newest first.",
      "type": "boolean"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_get_job(job_id)

One job by id with its person, position title, location, business unit, supervisor, pay grade, remuneration and dates. GET /jobs/{id}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    }
  },
  "required": [
    "job_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_get_job_timeline(job_id)

The upcoming changes and current information about a job (scheduled changes, end date). GET /jobs/{jobId}/timeline.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    }
  },
  "required": [
    "job_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_locations(page, limit)

The organisation's locations (sites) with parent location, code, address, enabled flag and representatives. GET /locations.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_business_units(name, identifier, page, limit)

The organisation's business units (departments, teams). Filter by name or identifier. GET /business-units.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Part of the business unit name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "identifier": {
      "description": "The customer identifier of the unit.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_business_entities(page, limit)

The organisation's business entities (legal employers). GET /business-entities.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_position_titles(name, page, limit)

The position titles (job names) defined in intelliHR. Filter by name. GET /position-titles.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Part of the position title.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_pay_grades(as_at, page, limit)

The pay grades and their rates, optionally as at a date. GET /pay-grades.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "as_at": {
      "description": "Show the pay grades as at this point in time: an RFC3339 datetime (2026-10-01T09:00:00+10:00) or a date yyyy-mm-dd (= 00:00 UTC that day). Default now.",
      "type": "string"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_users(page, limit)

The user accounts that can sign in to intelliHR: username, enabled flag, permission groups and the linked person. GET /users.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_custom_field_definitions(page, limit)

The custom fields defined in intelliHR (what each field on a person, job or location means and its type). GET /custom-field-definitions.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_reference_data(kind, page, limit)

Look up one of intelliHR's reference lists: employment_conditions, work_classes, work_types, work_rights, recruitment_sources, extended_leave_types, job_change_reasons, skill_disciplines, training_types, training_providers, qualification_types, qualification_library_items, onboarding_templates, permission_groups or representative_types. Use it to find the ids and names other tools need.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "employment_conditions",
        "work_classes",
        "work_types",
        "work_rights",
        "recruitment_sources",
        "extended_leave_types",
        "job_change_reasons",
        "skill_disciplines",
        "training_types",
        "training_providers",
        "qualification_types",
        "qualification_library_items",
        "onboarding_templates",
        "permission_groups",
        "representative_types"
      ]
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "required": [
    "kind"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_skills(business_critical, discipline_id, page, limit)

The skills catalogue, optionally only business-critical skills or one discipline. GET /skills.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "business_critical": {
      "description": "true = only business-critical skills.",
      "type": "boolean"
    },
    "discipline_id": {
      "description": "Only skills in this skill discipline (see list_reference_data kind skill_disciplines).",
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_qualifications(person_id, employee_number, qualification_library_item_id, page, limit)

Qualification records held by people (licences, certificates) with status and dates. Filter by person, employee number or library item. GET /qualifications.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "person_id": {
      "description": "Person id(s), comma separated.",
      "type": "string"
    },
    "employee_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "qualification_library_item_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢intellihr_list_trainings(name, provider_name, type_name, employee_number, email, ...)

Training records completed or booked by people, with provider, type and dates. Filter by training name, provider, type, employee number or email. GET /trainings.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "description": "Training name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "provider_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "type_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "employee_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "email": {
      "description": "The person's primary email.",
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "newest_first": {
      "description": "Sort by creation date, newest first.",
      "type": "boolean"
    },
    "page": {
      "description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100000
    },
    "limit": {
      "description": "Results per page, 1-100 (default 25).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡intellihr_create_person(last_name, first_name, middle_name, preferred_name, date_of_birth, ...)

WRITE: create a new person record in intelliHR (last name required). It creates the person only: no job, no user account and no welcome email is sent. A job is added separately in intelliHR. Check with list_people first to avoid duplicates. POST /people.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "last_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "first_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "middle_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "preferred_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "date_of_birth": {
      "description": "yyyy-mm-dd.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "gender": {
      "type": "string",
      "enum": [
        "Female",
        "Male",
        "Non-binary",
        "Other",
        "Undisclosed"
      ]
    },
    "employee_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "title": {
      "description": "For example Mr, Ms, Dr.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "email": {
      "description": "Primary email address.",
      "type": "string",
      "minLength": 3,
      "maxLength": 254
    },
    "email_is_personal": {
      "description": "true if the email is personal rather than a work address (default false).",
      "type": "boolean"
    },
    "phone": {
      "description": "Primary phone number.",
      "type": "string",
      "minLength": 3,
      "maxLength": 40
    }
  },
  "required": [
    "last_name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴intellihr_update_person(person_id, last_name, first_name, middle_name, preferred_name, ...)

WRITE: change fields on an existing person (only the fields you pass change): names, date of birth, gender, employee number, title and emergency contact. Contact details, addresses and jobs are not changed by this tool. PATCH /people/{id}.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "person_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    },
    "last_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "first_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "middle_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "preferred_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "date_of_birth": {
      "description": "yyyy-mm-dd.",
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "gender": {
      "type": "string",
      "enum": [
        "Female",
        "Male",
        "Non-binary",
        "Other",
        "Undisclosed"
      ]
    },
    "employee_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "title": {
      "description": "For example Mr, Ms, Dr.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "emergency_contact": {
      "description": "Emergency contact details to set.",
      "type": "object",
      "properties": {
        "name": {
          "type": "string",
          "maxLength": 200
        },
        "relationship": {
          "type": "string",
          "maxLength": 100
        },
        "phone": {
          "type": "string",
          "maxLength": 40
        },
        "email": {
          "type": "string",
          "maxLength": 254
        }
      }
    }
  },
  "required": [
    "person_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡intellihr_create_extended_leave(job_id, start_date, end_date, leave_type_id, leave_type_name, ...)

WRITE: record extended leave (parental, long service, unpaid, etc.) on an existing job. It changes the person's employment record and can trigger intelliHR workflows. The leave is created with the end date you give as expected; finalise it in intelliHR when the person returns. Find leave types with list_reference_data kind extended_leave_types. POST /extended-leave.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
      "description": "The job the leave belongs to."
    },
    "start_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$"
    },
    "end_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "Expected end date, yyyy-mm-dd."
    },
    "leave_type_id": {
      "description": "Extended leave type id.",
      "type": "string",
      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
    },
    "leave_type_name": {
      "description": "Extended leave type name (used when no id is given).",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "fte": {
      "description": "FTE during the leave, e.g. 0.6.",
      "type": "string",
      "pattern": "^\\d+(\\.\\d+)?$"
    }
  },
  "required": [
    "job_id",
    "start_date",
    "end_date"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada22 herramientas