Unified.to · Capability
Unified.to API — interview
Unified.to API — interview. 6 operations. Lead operation: List All Interviews. Self-contained Naftiko capability covering one Unified To business surface.
What You Can Do
GET
Listatsinterviews
— List All Interviews
/v1/ats/{connection-id}/interview
POST
Createatsinterview
— Create an Interview
/v1/ats/{connection-id}/interview
DELETE
Removeatsinterview
— Remove an Interview
/v1/ats/{connection-id}/interview/{id}
GET
Getatsinterview
— Retrieve an Interview
/v1/ats/{connection-id}/interview/{id}
PATCH
Patchatsinterview
— Update an Interview
/v1/ats/{connection-id}/interview/{id}
PUT
Updateatsinterview
— Update an Interview
/v1/ats/{connection-id}/interview/{id}
MCP Tools
list-all-interviews
List All Interviews
read-only
idempotent
create-interview
Create an Interview
remove-interview
Remove an Interview
idempotent
retrieve-interview
Retrieve an Interview
read-only
idempotent
update-interview
Update an Interview
idempotent
update-interview-2
Update an Interview
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Unified.to API — interview
description: 'Unified.to API — interview. 6 operations. Lead operation: List All Interviews. Self-contained Naftiko capability
covering one Unified To business surface.'
tags:
- Unified To
- interview
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
UNIFIED_TO_API_KEY: UNIFIED_TO_API_KEY
capability:
consumes:
- type: http
namespace: full-interview
baseUri: https://api.unified.to
description: Unified.to API — interview business capability. Self-contained, no shared references.
resources:
- name: ats-connection_id-interview
path: /ats/{connection_id}/interview
operations:
- name: listatsinterviews
method: GET
description: List All Interviews
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: limit
in: query
type: number
- name: offset
in: query
type: number
- name: updated_gte
in: query
type: string
description: Return only results whose updated date is equal or greater to this value (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ
format)
- name: sort
in: query
type: string
- name: order
in: query
type: string
- name: query
in: query
type: string
description: Query string to search. eg. email address or name
- name: application_id
in: query
type: string
description: The application ID to filter by
- name: fields
in: query
type: array
description: Fields to return
- name: raw
in: query
type: string
description: 'Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters:
foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar'
- name: connection_id
in: path
type: string
description: ID of the connection
required: true
- name: createatsinterview
method: POST
description: Create an Interview
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: fields
in: query
type: array
description: Fields to return
- name: raw
in: query
type: string
description: 'Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters:
foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar'
- name: connection_id
in: path
type: string
description: ID of the connection
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: ats-connection_id-interview-id
path: /ats/{connection_id}/interview/{id}
operations:
- name: removeatsinterview
method: DELETE
description: Remove an Interview
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: connection_id
in: path
type: string
description: ID of the connection
required: true
- name: id
in: path
type: string
description: ID of the Interview
required: true
- name: getatsinterview
method: GET
description: Retrieve an Interview
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: fields
in: query
type: array
description: Fields to return
- name: raw
in: query
type: string
description: 'Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters:
foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar'
- name: connection_id
in: path
type: string
description: ID of the connection
required: true
- name: id
in: path
type: string
description: ID of the Interview
required: true
- name: patchatsinterview
method: PATCH
description: Update an Interview
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: fields
in: query
type: array
description: Fields to return
- name: raw
in: query
type: string
description: 'Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters:
foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar'
- name: connection_id
in: path
type: string
description: ID of the connection
required: true
- name: id
in: path
type: string
description: ID of the Interview
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: updateatsinterview
method: PUT
description: Update an Interview
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: fields
in: query
type: array
description: Fields to return
- name: raw
in: query
type: string
description: 'Raw parameters to include in the 3rd-party request. Encoded as a URL component. eg. raw parameters:
foo=bar&zoo=bar -> raw=foo%3Dbar%26zoo%3Dbar'
- name: connection_id
in: path
type: string
description: ID of the connection
required: true
- name: id
in: path
type: string
description: ID of the Interview
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: apikey
key: authorization
value: '{{env.UNIFIED_TO_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: full-interview-rest
port: 8080
description: REST adapter for Unified.to API — interview. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/ats/{connection-id}/interview
name: ats-connection-id-interview
description: REST surface for ats-connection_id-interview.
operations:
- method: GET
name: listatsinterviews
description: List All Interviews
call: full-interview.listatsinterviews
with:
limit: rest.limit
offset: rest.offset
updated_gte: rest.updated_gte
sort: rest.sort
order: rest.order
query: rest.query
application_id: rest.application_id
fields: rest.fields
raw: rest.raw
connection_id: rest.connection_id
outputParameters:
- type: object
mapping: $.
- method: POST
name: createatsinterview
description: Create an Interview
call: full-interview.createatsinterview
with:
fields: rest.fields
raw: rest.raw
connection_id: rest.connection_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/ats/{connection-id}/interview/{id}
name: ats-connection-id-interview-id
description: REST surface for ats-connection_id-interview-id.
operations:
- method: DELETE
name: removeatsinterview
description: Remove an Interview
call: full-interview.removeatsinterview
with:
connection_id: rest.connection_id
id: rest.id
outputParameters:
- type: object
mapping: $.
- method: GET
name: getatsinterview
description: Retrieve an Interview
call: full-interview.getatsinterview
with:
fields: rest.fields
raw: rest.raw
connection_id: rest.connection_id
id: rest.id
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: patchatsinterview
description: Update an Interview
call: full-interview.patchatsinterview
with:
fields: rest.fields
raw: rest.raw
connection_id: rest.connection_id
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateatsinterview
description: Update an Interview
call: full-interview.updateatsinterview
with:
fields: rest.fields
raw: rest.raw
connection_id: rest.connection_id
id: rest.id
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: full-interview-mcp
port: 9090
transport: http
description: MCP adapter for Unified.to API — interview. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: list-all-interviews
description: List All Interviews
hints:
readOnly: true
destructive: false
idempotent: true
call: full-interview.listatsinterviews
with:
limit: tools.limit
offset: tools.offset
updated_gte: tools.updated_gte
sort: tools.sort
order: tools.order
query: tools.query
application_id: tools.application_id
fields: tools.fields
raw: tools.raw
connection_id: tools.connection_id
outputParameters:
- type: object
mapping: $.
- name: create-interview
description: Create an Interview
hints:
readOnly: false
destructive: false
idempotent: false
call: full-interview.createatsinterview
with:
fields: tools.fields
raw: tools.raw
connection_id: tools.connection_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: remove-interview
description: Remove an Interview
hints:
readOnly: false
destructive: true
idempotent: true
call: full-interview.removeatsinterview
with:
connection_id: tools.connection_id
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: retrieve-interview
description: Retrieve an Interview
hints:
readOnly: true
destructive: false
idempotent: true
call: full-interview.getatsinterview
with:
fields: tools.fields
raw: tools.raw
connection_id: tools.connection_id
id: tools.id
outputParameters:
- type: object
mapping: $.
- name: update-interview
description: Update an Interview
hints:
readOnly: false
destructive: false
idempotent: true
call: full-interview.patchatsinterview
with:
fields: tools.fields
raw: tools.raw
connection_id: tools.connection_id
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: update-interview-2
description: Update an Interview
hints:
readOnly: false
destructive: false
idempotent: true
call: full-interview.updateatsinterview
with:
fields: tools.fields
raw: tools.raw
connection_id: tools.connection_id
id: tools.id
body: tools.body
outputParameters:
- type: object
mapping: $.