Общие сведения
Надёжность и безопасность
Покупка лицензии
Начало работы
Роли в системе
Проекты
Концепции
Компоненты
Инструкции
Задачи
Финансы
Ресурсы
Таймшиты
Клиенты
Вики
Затраты
Отчёты и аналитика
Типы отчётов
Тип отчёта «Акты»
Тип отчёта «Баланс отсутствий»
Тип отчёта «Бронирование»
Тип отчёта «Биллинг»
Тип отчёта «Версии проектов»
Тип отчёта «Задачи»
Тип отчёта «Затраты»
Тип отчёта «Заявки на затраты»
Тип отчёта «Заявки на отсутствия»
Тип отчёта «История ставок пользователей»
Тип отчёта «Запросы ресурсов»
Тип отчёта «Навыки пользователей»
Тип отчёта «Пользователи»
Тип отчёта «Проводки»
Тип отчёта «Ресурсный план»
Тип отчёта «Ресурсный план (по версиям)»
Тип отчёта «Проекты»
Тип отчёта «Сертификаты пользователей»
Тип отчёта «Счета»
Тип отчёта «Счета (строки)»
Тип отчёта «Таймшиты»
Тип отчёта «Таймшиты детально»
Тип отчёта «Финансы»
Тип отчёта «Структура работ»
Тип отчёта «Центры затрат проектов»
Тип отчёта «Задания воркфлоу»
Тип отчета Клиенты
Тип отчета «Контакты»
Тип отчёта «Сделки»
Тип отчёта «История состояний сделок»
Тип отчёта «Взаимодействия»
Использование отчётов
Группировка данных источника
Группировка данных в отчёте
Типы виджетов
Общие отчёты и шаблоны
Настройка отчёта
Экспорт отчётов
Пользовательские настройки отчёта
Вычисляемые поля
Особые колонки отчётов с временными рядами
Использование панелей мониторинга
Публикация панелей
FAQ
Фильтры источников данных
Настройка и администрирование
Типовой порядок настройки системы
Язык формул и выражений
Язык шаблонов
On-premises
API
История изменений
Термины и определения

Чтение одной записи

Обновлено: 21.06.2026

Назначение

Чтение одной записи позволяет получить конкретный объект по его идентификатору.

Для этого используется HTTP-метод GET с указанием идентификатора записи в URL.

Этот способ используется, когда известен уникальный идентификатор сущности и требуется получить её текущее состояние.

Базовый запрос

Например, получение проекта по идентификатору:

GET https://api.timetta.com/odata/Projects('45eb27e2-161e-4eeb-9b56-72eaea30511d')

Пример ответа:

{
  "id": "45eb27e2-161e-4eeb-9b56-72eaea30511d",
  "name": "СпецЭкоСервис - Пресейл",
  "startDate": "2025-10-28",
  "endDate": "2025-12-31",
  "modified": "2022-09-04T11:06:03.775347Z"
}

В отличие от чтения коллекций, объект возвращается напрямую, без свойства value.

Примечание

При обращении по идентификатору значения типа Guid рекомендуется передавать в одинарных кавычках.

Выбор полей ($select)

Можно ограничить набор возвращаемых полей.

Например:

GET https://api.timetta.com/odata/Projects('45eb27e2-161e-4eeb-9b56-72eaea30511d')?$select=id,name,startDate,endDate

Пример ответа:

{
  "id": "45eb27e2-161e-4eeb-9b56-72eaea30511d",
  "name": "СпецЭкоСервис - Пресейл",
  "startDate": "2025-10-28",
  "endDate": "2025-12-31"
}

Это позволяет уменьшить объём ответа и получить только необходимые данные.

Раскрытие навигационных свойств ($expand)

Если необходимо получить связанные данные, используется $expand.

Например, загрузить руководителя и организацию проекта:

GET https://api.timetta.com/odata/Projects('45eb27e2-161e-4eeb-9b56-72eaea30511d')?$expand=manager($select=id,name),organization($select=id,name)

Пример ответа:

{
  "id": "45eb27e2-161e-4eeb-9b56-72eaea30511d",
  "name": "СпецЭкоСервис - Пресейл",
  "manager": {
    "id": "04f9aa6d-4918-4221-bcaf-f9703cc63959",
    "name": "Спиридонов Александр"
  },
  "organization": {
    "id": "bb495d2a-53b0-427b-8b5a-20f61658276b",
    "name": "СпецЭкоСервис"
  }
}

Это позволяет получать связанные сущности одним запросом.

Комбинирование параметров

Параметры $select и $expand можно использовать совместно.

Например:

GET https://api.timetta.com/odata/Projects('45eb27e2-161e-4eeb-9b56-72eaea30511d')?$select=id,name,startDate,endDate,stateId,managerId,organizationId&$expand=state($select=id,name),manager($select=id,name),organization($select=id,name)

Пример ответа:

{
  "id": "45eb27e2-161e-4eeb-9b56-72eaea30511d",
  "name": "СпецЭкоСервис - Пресейл",
  "startDate": "2025-10-28",
  "endDate": "2025-12-31",
  "state": {
    "id": "584c3678-ff09-44ff-9116-2d0433d3675e",
    "name": "Архивирован"
  },
  "manager": {
    "id": "04f9aa6d-4918-4221-bcaf-f9703cc63959",
    "name": "Спиридонов Александр"
  },
  "organization": {
    "id": "bb495d2a-53b0-427b-8b5a-20f61658276b",
    "name": "СпецЭкоСервис"
  }
}

Такой подход позволяет получить основную информацию о сущности и связанных объектах одним запросом.

Чтение связанных сущностей

Можно обращаться напрямую к навигационным свойствам.

Например, получить руководителя проекта:

GET https://api.timetta.com/odata/Projects('45eb27e2-161e-4eeb-9b56-72eaea30511d')/manager

Пример ответа:

{
  "id": "04f9aa6d-4918-4221-bcaf-f9703cc63959",
  "name": "Спиридонов Александр"
}

Это удобно, если требуется только связанная сущность.

Обработка ошибок

Если запись не найдена, API возвращает:

  • 404 Not Found — запись отсутствует или недоступна.

Если отсутствует или истёк токен доступа:

  • 401 Unauthorized

Если недостаточно прав доступа:

  • 403 Forbidden

Рекомендации

При чтении одной записи рекомендуется:

  • использовать $select для ограничения набора полей;
  • использовать $expand только для действительно необходимых связанных данных;
  • обращаться напрямую к связанным сущностям, если требуется только связанный объект;
  • избегать загрузки избыточного количества навигационных свойств одним запросом;
  • учитывать права доступа при работе с объектами.
Предыдущая
 Фильтрация

Содержание

Назначение Базовый запрос Выбор полей ($select) Раскрытие навигационных свойств ($expand) Комбинирование параметров Чтение связанных сущностей Обработка ошибок Рекомендации
Ничего не найдено

Перейти на русскую версию?