naftiko: 1.0.0-alpha2 info: label: "Ashby \u2014 Jobs" description: Ashby Jobs management capability. Job CRUD, status, and compensation updates. tags: - Ashby - Recruiting - ATS - Jobs created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: ASHBY_API_KEY: ASHBY_API_KEY capability: consumes: - type: http namespace: jobs-jobs baseUri: https://api.ashbyhq.com description: Ashby Jobs management capability. Job CRUD, status, and compensation updates. Backed by the Ashby public REST API. resources: - name: job-list path: /job.list operations: - name: job-list method: POST description: List jobs 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: job-info path: /job.info operations: - name: job-info method: POST description: Get job 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: job-search path: /job.search operations: - name: job-search method: POST description: Search jobs 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: job-create path: /job.create operations: - name: job-create method: POST description: Create a job 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: job-update path: /job.update operations: - name: job-update method: POST description: Update a job 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: job-set-status path: /job.setStatus operations: - name: job-set-status method: POST description: Set job status (Open/Closed/Archived/Draft) 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: job-update-compensation path: /job.updateCompensation operations: - name: job-update-compensation method: POST description: Update job compensation summary 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: jobs-jobs-rest port: 8080 description: "REST adapter for Ashby \u2014 Jobs. One Spectral-compliant resource per consumed operation, prefixed with /v1." resources: - path: /v1/job.list name: job-list description: REST surface for job-list. operations: - method: POST name: job-list description: List jobs call: jobs-jobs.job-list with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/job.info name: job-info description: REST surface for job-info. operations: - method: POST name: job-info description: Get job info call: jobs-jobs.job-info with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/job.search name: job-search description: REST surface for job-search. operations: - method: POST name: job-search description: Search jobs call: jobs-jobs.job-search with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/job.create name: job-create description: REST surface for job-create. operations: - method: POST name: job-create description: Create a job call: jobs-jobs.job-create with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/job.update name: job-update description: REST surface for job-update. operations: - method: POST name: job-update description: Update a job call: jobs-jobs.job-update with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/job.setStatus name: job-set-status description: REST surface for job-set-status. operations: - method: POST name: job-set-status description: Set job status (Open/Closed/Archived/Draft) call: jobs-jobs.job-set-status with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/job.updateCompensation name: job-update-compensation description: REST surface for job-update-compensation. operations: - method: POST name: job-update-compensation description: Update job compensation summary call: jobs-jobs.job-update-compensation with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: jobs-jobs-mcp port: 9090 transport: http description: "MCP adapter for Ashby \u2014 Jobs. One tool per consumed operation, routed inline through this capability's consumes block." tools: - name: ashby-job-list description: List jobs hints: readOnly: true destructive: false idempotent: true call: jobs-jobs.job-list with: body: tools.body outputParameters: - type: object mapping: $. - name: ashby-job-info description: Get job info hints: readOnly: true destructive: false idempotent: true call: jobs-jobs.job-info with: body: tools.body outputParameters: - type: object mapping: $. - name: ashby-job-search description: Search jobs hints: readOnly: true destructive: false idempotent: true call: jobs-jobs.job-search with: body: tools.body outputParameters: - type: object mapping: $. - name: ashby-job-create description: Create a job hints: readOnly: false destructive: false idempotent: false call: jobs-jobs.job-create with: body: tools.body outputParameters: - type: object mapping: $. - name: ashby-job-update description: Update a job hints: readOnly: false destructive: false idempotent: true call: jobs-jobs.job-update with: body: tools.body outputParameters: - type: object mapping: $. - name: ashby-job-set-status description: Set job status (Open/Closed/Archived/Draft) hints: readOnly: false destructive: false idempotent: false call: jobs-jobs.job-set-status with: body: tools.body outputParameters: - type: object mapping: $. - name: ashby-job-update-compensation description: Update job compensation summary hints: readOnly: false destructive: false idempotent: true call: jobs-jobs.job-update-compensation with: body: tools.body outputParameters: - type: object mapping: $.