Ashby · Capability

Ashby — Departments

Ashby Departments and Teams capability. CRUD and hierarchy management for organizational structure.

Ashby — Departments is a Naftiko capability published by Ashby, one of 19 capabilities the APIs.io network indexes for this provider. It bundles 6 operations across the POST method.

The capability includes 2 read-only operations and 4 state-changing operations. Lead operation: List departments. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Ashby, Recruiting, ATS, and Departments.

Run with Naftiko AshbyRecruitingATSDepartments

What You Can Do

POST
Department list — List departments
/v1/department.list
POST
Department info — Get department info
/v1/department.info
POST
Department create — Create a department
/v1/department.create
POST
Department update — Update a department
/v1/department.update
POST
Department archive — Archive a department
/v1/department.archive
POST
Department restore — Restore a department
/v1/department.restore

MCP Tools

ashby-department-list

List departments

read-only idempotent
ashby-department-info

Get department info

read-only idempotent
ashby-department-create

Create a department

ashby-department-update

Update a department

idempotent
ashby-department-archive

Archive a department

ashby-department-restore

Restore a department

Capability Spec

organization-departments.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: "Ashby \u2014 Departments"
  description: Ashby Departments and Teams capability. CRUD and hierarchy management for organizational structure.
  tags:
  - Ashby
  - Recruiting
  - ATS
  - Departments
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    ASHBY_API_KEY: ASHBY_API_KEY
capability:
  consumes:
  - type: http
    namespace: organization-departments
    baseUri: https://api.ashbyhq.com
    description: Ashby Departments and Teams capability. CRUD and hierarchy management for organizational structure. Backed by the Ashby public REST API.
    resources:
    - name: department-list
      path: /department.list
      operations:
      - name: department-list
        method: POST
        description: List departments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON). See https://developers.ashbyhq.com/reference for the schema of each operation.
          required: false
        headers:
        - name: Accept
          value: application/json; version=1
        - name: Content-Type
          value: application/json
    - name: department-info
      path: /department.info
      operations:
      - name: department-info
        method: POST
        description: Get department info
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON). See https://developers.ashbyhq.com/reference for the schema of each operation.
          required: false
        headers:
        - name: Accept
          value: application/json; version=1
        - name: Content-Type
          value: application/json
    - name: department-create
      path: /department.create
      operations:
      - name: department-create
        method: POST
        description: Create a department
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON). See https://developers.ashbyhq.com/reference for the schema of each operation.
          required: false
        headers:
        - name: Accept
          value: application/json; version=1
        - name: Content-Type
          value: application/json
    - name: department-update
      path: /department.update
      operations:
      - name: department-update
        method: POST
        description: Update a department
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON). See https://developers.ashbyhq.com/reference for the schema of each operation.
          required: false
        headers:
        - name: Accept
          value: application/json; version=1
        - name: Content-Type
          value: application/json
    - name: department-archive
      path: /department.archive
      operations:
      - name: department-archive
        method: POST
        description: Archive a department
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON). See https://developers.ashbyhq.com/reference for the schema of each operation.
          required: false
        headers:
        - name: Accept
          value: application/json; version=1
        - name: Content-Type
          value: application/json
    - name: department-restore
      path: /department.restore
      operations:
      - name: department-restore
        method: POST
        description: Restore a department
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON). See https://developers.ashbyhq.com/reference for the schema of each operation.
          required: false
        headers:
        - name: Accept
          value: application/json; version=1
        - name: Content-Type
          value: application/json
    authentication:
      type: basic
      username: '{{env.ASHBY_API_KEY}}'
      password: ''
      description: 'HTTP Basic Auth: Ashby API key as username, blank password.'
  exposes:
  - type: rest
    namespace: organization-departments-rest
    port: 8080
    description: "REST adapter for Ashby \u2014 Departments. One Spectral-compliant resource per consumed operation, prefixed with /v1."
    resources:
    - path: /v1/department.list
      name: department-list
      description: REST surface for department-list.
      operations:
      - method: POST
        name: department-list
        description: List departments
        call: organization-departments.department-list
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/department.info
      name: department-info
      description: REST surface for department-info.
      operations:
      - method: POST
        name: department-info
        description: Get department info
        call: organization-departments.department-info
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/department.create
      name: department-create
      description: REST surface for department-create.
      operations:
      - method: POST
        name: department-create
        description: Create a department
        call: organization-departments.department-create
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/department.update
      name: department-update
      description: REST surface for department-update.
      operations:
      - method: POST
        name: department-update
        description: Update a department
        call: organization-departments.department-update
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/department.archive
      name: department-archive
      description: REST surface for department-archive.
      operations:
      - method: POST
        name: department-archive
        description: Archive a department
        call: organization-departments.department-archive
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/department.restore
      name: department-restore
      description: REST surface for department-restore.
      operations:
      - method: POST
        name: department-restore
        description: Restore a department
        call: organization-departments.department-restore
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: organization-departments-mcp
    port: 9090
    transport: http
    description: "MCP adapter for Ashby \u2014 Departments. One tool per consumed operation, routed inline through this capability's consumes block."
    tools:
    - name: ashby-department-list
      description: List departments
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: organization-departments.department-list
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: ashby-department-info
      description: Get department info
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: organization-departments.department-info
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: ashby-department-create
      description: Create a department
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: organization-departments.department-create
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: ashby-department-update
      description: Update a department
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: organization-departments.department-update
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: ashby-department-archive
      description: Archive a department
      hints:
        readOnly: false
        destructive: true
        idempotent: false
      call: organization-departments.department-archive
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: ashby-department-restore
      description: Restore a department
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: organization-departments.department-restore
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.