Telefonie · Capability
Telefonie Voice API — Calls
Telefonie Voice API — Calls. 5 operations. Lead operation: List Calls. Self-contained Naftiko capability covering one Telefonie business surface.
What You Can Do
GET
Listcalls
— List Calls
/v1/calls
POST
Initiatecall
— Initiate Call
/v1/calls
GET
Getcall
— Get Call
/v1/calls/{call-id}
POST
Updatecall
— Update Call
/v1/calls/{call-id}
DELETE
Endcall
— End Call
/v1/calls/{call-id}
MCP Tools
list-calls
List Calls
read-only
idempotent
initiate-call
Initiate Call
get-call
Get Call
read-only
idempotent
update-call
Update Call
end-call
End Call
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Telefonie Voice API — Calls
description: 'Telefonie Voice API — Calls. 5 operations. Lead operation: List Calls. Self-contained Naftiko capability covering
one Telefonie business surface.'
tags:
- Telefonie
- Calls
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
TELEFONIE_API_KEY: TELEFONIE_API_KEY
capability:
consumes:
- type: http
namespace: voice-calls
baseUri: https://api.telefonie.com/v1/voice
description: Telefonie Voice API — Calls business capability. Self-contained, no shared references.
resources:
- name: calls
path: /calls
operations:
- name: listcalls
method: GET
description: List Calls
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: status
in: query
type: string
description: Filter by call status
- name: direction
in: query
type: string
description: Filter by call direction
- name: from
in: query
type: string
description: Filter calls from this phone number
- name: to
in: query
type: string
description: Filter calls to this phone number
- name: page
in: query
type: integer
description: Page number for pagination
- name: page_size
in: query
type: integer
description: Number of results per page
- name: initiatecall
method: POST
description: Initiate Call
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: calls-call_id
path: /calls/{call_id}
operations:
- name: getcall
method: GET
description: Get Call
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: call_id
in: path
type: string
description: Unique identifier for the call
required: true
- name: updatecall
method: POST
description: Update Call
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: call_id
in: path
type: string
description: Unique identifier for the call
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: endcall
method: DELETE
description: End Call
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: call_id
in: path
type: string
description: Unique identifier for the call
required: true
authentication:
type: apikey
key: X-API-Key
value: '{{env.TELEFONIE_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: voice-calls-rest
port: 8080
description: REST adapter for Telefonie Voice API — Calls. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/calls
name: calls
description: REST surface for calls.
operations:
- method: GET
name: listcalls
description: List Calls
call: voice-calls.listcalls
with:
status: rest.status
direction: rest.direction
from: rest.from
to: rest.to
page: rest.page
page_size: rest.page_size
outputParameters:
- type: object
mapping: $.
- method: POST
name: initiatecall
description: Initiate Call
call: voice-calls.initiatecall
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/calls/{call-id}
name: calls-call-id
description: REST surface for calls-call_id.
operations:
- method: GET
name: getcall
description: Get Call
call: voice-calls.getcall
with:
call_id: rest.call_id
outputParameters:
- type: object
mapping: $.
- method: POST
name: updatecall
description: Update Call
call: voice-calls.updatecall
with:
call_id: rest.call_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: endcall
description: End Call
call: voice-calls.endcall
with:
call_id: rest.call_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: voice-calls-mcp
port: 9090
transport: http
description: MCP adapter for Telefonie Voice API — Calls. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: list-calls
description: List Calls
hints:
readOnly: true
destructive: false
idempotent: true
call: voice-calls.listcalls
with:
status: tools.status
direction: tools.direction
from: tools.from
to: tools.to
page: tools.page
page_size: tools.page_size
outputParameters:
- type: object
mapping: $.
- name: initiate-call
description: Initiate Call
hints:
readOnly: false
destructive: false
idempotent: false
call: voice-calls.initiatecall
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-call
description: Get Call
hints:
readOnly: true
destructive: false
idempotent: true
call: voice-calls.getcall
with:
call_id: tools.call_id
outputParameters:
- type: object
mapping: $.
- name: update-call
description: Update Call
hints:
readOnly: false
destructive: false
idempotent: false
call: voice-calls.updatecall
with:
call_id: tools.call_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: end-call
description: End Call
hints:
readOnly: false
destructive: true
idempotent: true
call: voice-calls.endcall
with:
call_id: tools.call_id
outputParameters:
- type: object
mapping: $.