Коды абонентских функций (featurecodes)

Запросы

HTTP verb Endpoint Описание

POST

/rest/v1/uc/featurecodes

Создание нового КАФ

GET

/rest/v1/uc/featurecodes

Получение списка КАФ

GET

/rest/v1/uc/featurecodes/<id>

Получение данных КАФ

PATCH

/rest/v1/uc/featurecodes/<id>

Изменение данных КАФ

DELETE

/rest/v1/uc/featurecodes/<id>

Удаление КАФ

LOOKUP

/rest/v1/uc/featurecodes

Поиск идентификатора КАФ


Создание нового КАФ

Запрос

Описание полей: featurecode entity

Пример запроса
POST /rest/v1/uc/featurecodes HTTP/1.1
Content-Type: application/json; charset=utf-8

featurecode entity

Ответ

Описание полей: featurecode entity

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "id": "c0d66244-016c-b869-ead9-50e54938780c",
  "prefix": "150",
  "type": "ivr",
  "extension": "vmail",
  "priority": 100,
  "opts": {
    "title": "",
    "comment": ""
  },
  "ext": {
    "ct": "2019-08-22T08:20:44.88Z",
    "lwt": "2019-08-22T08:20:44.88Z"
  }
}

Получение списка КАФ

Запрос

Table 1. Параметры запроса
Имя Тип Описание

filter

object

Фильтр по значениям полей.

mask

str

Список полей для вывода. Доступные поля для выдачи: id, prefix, type, extension, priority, opts.title, ext.lwt, ext.ct.

offset

int

Смещение в списке ресурсов, подлежащих выдаче.

limit

int

Максимальное количество ресурсов в списке.

order

array<object|str>

Порядок сортировки ресурсов в списке.

flat

bool

Преобразование в плоский вид составных полей.

Пример запроса
GET /rest/v1/uc/featurecodes?filter={"type":"ivr"}&offset=0&limit=2 HTTP/1.1

Ответ

Описание полей: featurecode entity

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

[
  {
    "id": "c0d66244-016c-b869-ead9-50e54938780c",
    "prefix": "150",
    "type": "ivr",
    "extension": "vmail",
    "priority": 1234,
    "ext": {
      "ct": "2019-08-22T08:20:44.88Z",
      "lwt": "2019-08-22T08:20:44.88Z"
    }
  },
  {
    "id": "c2171b12-016c-b86a-2517-50e54938780c",
    "prefix": "*101",
    "type": "ivr",
    "extension": "welcome",
    "priority": 300,
    "ext": {
      "ct": "2019-08-22T08:20:59.79Z",
      "lwt": "2019-08-22T08:20:59.79Z"
    }
  }
]

Получение данных КАФ

Запрос

Table 2. Параметры запроса
Имя Тип Описание

mask

str

Список полей для вывода.

flat

bool

Преобразование в плоский вид составных полей.

Пример запроса
GET /rest/v1/uc/featurecodes/dccd337a-016c-d1cf-7393-50e54938780c HTTP/1.1

Ответ

Описание полей: featurecode entity

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "id": "dccd337a-016c-d1cf-7393-50e54938780c",
  "prefix": "*99",
  "type": "voicemail",
  "extension": "",
  "priority": 100,
  "opts": {
    "title": "",
    "comment": "default voicemail receive script used"
  },
  "ext": {
    "ct": "2019-08-27T06:42:09.17Z",
    "lwt": "2019-08-27T06:42:09.17Z"
  }
}

Изменение данных КАФ

Поля запрещенные для изменения: id

Запрос

Описание полей: featurecode entity

Пример запроса
PATCH /rest/v1/uc/featurecodes/c0d66244-016c-b869-ead9-50e54938780c HTTP/1.1
Content-Type: application/json; charset=utf-8

featurecode entity

Ответ

Описание полей: featurecode entity

Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
  "id": "c0d66244-016c-b869-ead9-50e54938780c",
  "prefix": "*101",
  "type": "ivr",
  "extension": "vmail",
  "priority": 100,
  "opts": {
    "title": "",
    "comment": "custom voicemail IVR script"
  },
  "ext": {
    "ct": "2019-08-22T08:20:44.88Z",
    "lwt": "2019-09-08T11:46:59.02Z"
  }
}

Удаление КАФ

Запрос

Пример запроса
DELETE /rest/v1/uc/featurecodes/c0d66244-016c-b869-ead9-50e54938780c HTTP/1.1

Ответ

Пример ответа
HTTP/1.1 204 No Content

Поиск идентификатора КАФ

Производит поиск ресурса по указанному ключу, возвращает идентификатор(ы) для построения endpoint.

Ключевые поля для поиска: id, prefix

Запрос

Пример запроса
LOOKUP /rest/v1/uc/featurecodes HTTP/1.1
Content-Type: application/json; charset=utf-8

"*101"

Ответ

Пример успешного ответа
HTTP/1.1 200 OK
content-type: application/json; charset=utf-8

[
  "c0d66244-016c-b869-ead9-50e54938780c"
]
Пример неуспешного ответа
HTTP/1.1 404 Not Found
Content-Type: application/json; charset=utf-8

{
  "error_code": 1404,
  "error_message": "Lookup failed"
}