Skip to content

Developer changelog

Every REST API and Embed SDK version, and what changed in the developer dashboard. Newest first, back to the first public release.

Записи автоматически переведены с английского. Прочитать оригинал на английском

15 сентября·Новое

Новая панель разработчика: задания OMR, кредиты и playground

Обзор приложения панели разработчика с карточками возможностей для Embed, OMR, REST API, Import API и LTI

Панель разработчика перестроена вокруг возможностей вашей интеграции. Для каждой возможности (Embed, OMR, REST API, Import API, LTI) теперь есть карточка с областью действия, ценами и документацией, а те, которые ваше приложение уже использует, показываются первыми.

  • Новый раздел OMR на уровне аккаунта: ваши задания, ваши кредиты и их история собраны в одном месте, поскольку кредиты OMR общие для всех ваших приложений.
  • Попробуйте OMR до того, как писать код. Playground принимает PDF или фотографии, показывает число страниц, стоимость за страницу и остаток баланса после выполнения, а затем запускает задание после вашего подтверждения. Результат доступен для скачивания в MusicXML, в вашу библиотеку ничего не добавляется.
  • Более понятные страницы приложений. Персональные токены, учетные данные OAuth2 и доступ к OMR сгруппированы по приложениям, а учетные данные с областью OMR выделены отдельно.

Откройте ее на странице flat.io/developers.

10 сентября·Новое

API v2.26.0: API OMR выходит из бета-версии, а задания получают полную поддержку чтения, обновления и удаления

Наша спецификация REST API переходит на OpenAPI 3.1, API OMR завершает бета-период, а задания в Flat for Education теперь поддерживают не только просмотр списка и создание.

  • API OMR стал стабильным. Эндпоинты, поля и поведение теперь следуют нашему обычному процессу устаревания перед любым ломающим изменением. В новом FAQ описаны кредиты и биллинг, лимиты и время обработки, качество распознавания и языки, а также коммерческое использование и конфиденциальность.
  • Чтение, обновление и удаление заданий в Flat for Education. При удалении задания также удаляются его работы и копии у учеников; если нужно сохранить их, вместо этого архивируйте задание.
  • Журнал кредитов. Новый вызов выводит историю ваших кредитов; баланс по-прежнему доступен через вызов возможностей OMR.
  • Файлы Finale (.musx) теперь можно импортировать на условиях best-effort, а импорт сканированной музыки (PDF и изображения) документирован при создании партитуры.
  • OpenAPI 3.1. Поля с nullable используют синтаксис 3.1; инструментам, привязанным к OpenAPI 3.0, требуется обновление. Поле mimeType было удалено из загрузки файлов OMR.

Также в сентябрь

2 небольших изменений
4 августа·Новое

API v2.25.0: управление сроком хранения файлов заданий OMR, экспорт ABC

  • Управляемое вами хранение данных. Задания OMR теперь сообщают, как долго хранятся их файлы (по умолчанию 30 дней), каждое задание MusicXML содержит дату истечения срока хранения, а файлы и результаты задания можно удалить сразу после того, как вы их получите.
  • Определение возможностей до входа в систему. Вызов возможностей OMR теперь работает без учётной записи и возвращает список поддерживаемых языков распознавания с их названиями.
  • Экспорт нотации ABC для любой редакции партитуры наряду с MusicXML, MIDI и другими форматами. Как и MIDI, он не сохраняет всё оформление нотной записи.
  • Задания Free Record в Flat for Education теперь можно настраивать через API.
  • Ошибки, приходящие от внешнего провайдера (например, Google Classroom), теперь содержат собственное локализованное сообщение этого провайдера.
10 июля·Новое·

OMR теперь доступен как API для разработчиков

Модуль OMR от Flat теперь доступен программно через API для разработчиков. Отправляйте PDF-файлы или фотографии, отслеживайте ход распознавания, проверяйте обнаруженные инструменты, а затем импортируйте результат как редактируемую партитуру в библиотеку Flat или экспортируйте в MusicXML или MIDI. Это та же внутренняя модель, которая лежит в основе импорта PDF и фотографий в редакторе, а теперь она доступна в масштабе для ваших собственных приложений и рабочих процессов.

Специализированный OMR API (v2.24.0) основан на фоновом импорте PDF, добавленном при создании партитуры в v2.23.0: запрашивайте поддержку задач при импорте файла и опрашивайте задачу, пока партитура не будет готова. Подробности по обоим выпускам смотрите в журнале изменений API.

7 апреля·Новое

API v2.22.0: 15+ форматов импорта, виртуальные коллекции, рубрики, группы учеников и LTI 1.3

Самое крупное обновление спецификации с 2024 года: API приведён в соответствие с изменениями продукта за последние два года.

  • Импорт из 15+ форматов. Guitar Pro, MuseScore, ABC notation, PowerTab, Capella, MEI, Overture, TablEdit, Band-in-a-Box, Karaoke MIDI, MuseData, Score Writer, Bagpipe Music Writer и Encore присоединяются к MusicXML и MIDI, а партитуры можно экспортировать как собственные файлы .flat.
  • Виртуальные коллекции. All scores, collaborations и likes заменяют устаревшую иерархию папок в библиотеке, в соответствии с переработанной библиотекой Flat.
  • Flat for Education. Задания на исполнение с аудио- или видеозаписями и параметрами backing track, metronome и speed; групповые сдачи для совместного письма; инструкции с форматированным текстом; подгруппы учеников; задания Microsoft Teams с расписанием и индивидуальным назначением; подробные описания и типы заданий в библиотеке ресурсов.
  • Единая конфигурация LTI для LTI 1.1 и 1.3, включая динамическую регистрацию. Предыдущие вызовы учётных данных LTI 1.1 объявлены устаревшими.
  • Годовая статистика по партитурам, число публичных партитур в профилях и удаление нескольких давно устаревших полей.

Также в апрель

2 небольших изменений

В март

2 небольших изменений
16 февраля·Новое

Embed SDK v2.9.0: экспорт MP3 и WAV с отображением прогресса

  • Добавлены методы getMP3 и getWAV для экспорта аудио
  • Добавлено событие exportProgress, чтобы при длительном экспорте можно было показывать прогресс

Также в февраль

1 небольшое изменение
2025

В декабрь

1 небольшое изменение

В октябрь

1 небольшое изменение

В август

1 небольшое изменение

В апрель

1 небольшое изменение

В март

1 небольшое изменение
2024
18 октября·Новое

API v2.21.0: публичные профили сообщества и расширенные фильтры библиотеки ресурсов

  • Списки партитур пользователей стали публичными профилями. Теперь при получении списка партитур пользователя возвращаются только его публичные партитуры; добавлены новые параметры пагинации и сортировки, как было объявлено в 2020 году.
  • В сведениях о партитуре теперь доступны URL редактирования, названия инструментов и запланированная дата удаления; коллекции сообщают количество партитур; в публичных профилях отображается число отметок «Нравится» и прослушиваний.
  • Flat for Education. Библиотеку ресурсов можно фильтровать по типу задания, предмету и классу; у ресурсов есть описание доступа и параметры конфиденциальности; в заданиях можно ограничивать воспроизведение нот и аудиодорожки; в ответах поддерживаются сервисы оценок LTI 1.1 и 1.3.
8 марта·Новое

API v2.20.0: типы соавторов, оценённые работы и повторно используемые приглашения

  • Лайки в профилях пользователей теперь выводятся постранично, а в сведениях об аккаунте пользователя указывается, каким продуктом он пользуется.
  • Права доступа к ресурсам теперь показывают, является ли вызывающий пользователь владельцем, соавтором-пользователем или соавтором-группой, а также дату добавления каждого соавтора. В сведениях о партитуре теперь указываются основная тональность, дата выделения и организация.
  • Flat for Education. Приглашения теперь можно использовать несколько раз; у работ появился статус оценивания, а также сведения о воспроизведении и LTI; задание можно скопировать в библиотеку ресурсов только если его там ещё нет; организации получили собственные библиотеки ресурсов с уровнем конфиденциальности для всей организации.

В январь

1 небольшое изменение
2023

В ноябрь

1 небольшое изменение
2 октября·Новое

Embed SDK v2.1.0: просмотр партий, голосов и нот, а также отключение звука

Считывайте структуру загруженной партитуры из своего кода.

  • Партии и голоса: getNbParts, getPartsUuids, getMeasureVoicesUuids
  • Ноты: getMeasureNbNotes, getNoteData, playbackPositionToNoteIdx
  • Новый URL-параметр noAudio отключает воспроизведение звука
  • Исправлена ошибка, из-за которой setMasterVolume вызывал неправильный внутренний метод
27 сентября·Устаревшее

Embed SDK v2.0.0: типы TypeScript, сборки ES и UMD, jQuery больше не поддерживается

  • Удалена поддержка jQuery в конструкторе — вместо этого передавайте DOM-элемент или его id
  • Опубликованный модуль npm включает типы TypeScript
  • Отдельные сборки ES и UMD

Также в сентябрь

1 небольшое изменение
5 мая·Новое

API v2.18.0: API библиотеки ресурсов в бета-версии

  • API библиотеки ресурсов (бета). Просматривайте библиотеки ресурсов Flat for Education и управляйте ими с помощью двух новых областей OAuth2 для полного доступа и доступа только на чтение. Задания можно копировать в библиотеку ресурсов.
  • Тестовые учащиеся. Создавайте в классе тестовые учётные записи учащихся, чтобы проверить задания так, как их видит ученик.
  • Задания сообщают, что с ними можно делать (редактировать, публиковать, архивировать…), являются ли их вложения отдельными копиями, а также о любых возникших проблемах. История отправки фиксирует источник изменения, если оно поступило из Google Classroom, Microsoft Teams или LMS.
  • При сбросе отправка остаётся на месте вместо удаления; стали доступны метаданные класса (уровень, навыки, размер) и данные входа через Microsoft в учётных записях.
  • Для редакций партитуры теперь возвращаются даты начала и окончания; конструкторы партитур могут включать четвертитоны; копии могут сохранять исходное название.

В апрель

1 небольшое изменение
8 марта·Новое

Embed SDK v1.5.0: навигация по тактам, управление метрономом и скоростью воспроизведения

  • Такты: getNbMeasures, getMeasuresUuids
  • Навигация: goLeft, goRight, scrollToCursor
  • Метроном: getMetronomeMode, setMetronomeMode
  • Скорость воспроизведения: getPlaybackSpeed, setPlaybackSpeed
2022

В апрель

1 небольшое изменение

В март

1 небольшое изменение
2021

В декабрь

1 небольшое изменение
4 октября·Новое

API v2.14.0: создание пустых партитур из списка инструментов

  • Конструктор партитур. Создавайте пустую партитуру без импорта файла MusicXML: укажите список инструментов и, при необходимости, размер, тональность, табулатуру, сетки аккордов и макет страницы.
  • Flat for Education. Пользователей организации теперь можно создавать с ролью; в рабочих листах можно перемешивать упражнения; в списке работ студентов отображаются входящие в них упражнения.
19 июля·Новое

API v2.13.0: синхронизированные дорожки воспроизведения, сведения Microsoft Teams, запланированные копии заданий

  • Дорожки воспроизведения. Получайте список дорожек, которые Flat автоматически создаёт и синхронизирует (воспроизведение в формате MP3), точки синхронизации последнего файла воспроизведения и URL CDN экспортированного файла в теле ответа.
  • Flat for Education. Преподаватели могут сбросить отправленную работу ученика; классы сообщают об учётных записях, которые не удалось добавить во время синхронизации; задания и отправленные работы показывают своё состояние в Microsoft Teams и связанные ссылки; копии заданий можно запланировать; отправленные работы с исполнением содержат сохранённую аудиодорожку.
  • У профилей появилась обложка, а id текущего пользователя теперь можно запрашивать отдельно.
28 апреля·Новое

Embed SDK v1.4.0: приватные партитуры по ключу доступа и аудиодорожки из кода

  • loadFlatScore принимает sharingKey, поэтому можно загружать партитуру, к которой открыт приватный доступ по ссылке
  • Добавлены setTrack, useTrack и seekTrackTo для динамической настройки аудиодорожки
18 февраля·Новое

API v2.12.0: экспорт оценок в CSV или Excel, типы заданий и обложки

  • Экспорт оценок. Скачивайте оценки задания в файле CSV или Excel.
  • У заданий есть свой тип и изображение обложки; при копировании задания можно перезаписать существующий черновик содержимым другого задания.
  • Для соавторов отображается, остаются ли они в статусе ожидающего приглашения.
2020
26 октября·Новое

API v2.11.0: оценивание, комментарии к сдачам и расширенные параметры заданий

  • Оценивание через API. Устанавливайте черновые и итоговые оценки, возвращайте сдачу ученику и получайте вычисляемые счётчики комментариев; максимальное количество баллов сохраняется вместе с оценкой.
  • Комментарии к сдачам. Создавайте, просматривайте, обновляйте и удаляйте комментарии к сдаче.
  • Параметры заданий. Наборы инструментов, ограничение воспроизведения, максимальное количество баллов, темы Google Classroom, назначение задания отдельным ученикам, заблокированные шаблоны, а также сведения о заданиях LTI, Canvas и MusicFirst.
  • Администраторы могут редактировать имя пользователя, имя и адрес электронной почты управляемой учётной записи; списки пользователей можно фильтровать по наличию активной лицензии.
  • Старые параметры сдачи studentComment и returnFeedback удалены в пользу новых вызовов для оценивания.
3 июня·Новое

API v2.10.0: архивация заданий, подсчёт и фильтрация пользователей организации

  • Архивируйте и восстанавливайте задания из архива, а также получайте основной тип задания (новая партитура, шаблон или совместная работа).
  • Пользователи организации. Создавайте учётные записи с именем и фамилией, сортируйте и фильтруйте списки пользователей, подсчитывайте пользователей, соответствующих фильтру, и фильтруйте участников групп по источнику синхронизации (Google Classroom, Microsoft Teams, Clever).
  • В сведениях о партитуре теперь перечисляются аудиосэмплы, используемые при воспроизведении, а список инструментов нормализован и больше не зависит от сэмплов.
24 февраля·Новое

Embed SDK v1.3.0: управление миксом и просмотр сведений о нотах и тактах

Управляйте миксом из своего кода и получайте данные о том, что находится под курсором.

  • Громкость и отключение звука: getMasterVolume, setMasterVolume, getPartVolume, setPartVolume, mutePart, unmutePart
  • Соло и реверберация: setPartSoloMode, unsetPartSoloMode, getPartSoloMode, getPartReverb, setPartReverb
  • Просмотр сведений: getMeasureDetails, getNoteDetails
  • Добавлены события: noteDetails, measureDetails, cursorContext
10 января·Новое

API v2.9.0: спецификация OpenAPI 3, вложения Google Drive, аранжировщик и прослушивания

  • Спецификация переходит на OpenAPI 3.0. Предыдущие версии были описаны в OpenAPI 2 (Swagger).
  • Для партитур теперь доступны данные об аранжировщике и статистика прослушиваний; удаление можно запланировать на ближайшее время, а не оставлять объект в корзине.
  • Flat for Education. Вложения к заданиям могут быть файлами Google Drive, классы содержат сведения о Microsoft Teams, а для образовательных аккаунтов доступны имя и фамилия.

Также в январь

1 небольшое изменение
2019

В май

2 небольших изменений
27 апреля·Новое

API v2.8.0: обновления метаданных в реальном времени, состояния сдачи, турецкий язык

  • Изменения метаданных сразу появляются в редакторе. При обновлении через API названия партитуры, подзаголовка, композитора, автора слов или текста лицензии изменения в реальном времени передаются в открытые редакторы, и сохраняется новая версия. Описания теперь могут быть вдвое длиннее (2,000 characters).
  • У сдач в Flat for Education теперь доступно их состояние (создано, сдано, возвращено); метаданные редакций возвращают последнее событие изменения.
  • В список поддерживаемых языков добавлен турецкий; в публичных профилях теперь указано, принадлежит ли аккаунт команде Flat.
2018
29 ноября·Устаревшее

Embed SDK v0.11.0: экспорт MIDI и новый формат возврата MusicXML

  • Добавлен getMIDI
  • getMusicXML теперь возвращает Uint8Array на верхнем уровне — ответ больше не содержит свойства .data
  • voiceIdx курсора теперь называется voiceIdxInStaff
23 ноября·Устаревшее

Embed SDK v0.10.0: новый CDN по умолчанию и два удаления

Обновлено для релиза embed.

  • SDK теперь по умолчанию загружается с flat-embed.com
  • Удалены устаревшее действие edit и событие edit
  • Удалён setNoteColor
11 сентября·Новое

API v2.7.0: импорт файлов Guitar Pro, PowerTab, TuxGuitar и MuseScore

  • Больше форматов импорта. Теперь можно импортировать файлы Guitar Pro (GP3, GP4, GP5, GPX, GP), PowerTab, TuxGuitar и MuseScore, а при импорте можно передавать имя файла.
  • Коллекции можно выводить в списке внутри родительской коллекции, и для них указывается дата создания; у партитур перечисляются коллекции, в которые они входят.
  • Контекстные комментарии привязываются к нотоносцу по идентификатору, а не по индексу, а права доступа к ресурсу показывают, является ли вызывающая сторона соавтором.
23 апреля·Новое

API v2.6.0: API коллекций

  • API коллекций. Создавайте, просматривайте, обновляйте, удаляйте и восстанавливайте коллекции, просматривайте их партитуры, а также добавляйте и удаляйте партитуры, с тремя новыми областями OAuth2 для доступа только на чтение, только на добавление и полного доступа.
  • Партитуры можно восстанавливать из корзины; удаление партитуры без прав администратора вместо этого отменяет общий доступ к ней для вашей учётной записи; копию можно направить в определённую коллекцию.
  • Комментарии теперь можно фильтровать по типу (документные или встроенные).
  • При экспорте партий теперь используются идентификаторы партий вместо индексов, а с сентября 2019 года список партитур пользователя возвращает только публичные партитуры.
2017

В ноябрь

1 небольшое изменение

В октябрь

2 небольших изменений
28 августа·Новое

API v2.3.0: управление аккаунтами организаций, статусами классов и данными Canvas и Clever

  • Управление аккаунтами организаций. Администраторы могут обновлять управляемые аккаунты, удалять их или переводить их в обычные пользовательские аккаунты; в списках пользователей и приглашений используется пагинация на основе курсора.
  • У классов появляется неактивный статус, который можно снова сделать активным, а также указание домена Canvas LMS и секции Clever; у заданий появляется статус черновика и тип вложения «упражнение».
  • В профилях теперь доступны тема оформления и сведения об используемых инструментах.

Также в август

2 небольших изменений
7 июля·Новое

Embed SDK v0.5.0: фокус на партитуре и выбор режима по умолчанию

  • Добавлен метод focusScore, чтобы передавать клавиатурный фокус партитуре
  • Новое свойство defaultMode в конфигурации редактора
2 июля·Новое

API v2.2.0: API Flat for Education

  • Первые API для образования стали общедоступными. Управляйте классами, заданиями и сдачами работ, аккаунтами организаций и приглашениями, учётными данными LTI, а также группами и пользователями организации — всем, что нужно для интеграции в школе.
  • Разграниченный доступ. Новые области OAuth2 охватывают классы, задания и администрирование организации, причём для каждой есть вариант только для чтения, поэтому интеграция запрашивает только действительно необходимый доступ.

Также в июль

1 небольшое изменение
3 мая·Новое

Embed SDK v0.3.0: чтение конфигурации встраивания и включение редактора

Теперь ваш код может проверять конфигурацию встраивания и переключать его в режим редактора.

  • Добавлены методы: getEmbedConfig, setEditorConfig, edit
  • Добавлено событие: edit
21 апреля·Новое

Embed SDK v0.2.0: авто-масштаб, загрузка MusicXML и первые события

SDK научился загружать партитуры из MusicXML и сообщать о том, что делает средство просмотра.

  • Добавлены методы: getAutoZoom, setAutoZoom, loadMusicXML, getMusicXML
  • Добавлены события: scoreLoaded, cursorPosition, rangeSelection, pause, stop, fullscreen, print
  • Добавлены интеграционные тесты
10 апреля·Новое

Публичный доступ к Flat REST API

Первый публичный релиз REST API Flat. Читайте данные своей учётной записи и управляйте ими, партитурами, пользователями и группами из собственных приложений и скриптов, используя OAuth2, чтобы действовать от имени других пользователей Flat.

Все последующие изменения записаны в журнале изменений API, а в документации для разработчиков описаны аутентификация, справочник API и руководства.

Также в апрель

2 небольших изменений