StackOne · Capability
Marketing — Employees
Marketing — Employees. 7 operations. Lead operation: List Employees. Self-contained Naftiko capability covering one Stackone business surface.
What You Can Do
GET
Hrislistemployees
— List Employees
/v1/unified/hris/employees
POST
Hriscreateemployee
— Creates an employee
/v1/unified/hris/employees
GET
Hrisgetemployee
— Get Employee
/v1/unified/hris/employees/{id}
PATCH
Hrisupdateemployee
— Updates an employee
/v1/unified/hris/employees/{id}
GET
Hrislistemployeetimeoffrequests
— List Employee Time Off Requests
/v1/unified/hris/employees/{id}/time-off
POST
Hriscreateemployeetimeoffrequest
— Create Employee Time Off Request
/v1/unified/hris/employees/{id}/time-off
GET
Hrisgetemployeestimeoffrequest
— Get Employees Time Off Request
/v1/unified/hris/employees/{id}/time-off/{subresourceid}
MCP Tools
list-employees
List Employees
read-only
idempotent
creates-employee
Creates an employee
get-employee
Get Employee
read-only
idempotent
updates-employee
Updates an employee
idempotent
list-employee-time-off-requests
List Employee Time Off Requests
read-only
idempotent
create-employee-time-off-request
Create Employee Time Off Request
get-employees-time-off-request
Get Employees Time Off Request
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Marketing — Employees
description: 'Marketing — Employees. 7 operations. Lead operation: List Employees. Self-contained Naftiko capability covering
one Stackone business surface.'
tags:
- Stackone
- Employees
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
STACKONE_API_KEY: STACKONE_API_KEY
capability:
consumes:
- type: http
namespace: stackone-employees
baseUri: https://api.stackone.com
description: Marketing — Employees business capability. Self-contained, no shared references.
resources:
- name: unified-hris-employees
path: /unified/hris/employees
operations:
- name: hrislistemployees
method: GET
description: List Employees
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: page
in: query
type: string
description: The page number of the results to fetch
- name: page_size
in: query
type: string
description: The number of results per page
- name: raw
in: query
type: boolean
description: Indicates that the raw request result is returned
- name: fields
in: query
type: string
description: The comma separated list of fields to return in the response (if empty, all fields are returned)
- name: sync_token
in: query
type: string
description: The sync token to select the only updated results
- name: updated_after
in: query
type: string
description: Use a string with a date to only select results updated after that given date
- name: expand
in: query
type: string
description: The comma separated list of fields that will be expanded in the response
- name: include
in: query
type: string
description: The comma separated list of fields that will be included in the response
- name: proxy
in: query
type: object
description: Query parameters that can be used to pass through parameters to the underlying provider request by
surrounding them with "proxy" key
- name: x-account-id
in: header
type: string
description: The account identifier
required: true
- name: hriscreateemployee
method: POST
description: Creates an employee
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: x-account-id
in: header
type: string
description: The account identifier
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: unified-hris-employees-id
path: /unified/hris/employees/{id}
operations:
- name: hrisgetemployee
method: GET
description: Get Employee
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
required: true
- name: page
in: query
type: string
description: The page number of the results to fetch
- name: page_size
in: query
type: string
description: The number of results per page
- name: raw
in: query
type: boolean
description: Indicates that the raw request result is returned
- name: fields
in: query
type: string
description: The comma separated list of fields to return in the response (if empty, all fields are returned)
- name: sync_token
in: query
type: string
description: The sync token to select the only updated results
- name: updated_after
in: query
type: string
description: Use a string with a date to only select results updated after that given date
- name: expand
in: query
type: string
description: The comma separated list of fields that will be expanded in the response
- name: include
in: query
type: string
description: The comma separated list of fields that will be included in the response
- name: proxy
in: query
type: object
description: Query parameters that can be used to pass through parameters to the underlying provider request by
surrounding them with "proxy" key
- name: x-account-id
in: header
type: string
description: The account identifier
required: true
- name: hrisupdateemployee
method: PATCH
description: Updates an employee
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
required: true
- name: x-account-id
in: header
type: string
description: The account identifier
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: unified-hris-employees-id-time_off
path: /unified/hris/employees/{id}/time_off
operations:
- name: hrislistemployeetimeoffrequests
method: GET
description: List Employee Time Off Requests
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: x-account-id
in: header
type: string
description: The account identifier
required: true
- name: id
in: path
type: string
required: true
- name: page
in: query
type: string
description: The page number of the results to fetch
- name: page_size
in: query
type: string
description: The number of results per page
- name: raw
in: query
type: boolean
description: Indicates that the raw request result is returned
- name: fields
in: query
type: string
description: The comma separated list of fields to return in the response (if empty, all fields are returned)
- name: sync_token
in: query
type: string
description: The sync token to select the only updated results
- name: updated_after
in: query
type: string
description: Use a string with a date to only select results updated after that given date
- name: proxy
in: query
type: object
description: Query parameters that can be used to pass through parameters to the underlying provider request by
surrounding them with "proxy" key
- name: hriscreateemployeetimeoffrequest
method: POST
description: Create Employee Time Off Request
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: x-account-id
in: header
type: string
description: The account identifier
required: true
- name: id
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: unified-hris-employees-id-time_off-subResourceId
path: /unified/hris/employees/{id}/time_off/{subResourceId}
operations:
- name: hrisgetemployeestimeoffrequest
method: GET
description: Get Employees Time Off Request
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: x-account-id
in: header
type: string
description: The account identifier
required: true
- name: id
in: path
type: string
required: true
- name: subResourceId
in: path
type: string
required: true
- name: page
in: query
type: string
description: The page number of the results to fetch
- name: page_size
in: query
type: string
description: The number of results per page
- name: raw
in: query
type: boolean
description: Indicates that the raw request result is returned
- name: fields
in: query
type: string
description: The comma separated list of fields to return in the response (if empty, all fields are returned)
- name: sync_token
in: query
type: string
description: The sync token to select the only updated results
- name: updated_after
in: query
type: string
description: Use a string with a date to only select results updated after that given date
- name: proxy
in: query
type: object
description: Query parameters that can be used to pass through parameters to the underlying provider request by
surrounding them with "proxy" key
authentication:
type: basic
username: '{{env.STACKONE_USER}}'
password: '{{env.STACKONE_PASS}}'
exposes:
- type: rest
namespace: stackone-employees-rest
port: 8080
description: REST adapter for Marketing — Employees. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/unified/hris/employees
name: unified-hris-employees
description: REST surface for unified-hris-employees.
operations:
- method: GET
name: hrislistemployees
description: List Employees
call: stackone-employees.hrislistemployees
with:
page: rest.page
page_size: rest.page_size
raw: rest.raw
fields: rest.fields
sync_token: rest.sync_token
updated_after: rest.updated_after
expand: rest.expand
include: rest.include
proxy: rest.proxy
x-account-id: rest.x-account-id
outputParameters:
- type: object
mapping: $.
- method: POST
name: hriscreateemployee
description: Creates an employee
call: stackone-employees.hriscreateemployee
with:
x-account-id: rest.x-account-id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/unified/hris/employees/{id}
name: unified-hris-employees-id
description: REST surface for unified-hris-employees-id.
operations:
- method: GET
name: hrisgetemployee
description: Get Employee
call: stackone-employees.hrisgetemployee
with:
id: rest.id
page: rest.page
page_size: rest.page_size
raw: rest.raw
fields: rest.fields
sync_token: rest.sync_token
updated_after: rest.updated_after
expand: rest.expand
include: rest.include
proxy: rest.proxy
x-account-id: rest.x-account-id
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: hrisupdateemployee
description: Updates an employee
call: stackone-employees.hrisupdateemployee
with:
id: rest.id
x-account-id: rest.x-account-id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/unified/hris/employees/{id}/time-off
name: unified-hris-employees-id-time-off
description: REST surface for unified-hris-employees-id-time_off.
operations:
- method: GET
name: hrislistemployeetimeoffrequests
description: List Employee Time Off Requests
call: stackone-employees.hrislistemployeetimeoffrequests
with:
x-account-id: rest.x-account-id
id: rest.id
page: rest.page
page_size: rest.page_size
raw: rest.raw
fields: rest.fields
sync_token: rest.sync_token
updated_after: rest.updated_after
proxy: rest.proxy
outputParameters:
- type: object
mapping: $.
- method: POST
name: hriscreateemployeetimeoffrequest
description: Create Employee Time Off Request
call: stackone-employees.hriscreateemployeetimeoffrequest
with:
x-account-id: rest.x-account-id
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/unified/hris/employees/{id}/time-off/{subresourceid}
name: unified-hris-employees-id-time-off-subresourceid
description: REST surface for unified-hris-employees-id-time_off-subResourceId.
operations:
- method: GET
name: hrisgetemployeestimeoffrequest
description: Get Employees Time Off Request
call: stackone-employees.hrisgetemployeestimeoffrequest
with:
x-account-id: rest.x-account-id
id: rest.id
subResourceId: rest.subResourceId
page: rest.page
page_size: rest.page_size
raw: rest.raw
fields: rest.fields
sync_token: rest.sync_token
updated_after: rest.updated_after
proxy: rest.proxy
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: stackone-employees-mcp
port: 9090
transport: http
description: MCP adapter for Marketing — Employees. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: list-employees
description: List Employees
hints:
readOnly: true
destructive: false
idempotent: true
call: stackone-employees.hrislistemployees
with:
page: tools.page
page_size: tools.page_size
raw: tools.raw
fields: tools.fields
sync_token: tools.sync_token
updated_after: tools.updated_after
expand: tools.expand
include: tools.include
proxy: tools.proxy
x-account-id: tools.x-account-id
outputParameters:
- type: object
mapping: $.
- name: creates-employee
description: Creates an employee
hints:
readOnly: false
destructive: false
idempotent: false
call: stackone-employees.hriscreateemployee
with:
x-account-id: tools.x-account-id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-employee
description: Get Employee
hints:
readOnly: true
destructive: false
idempotent: true
call: stackone-employees.hrisgetemployee
with:
id: tools.id
page: tools.page
page_size: tools.page_size
raw: tools.raw
fields: tools.fields
sync_token: tools.sync_token
updated_after: tools.updated_after
expand: tools.expand
include: tools.include
proxy: tools.proxy
x-account-id: tools.x-account-id
outputParameters:
- type: object
mapping: $.
- name: updates-employee
description: Updates an employee
hints:
readOnly: false
destructive: false
idempotent: true
call: stackone-employees.hrisupdateemployee
with:
id: tools.id
x-account-id: tools.x-account-id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: list-employee-time-off-requests
description: List Employee Time Off Requests
hints:
readOnly: true
destructive: false
idempotent: true
call: stackone-employees.hrislistemployeetimeoffrequests
with:
x-account-id: tools.x-account-id
id: tools.id
page: tools.page
page_size: tools.page_size
raw: tools.raw
fields: tools.fields
sync_token: tools.sync_token
updated_after: tools.updated_after
proxy: tools.proxy
outputParameters:
- type: object
mapping: $.
- name: create-employee-time-off-request
description: Create Employee Time Off Request
hints:
readOnly: false
destructive: false
idempotent: false
call: stackone-employees.hriscreateemployeetimeoffrequest
with:
x-account-id: tools.x-account-id
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-employees-time-off-request
description: Get Employees Time Off Request
hints:
readOnly: true
destructive: false
idempotent: true
call: stackone-employees.hrisgetemployeestimeoffrequest
with:
x-account-id: tools.x-account-id
id: tools.id
subResourceId: tools.subResourceId
page: tools.page
page_size: tools.page_size
raw: tools.raw
fields: tools.fields
sync_token: tools.sync_token
updated_after: tools.updated_after
proxy: tools.proxy
outputParameters:
- type: object
mapping: $.