Ashby · Capability

Ashby API — Interviewer Pool

Ashby API — Interviewer Pool. 8 operations. Lead operation: interviewerPool.addUser. Self-contained Naftiko capability covering one Ashby business surface.

Run with Naftiko AshbyInterviewer Pool

What You Can Do

POST
Interviewerpooladduser — interviewerPool.addUser
/v1/interviewerpool-adduser
POST
Interviewerpoolarchive — interviewerPool.archive
/v1/interviewerpool-archive
POST
Interviewerpoolcreate — interviewerPool.create
/v1/interviewerpool-create
POST
Interviewerpoolinfo — interviewerPool.info
/v1/interviewerpool-info
POST
Interviewerpoollist — interviewerPool.list
/v1/interviewerpool-list
POST
Interviewerpoolremoveuser — interviewerPool.removeUser
/v1/interviewerpool-removeuser
POST
Interviewerpoolrestore — interviewerPool.restore
/v1/interviewerpool-restore
POST
Interviewerpoolupdate — interviewerPool.update
/v1/interviewerpool-update

MCP Tools

interviewerpool-adduser

interviewerPool.addUser

interviewerpool-archive

interviewerPool.archive

interviewerpool-create

interviewerPool.create

interviewerpool-info

interviewerPool.info

interviewerpool-list

interviewerPool.list

interviewerpool-removeuser

interviewerPool.removeUser

interviewerpool-restore

interviewerPool.restore

interviewerpool-update

interviewerPool.update

Capability Spec

ashby-interviewer-pool.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Ashby API — Interviewer Pool
  description: 'Ashby API — Interviewer Pool. 8 operations. Lead operation: interviewerPool.addUser. Self-contained Naftiko
    capability covering one Ashby business surface.'
  tags:
  - Ashby
  - Interviewer Pool
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    ASHBY_API_KEY: ASHBY_API_KEY
capability:
  consumes:
  - type: http
    namespace: ashby-interviewer-pool
    baseUri: https://api.ashbyhq.com
    description: Ashby API — Interviewer Pool business capability. Self-contained, no shared references.
    resources:
    - name: interviewerPool.addUser
      path: /interviewerPool.addUser
      operations:
      - name: interviewerpooladduser
        method: POST
        description: interviewerPool.addUser
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: interviewerPool.archive
      path: /interviewerPool.archive
      operations:
      - name: interviewerpoolarchive
        method: POST
        description: interviewerPool.archive
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: interviewerPool.create
      path: /interviewerPool.create
      operations:
      - name: interviewerpoolcreate
        method: POST
        description: interviewerPool.create
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: interviewerPool.info
      path: /interviewerPool.info
      operations:
      - name: interviewerpoolinfo
        method: POST
        description: interviewerPool.info
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: interviewerPool.list
      path: /interviewerPool.list
      operations:
      - name: interviewerpoollist
        method: POST
        description: interviewerPool.list
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: interviewerPool.removeUser
      path: /interviewerPool.removeUser
      operations:
      - name: interviewerpoolremoveuser
        method: POST
        description: interviewerPool.removeUser
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: interviewerPool.restore
      path: /interviewerPool.restore
      operations:
      - name: interviewerpoolrestore
        method: POST
        description: interviewerPool.restore
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: interviewerPool.update
      path: /interviewerPool.update
      operations:
      - name: interviewerpoolupdate
        method: POST
        description: interviewerPool.update
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    authentication:
      type: apikey
      key: Ashby-Signature
      value: '{{env.ASHBY_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: ashby-interviewer-pool-rest
    port: 8080
    description: REST adapter for Ashby API — Interviewer Pool. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/interviewerpool-adduser
      name: interviewerpool-adduser
      description: REST surface for interviewerPool.addUser.
      operations:
      - method: POST
        name: interviewerpooladduser
        description: interviewerPool.addUser
        call: ashby-interviewer-pool.interviewerpooladduser
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/interviewerpool-archive
      name: interviewerpool-archive
      description: REST surface for interviewerPool.archive.
      operations:
      - method: POST
        name: interviewerpoolarchive
        description: interviewerPool.archive
        call: ashby-interviewer-pool.interviewerpoolarchive
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/interviewerpool-create
      name: interviewerpool-create
      description: REST surface for interviewerPool.create.
      operations:
      - method: POST
        name: interviewerpoolcreate
        description: interviewerPool.create
        call: ashby-interviewer-pool.interviewerpoolcreate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/interviewerpool-info
      name: interviewerpool-info
      description: REST surface for interviewerPool.info.
      operations:
      - method: POST
        name: interviewerpoolinfo
        description: interviewerPool.info
        call: ashby-interviewer-pool.interviewerpoolinfo
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/interviewerpool-list
      name: interviewerpool-list
      description: REST surface for interviewerPool.list.
      operations:
      - method: POST
        name: interviewerpoollist
        description: interviewerPool.list
        call: ashby-interviewer-pool.interviewerpoollist
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/interviewerpool-removeuser
      name: interviewerpool-removeuser
      description: REST surface for interviewerPool.removeUser.
      operations:
      - method: POST
        name: interviewerpoolremoveuser
        description: interviewerPool.removeUser
        call: ashby-interviewer-pool.interviewerpoolremoveuser
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/interviewerpool-restore
      name: interviewerpool-restore
      description: REST surface for interviewerPool.restore.
      operations:
      - method: POST
        name: interviewerpoolrestore
        description: interviewerPool.restore
        call: ashby-interviewer-pool.interviewerpoolrestore
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/interviewerpool-update
      name: interviewerpool-update
      description: REST surface for interviewerPool.update.
      operations:
      - method: POST
        name: interviewerpoolupdate
        description: interviewerPool.update
        call: ashby-interviewer-pool.interviewerpoolupdate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: ashby-interviewer-pool-mcp
    port: 9090
    transport: http
    description: MCP adapter for Ashby API — Interviewer Pool. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: interviewerpool-adduser
      description: interviewerPool.addUser
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ashby-interviewer-pool.interviewerpooladduser
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: interviewerpool-archive
      description: interviewerPool.archive
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ashby-interviewer-pool.interviewerpoolarchive
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: interviewerpool-create
      description: interviewerPool.create
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ashby-interviewer-pool.interviewerpoolcreate
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: interviewerpool-info
      description: interviewerPool.info
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ashby-interviewer-pool.interviewerpoolinfo
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: interviewerpool-list
      description: interviewerPool.list
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ashby-interviewer-pool.interviewerpoollist
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: interviewerpool-removeuser
      description: interviewerPool.removeUser
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ashby-interviewer-pool.interviewerpoolremoveuser
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: interviewerpool-restore
      description: interviewerPool.restore
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ashby-interviewer-pool.interviewerpoolrestore
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: interviewerpool-update
      description: interviewerPool.update
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: ashby-interviewer-pool.interviewerpoolupdate
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.