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: $.