Remote · Capability

Remote Time And Attendance API — Time Off

Self-contained Naftiko capability for managing employee time-off requests on Remote, including create, approve, decline, and cancel.

Remote Time And Attendance API — Time Off is a Naftiko capability published by Remote, one of 10 capabilities the APIs.io network indexes for this provider. It bundles 5 operations.

The capability includes 2 read-only operations and 3 state-changing operations. Lead operation: List time-off requests, optionally filtered by employment and status. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Remote, Time Off, and HRIS.

Run with Naftiko RemoteTime OffHRIS

MCP Tools

remote-list-timeoff

List time-off requests, optionally filtered by employment and status.

read-only idempotent
remote-create-timeoff

Create a time-off request.

remote-show-timeoff

Show a time-off request.

read-only idempotent
remote-approve-timeoff

Approve a time-off request.

idempotent
remote-decline-timeoff

Decline a time-off request with a reason.

idempotent

Capability Spec

time-off.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Remote Time And Attendance API — Time Off
  description: 'Self-contained Naftiko capability for managing employee time-off requests on Remote, including create, approve, decline, and cancel.'
  tags:
  - Remote
  - Time Off
  - HRIS
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    REMOTE_ACCESS_TOKEN: REMOTE_ACCESS_TOKEN
capability:
  consumes:
  - type: http
    namespace: time-off
    baseUri: https://gateway.remote.com
    description: Remote Time-Off business capability.
    resources:
    - name: v1-timeoff
      path: /v1/timeoff
      operations:
      - name: listtimeoff
        method: GET
        description: List Time Off Requests
        inputParameters:
        - name: employment_id
          in: query
          type: string
        - name: status
          in: query
          type: string
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createtimeoff
        method: POST
        description: Create A Time Off Request
        inputParameters:
        - name: body
          in: body
          type: object
          required: true
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-timeoff-id
      path: /v1/timeoff/{timeoff_id}
      operations:
      - name: showtimeoff
        method: GET
        description: Show A Time Off Request
        inputParameters:
        - name: timeoff_id
          in: path
          type: string
          required: true
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-timeoff-approve
      path: /v1/timeoff/{timeoff_id}/approve
      operations:
      - name: approvetimeoff
        method: POST
        description: Approve A Time Off Request
        inputParameters:
        - name: timeoff_id
          in: path
          type: string
          required: true
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: v1-timeoff-decline
      path: /v1/timeoff/{timeoff_id}/decline
      operations:
      - name: declinetimeoff
        method: POST
        description: Decline A Time Off Request
        inputParameters:
        - name: timeoff_id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          required: true
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: bearer
      value: '{{env.REMOTE_ACCESS_TOKEN}}'
      placement: header
  exposes:
  - type: mcp
    namespace: time-off-mcp
    port: 9090
    transport: http
    description: MCP adapter for Remote Time-Off.
    tools:
    - name: remote-list-timeoff
      description: List time-off requests, optionally filtered by employment and status.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: time-off.listtimeoff
      with:
        employment_id: tools.employment_id
        status: tools.status
    - name: remote-create-timeoff
      description: Create a time-off request.
      hints: { readOnly: false, destructive: false, idempotent: false }
      call: time-off.createtimeoff
      with:
        body: tools.body
    - name: remote-show-timeoff
      description: Show a time-off request.
      hints: { readOnly: true, destructive: false, idempotent: true }
      call: time-off.showtimeoff
      with:
        timeoff_id: tools.timeoff_id
    - name: remote-approve-timeoff
      description: Approve a time-off request.
      hints: { readOnly: false, destructive: false, idempotent: true }
      call: time-off.approvetimeoff
      with:
        timeoff_id: tools.timeoff_id
    - name: remote-decline-timeoff
      description: Decline a time-off request with a reason.
      hints: { readOnly: false, destructive: false, idempotent: true }
      call: time-off.declinetimeoff
      with:
        timeoff_id: tools.timeoff_id
        body: tools.body