Absentify · Capability

Absentify API — Leave types

Absentify API — Leave types. 6 operations. Lead operation: Absentify Get All Leave Types. Self-contained Naftiko capability covering one Absentify business surface.

Run with Naftiko AbsentifyLeave types

What You Can Do

GET
Leavetypesgetleavetypes — Absentify Get All Leave Types
/v1/leave-types
POST
Leavetypescreateleavetype — Absentify Create a Leave Type
/v1/leave-types
GET
Leavetypesgetleavetypebyid — Absentify Read a Leave Type by Id
/v1/leave-types/{id}
PUT
Leavetypesupdateleavetype — Absentify Update a Leave Type
/v1/leave-types/{id}
DELETE
Leavetypesdeleteleavetypebyid — Absentify Delete a Leave Type
/v1/leave-types/{id}
PUT
Leavetypesrestoreleavetype — Absentify Restore an Archived Leave Type
/v1/leave-types/{id}/restore

MCP Tools

absentify-get-all-leave-types

Absentify Get All Leave Types

read-only idempotent
absentify-create-leave-type

Absentify Create a Leave Type

absentify-read-leave-type-id

Absentify Read a Leave Type by Id

read-only idempotent
absentify-update-leave-type

Absentify Update a Leave Type

idempotent
absentify-delete-leave-type

Absentify Delete a Leave Type

idempotent
absentify-restore-archived-leave-type

Absentify Restore an Archived Leave Type

idempotent

Capability Spec

absentify-leave-types.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Absentify API — Leave types
  description: 'Absentify API — Leave types. 6 operations. Lead operation: Absentify Get All Leave Types. Self-contained Naftiko
    capability covering one Absentify business surface.'
  tags:
  - Absentify
  - Leave types
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ABSENTIFY_API_KEY: ABSENTIFY_API_KEY
capability:
  consumes:
  - type: http
    namespace: absentify-leave-types
    baseUri: https://api.absentify.com/api/v1
    description: Absentify API — Leave types business capability. Self-contained, no shared references.
    resources:
    - name: leave_types
      path: /leave_types
      operations:
      - name: leavetypesgetleavetypes
        method: GET
        description: Absentify Get All Leave Types
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: leavetypescreateleavetype
        method: POST
        description: Absentify Create a Leave Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: leave_types-id
      path: /leave_types/{id}
      operations:
      - name: leavetypesgetleavetypebyid
        method: GET
        description: Absentify Read a Leave Type by Id
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
      - name: leavetypesupdateleavetype
        method: PUT
        description: Absentify Update a Leave Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: leavetypesdeleteleavetypebyid
        method: DELETE
        description: Absentify Delete a Leave Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: deleted
          in: query
          type: boolean
          required: true
        - name: deleted_by_member_id
          in: query
          type: string
          required: true
    - name: leave_types-id-restore
      path: /leave_types/{id}/restore
      operations:
      - name: leavetypesrestoreleavetype
        method: PUT
        description: Absentify Restore an Archived Leave Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    authentication:
      type: apikey
      key: X-API-KEY
      value: '{{env.ABSENTIFY_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: absentify-leave-types-rest
    port: 8080
    description: REST adapter for Absentify API — Leave types. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/leave-types
      name: leave-types
      description: REST surface for leave_types.
      operations:
      - method: GET
        name: leavetypesgetleavetypes
        description: Absentify Get All Leave Types
        call: absentify-leave-types.leavetypesgetleavetypes
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: leavetypescreateleavetype
        description: Absentify Create a Leave Type
        call: absentify-leave-types.leavetypescreateleavetype
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/leave-types/{id}
      name: leave-types-id
      description: REST surface for leave_types-id.
      operations:
      - method: GET
        name: leavetypesgetleavetypebyid
        description: Absentify Read a Leave Type by Id
        call: absentify-leave-types.leavetypesgetleavetypebyid
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: leavetypesupdateleavetype
        description: Absentify Update a Leave Type
        call: absentify-leave-types.leavetypesupdateleavetype
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: leavetypesdeleteleavetypebyid
        description: Absentify Delete a Leave Type
        call: absentify-leave-types.leavetypesdeleteleavetypebyid
        with:
          id: rest.id
          deleted: rest.deleted
          deleted_by_member_id: rest.deleted_by_member_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/leave-types/{id}/restore
      name: leave-types-id-restore
      description: REST surface for leave_types-id-restore.
      operations:
      - method: PUT
        name: leavetypesrestoreleavetype
        description: Absentify Restore an Archived Leave Type
        call: absentify-leave-types.leavetypesrestoreleavetype
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: absentify-leave-types-mcp
    port: 9090
    transport: http
    description: MCP adapter for Absentify API — Leave types. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: absentify-get-all-leave-types
      description: Absentify Get All Leave Types
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: absentify-leave-types.leavetypesgetleavetypes
      outputParameters:
      - type: object
        mapping: $.
    - name: absentify-create-leave-type
      description: Absentify Create a Leave Type
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: absentify-leave-types.leavetypescreateleavetype
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: absentify-read-leave-type-id
      description: Absentify Read a Leave Type by Id
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: absentify-leave-types.leavetypesgetleavetypebyid
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: absentify-update-leave-type
      description: Absentify Update a Leave Type
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: absentify-leave-types.leavetypesupdateleavetype
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: absentify-delete-leave-type
      description: Absentify Delete a Leave Type
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: absentify-leave-types.leavetypesdeleteleavetypebyid
      with:
        id: tools.id
        deleted: tools.deleted
        deleted_by_member_id: tools.deleted_by_member_id
      outputParameters:
      - type: object
        mapping: $.
    - name: absentify-restore-archived-leave-type
      description: Absentify Restore an Archived Leave Type
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: absentify-leave-types.leavetypesrestoreleavetype
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.