RingCentral · Capability
RingCentral API — Phone Numbers
RingCentral API — Phone Numbers. 10 operations. Lead operation: Get Extension Phone Number List. Self-contained Naftiko capability covering one Ringcentral business surface.
What You Can Do
GET
Listextensionphonenumbers
— Get Extension Phone Number List
/v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/phone-number
GET
Listaccountphonenumbers
— List Company Phone Numbers
/v1/restapi/v1-0/account/{accountid}/phone-number
GET
Readaccountphonenumber
— Get Phone Number
/v1/restapi/v1-0/account/{accountid}/phone-number/{phonenumberid}
POST
Parsephonenumber
— Parse Phone Number(s)
/v1/restapi/v1-0/number-parser/parse
GET
Listaccountphonenumbersv2
— List Account Phone Numbers
/v1/restapi/v2/accounts/{accountid}/phone-numbers
DELETE
Deletenumbersfrominventoryv2
— Delete Numbers from Inventory
/v1/restapi/v2/accounts/{accountid}/phone-numbers
POST
Addnumberstoinventoryv2
— Add Numbers to Inventory
/v1/restapi/v2/accounts/{accountid}/phone-numbers/bulk-add
GET
Getbulkaddtaskresultsv2
— Get Add Numbers Task Results
/v1/restapi/v2/accounts/{accountid}/phone-numbers/bulk-add/{taskid}
PATCH
Assignphonenumberv2
— Assign Phone Number
/v1/restapi/v2/accounts/{accountid}/phone-numbers/{phonenumberid}
POST
Replacephonenumberv2
— Replace Phone Number
/v1/restapi/v2/accounts/{accountid}/phone-numbers/{phonenumberid}/replace
MCP Tools
get-extension-phone-number-list
Get Extension Phone Number List
read-only
idempotent
list-company-phone-numbers
List Company Phone Numbers
read-only
idempotent
get-phone-number
Get Phone Number
read-only
idempotent
parse-phone-number-s
Parse Phone Number(s)
list-account-phone-numbers
List Account Phone Numbers
read-only
idempotent
delete-numbers-inventory
Delete Numbers from Inventory
idempotent
add-numbers-inventory
Add Numbers to Inventory
get-add-numbers-task-results
Get Add Numbers Task Results
read-only
idempotent
assign-phone-number
Assign Phone Number
idempotent
replace-phone-number
Replace Phone Number
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: RingCentral API — Phone Numbers
description: 'RingCentral API — Phone Numbers. 10 operations. Lead operation: Get Extension Phone Number List. Self-contained
Naftiko capability covering one Ringcentral business surface.'
tags:
- Ringcentral
- Phone Numbers
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
RINGCENTRAL_API_KEY: RINGCENTRAL_API_KEY
capability:
consumes:
- type: http
namespace: platform-phone-numbers
baseUri: https://platform.ringcentral.com
description: RingCentral API — Phone Numbers business capability. Self-contained, no shared references.
resources:
- name: restapi-v1.0-account-accountId-extension-extensionId-phone-number
path: /restapi/v1.0/account/{accountId}/extension/{extensionId}/phone-number
operations:
- name: listextensionphonenumbers
method: GET
description: Get Extension Phone Number List
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: status
in: query
type: string
description: Status of a phone number
- name: usageType
in: query
type: array
description: Usage type of phone number
- name: page
in: query
type: integer
description: Indicates a page number to retrieve. Only positive number values
- name: perPage
in: query
type: integer
description: Indicates a page size (number of items). If not specified, the value is '100' by default
- name: restapi-v1.0-account-accountId-phone-number
path: /restapi/v1.0/account/{accountId}/phone-number
operations:
- name: listaccountphonenumbers
method: GET
description: List Company Phone Numbers
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: page
in: query
type: integer
description: Indicates a page number to retrieve. Only positive number values
- name: perPage
in: query
type: integer
description: Indicates a page size (number of items)
- name: usageType
in: query
type: array
description: Usage type of phone number
- name: paymentType
in: query
type: string
description: Payment Type of the number
- name: status
in: query
type: string
description: Status of a phone number
- name: restapi-v1.0-account-accountId-phone-number-phoneNumberId
path: /restapi/v1.0/account/{accountId}/phone-number/{phoneNumberId}
operations:
- name: readaccountphonenumber
method: GET
description: Get Phone Number
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: phoneNumberId
in: path
type: integer
description: Internal identifier of a phone number
required: true
- name: restapi-v1.0-number-parser-parse
path: /restapi/v1.0/number-parser/parse
operations:
- name: parsephonenumber
method: POST
description: Parse Phone Number(s)
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: homeCountry
in: query
type: string
description: ISO 3166 alpha2 code of the home country to be used if it is impossible to determine country from the
number itself.
- name: nationalAsPriority
in: query
type: boolean
description: The default value is `false`. If `true`, the numbers that are
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: restapi-v2-accounts-accountId-phone-numbers
path: /restapi/v2/accounts/{accountId}/phone-numbers
operations:
- name: listaccountphonenumbersv2
method: GET
description: List Account Phone Numbers
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: type
in: query
type: array
description: Types of phone numbers to be returned
- name: usageType
in: query
type: array
description: Usage type(s) of phone numbers to be returned
- name: status
in: query
type: string
description: Status of the phone number(s) to be returned
- name: tollType
in: query
type: string
description: Toll type of phone numbers to return
- name: extensionStatus
in: query
type: string
description: Statuses of extensions to return phone numbers for
- name: byocNumber
in: query
type: boolean
description: The parameter reflects whether this number is BYOC or not
- name: phoneNumber
in: query
type: string
description: Phone number in e.164 format to be searched for.
- name: deletenumbersfrominventoryv2
method: DELETE
description: Delete Numbers from Inventory
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: restapi-v2-accounts-accountId-phone-numbers-bulk-add
path: /restapi/v2/accounts/{accountId}/phone-numbers/bulk-add
operations:
- name: addnumberstoinventoryv2
method: POST
description: Add Numbers to Inventory
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: restapi-v2-accounts-accountId-phone-numbers-bulk-add-taskId
path: /restapi/v2/accounts/{accountId}/phone-numbers/bulk-add/{taskId}
operations:
- name: getbulkaddtaskresultsv2
method: GET
description: Get Add Numbers Task Results
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: taskId
in: path
type: string
description: Identifier of a task returned by asynchronous bulk add operation
required: true
- name: restapi-v2-accounts-accountId-phone-numbers-phoneNumberId
path: /restapi/v2/accounts/{accountId}/phone-numbers/{phoneNumberId}
operations:
- name: assignphonenumberv2
method: PATCH
description: Assign Phone Number
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: restapi-v2-accounts-accountId-phone-numbers-phoneNumberId-replace
path: /restapi/v2/accounts/{accountId}/phone-numbers/{phoneNumberId}/replace
operations:
- name: replacephonenumberv2
method: POST
description: Replace Phone Number
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: bearer
token: '{{env.RINGCENTRAL_API_KEY}}'
exposes:
- type: rest
namespace: platform-phone-numbers-rest
port: 8080
description: REST adapter for RingCentral API — Phone Numbers. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/restapi/v1-0/account/{accountid}/extension/{extensionid}/phone-number
name: restapi-v1-0-account-accountid-extension-extensionid-phone-number
description: REST surface for restapi-v1.0-account-accountId-extension-extensionId-phone-number.
operations:
- method: GET
name: listextensionphonenumbers
description: Get Extension Phone Number List
call: platform-phone-numbers.listextensionphonenumbers
with:
status: rest.status
usageType: rest.usageType
page: rest.page
perPage: rest.perPage
outputParameters:
- type: object
mapping: $.
- path: /v1/restapi/v1-0/account/{accountid}/phone-number
name: restapi-v1-0-account-accountid-phone-number
description: REST surface for restapi-v1.0-account-accountId-phone-number.
operations:
- method: GET
name: listaccountphonenumbers
description: List Company Phone Numbers
call: platform-phone-numbers.listaccountphonenumbers
with:
page: rest.page
perPage: rest.perPage
usageType: rest.usageType
paymentType: rest.paymentType
status: rest.status
outputParameters:
- type: object
mapping: $.
- path: /v1/restapi/v1-0/account/{accountid}/phone-number/{phonenumberid}
name: restapi-v1-0-account-accountid-phone-number-phonenumberid
description: REST surface for restapi-v1.0-account-accountId-phone-number-phoneNumberId.
operations:
- method: GET
name: readaccountphonenumber
description: Get Phone Number
call: platform-phone-numbers.readaccountphonenumber
with:
phoneNumberId: rest.phoneNumberId
outputParameters:
- type: object
mapping: $.
- path: /v1/restapi/v1-0/number-parser/parse
name: restapi-v1-0-number-parser-parse
description: REST surface for restapi-v1.0-number-parser-parse.
operations:
- method: POST
name: parsephonenumber
description: Parse Phone Number(s)
call: platform-phone-numbers.parsephonenumber
with:
homeCountry: rest.homeCountry
nationalAsPriority: rest.nationalAsPriority
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/restapi/v2/accounts/{accountid}/phone-numbers
name: restapi-v2-accounts-accountid-phone-numbers
description: REST surface for restapi-v2-accounts-accountId-phone-numbers.
operations:
- method: GET
name: listaccountphonenumbersv2
description: List Account Phone Numbers
call: platform-phone-numbers.listaccountphonenumbersv2
with:
type: rest.type
usageType: rest.usageType
status: rest.status
tollType: rest.tollType
extensionStatus: rest.extensionStatus
byocNumber: rest.byocNumber
phoneNumber: rest.phoneNumber
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deletenumbersfrominventoryv2
description: Delete Numbers from Inventory
call: platform-phone-numbers.deletenumbersfrominventoryv2
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/restapi/v2/accounts/{accountid}/phone-numbers/bulk-add
name: restapi-v2-accounts-accountid-phone-numbers-bulk-add
description: REST surface for restapi-v2-accounts-accountId-phone-numbers-bulk-add.
operations:
- method: POST
name: addnumberstoinventoryv2
description: Add Numbers to Inventory
call: platform-phone-numbers.addnumberstoinventoryv2
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/restapi/v2/accounts/{accountid}/phone-numbers/bulk-add/{taskid}
name: restapi-v2-accounts-accountid-phone-numbers-bulk-add-taskid
description: REST surface for restapi-v2-accounts-accountId-phone-numbers-bulk-add-taskId.
operations:
- method: GET
name: getbulkaddtaskresultsv2
description: Get Add Numbers Task Results
call: platform-phone-numbers.getbulkaddtaskresultsv2
with:
taskId: rest.taskId
outputParameters:
- type: object
mapping: $.
- path: /v1/restapi/v2/accounts/{accountid}/phone-numbers/{phonenumberid}
name: restapi-v2-accounts-accountid-phone-numbers-phonenumberid
description: REST surface for restapi-v2-accounts-accountId-phone-numbers-phoneNumberId.
operations:
- method: PATCH
name: assignphonenumberv2
description: Assign Phone Number
call: platform-phone-numbers.assignphonenumberv2
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/restapi/v2/accounts/{accountid}/phone-numbers/{phonenumberid}/replace
name: restapi-v2-accounts-accountid-phone-numbers-phonenumberid-replace
description: REST surface for restapi-v2-accounts-accountId-phone-numbers-phoneNumberId-replace.
operations:
- method: POST
name: replacephonenumberv2
description: Replace Phone Number
call: platform-phone-numbers.replacephonenumberv2
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: platform-phone-numbers-mcp
port: 9090
transport: http
description: MCP adapter for RingCentral API — Phone Numbers. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: get-extension-phone-number-list
description: Get Extension Phone Number List
hints:
readOnly: true
destructive: false
idempotent: true
call: platform-phone-numbers.listextensionphonenumbers
with:
status: tools.status
usageType: tools.usageType
page: tools.page
perPage: tools.perPage
outputParameters:
- type: object
mapping: $.
- name: list-company-phone-numbers
description: List Company Phone Numbers
hints:
readOnly: true
destructive: false
idempotent: true
call: platform-phone-numbers.listaccountphonenumbers
with:
page: tools.page
perPage: tools.perPage
usageType: tools.usageType
paymentType: tools.paymentType
status: tools.status
outputParameters:
- type: object
mapping: $.
- name: get-phone-number
description: Get Phone Number
hints:
readOnly: true
destructive: false
idempotent: true
call: platform-phone-numbers.readaccountphonenumber
with:
phoneNumberId: tools.phoneNumberId
outputParameters:
- type: object
mapping: $.
- name: parse-phone-number-s
description: Parse Phone Number(s)
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-phone-numbers.parsephonenumber
with:
homeCountry: tools.homeCountry
nationalAsPriority: tools.nationalAsPriority
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: list-account-phone-numbers
description: List Account Phone Numbers
hints:
readOnly: true
destructive: false
idempotent: true
call: platform-phone-numbers.listaccountphonenumbersv2
with:
type: tools.type
usageType: tools.usageType
status: tools.status
tollType: tools.tollType
extensionStatus: tools.extensionStatus
byocNumber: tools.byocNumber
phoneNumber: tools.phoneNumber
outputParameters:
- type: object
mapping: $.
- name: delete-numbers-inventory
description: Delete Numbers from Inventory
hints:
readOnly: false
destructive: true
idempotent: true
call: platform-phone-numbers.deletenumbersfrominventoryv2
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: add-numbers-inventory
description: Add Numbers to Inventory
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-phone-numbers.addnumberstoinventoryv2
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-add-numbers-task-results
description: Get Add Numbers Task Results
hints:
readOnly: true
destructive: false
idempotent: true
call: platform-phone-numbers.getbulkaddtaskresultsv2
with:
taskId: tools.taskId
outputParameters:
- type: object
mapping: $.
- name: assign-phone-number
description: Assign Phone Number
hints:
readOnly: false
destructive: false
idempotent: true
call: platform-phone-numbers.assignphonenumberv2
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: replace-phone-number
description: Replace Phone Number
hints:
readOnly: false
destructive: false
idempotent: false
call: platform-phone-numbers.replacephonenumberv2
with:
body: tools.body
outputParameters:
- type: object
mapping: $.