Skip to content

v2.22.0

Latest

Choose a tag to compare

@gierschv gierschv released this 07 Apr 21:25
  • Score Import & Export - 15+ import formats documented, new .flat export:

    • POST /scores: Expanded the list of supported import formats with detailed documentation. MusicXML and MIDI are the preferred formats; also supported via conversion: Guitar Pro, MuseScore, ABC notation, PowerTab, Capella, MEI, Overture, TablEdit, Band-in-a-Box, Karaoke MIDI, MuseData, Score Writer, Bagpipe Music Writer, and Encore.
    • GET /scores/{score}/revisions/{revision}/{format}: Added flat export format for native Flat compressed files (.flat).
    • ScoreDetails: Added me property with information about the authenticated user's relationship to the score.
  • Collections - Simplified library navigation with virtual collections replacing the legacy folder hierarchy (blog: Library Design Revamp):

    • New virtual collections: allScores, collaborations, and likes replace the deprecated root and sharedWithMe collection types.
    • GET /collections (listCollections): New default parent=user returns all user collections including virtual ones. Added modificationDate sort option.
    • Collection: Added isPinned, labelKey, and modificationDate properties.
    • POST /collections/{collection}/untrash: Deprecated. Collections untrashing is no longer supported.
    • Updated collection parameter descriptions across all endpoints to document the new virtual collections and deprecate root/sharedWithMe.
  • Flat for Education:

    • Assignments & Rubrics - Rubric grading, video/audio performance recordings, and group submissions (blog: Performance Assignments upgrade, Grading Composition Assignments):
      • Performance assignments: Added recordingType (audio/video), allowBackingTrack, allowMetronome, and allowSpeedChange options.
      • Group submissions: Added submissionStudentsMode (single/group) for shared writing assignments, with assignedGroups on ClassAssignment. See blog: Introducing Shared Writing.
      • Rich text: Added descriptionHtml and teacherInstructionsHtml on assignments, sharingDescriptionHtml on education resources.
      • ClassAttachmentCreation: Added partUuid, revision, and teacherOnly properties.
    • Student Groups - Manage student sub-groups for shared writing and group submissions (blog: Back to School updates):
      • New CRUD endpoints for student sub-groups: GET /groups (listGroups), POST /groups (createGroup), PUT /groups/{group} (renameGroup), DELETE /groups/{group} (deleteGroup).
      • New membership endpoints: POST /groups/{group}/users (addGroupUser), DELETE /groups/{group}/users/{user} (removeGroupUser).
      • Groups can be filtered by classroom or assignment, and support test student tagging (edu:testing-students).
      • New group types: classStudentsSubGroup and assignmentStudentsSubGroup.
    • LTI Configuration - Unified LTI 1.1 and 1.3 configuration management, replacing the previous credentials-only API (blog: LTI 1.3 Integration):
      • New CRUD endpoints under /organizations/lti/configurations.
      • Supports LTI 1.1 manual, LTI 1.3 manual, LTI 1.3 dynamic registration, and LTI 1.3 deployment-based configurations.
      • Added enableEmailMatching option to control email-based user matching during LTI authentication.
      • Previous LTI 1.1 credentials endpoints (/organizations/lti/credentials) are now deprecated. LTI 1.1 configurations can now be managed through the new unified endpoints.
    • Score Tracks:
      • GET /scores/{score}/tracks (listScoreTracks): Added documentation for access control on performance submission tracks (student vs. teacher visibility).
    • Organization & Users - Test account management, email verification, and improved class metadata:
      • GET /organizations/users and GET /organizations/users/count: Added testAccounts filter to include/exclude test student accounts.
      • UserDetailsAdmin: Added isEduTestingStudent property.
      • UserDetails: Added isEmailVerified property.
      • OrganizationInvitation: Added htmlUrl with a direct join URL.
      • ClassDetails: Added modificationDate, and now requires creationDate, name, state. Updated lti property to cover LTI 1.1 and 1.3 context with hasNrpsService.
    • Resource Library - Rich text descriptions and assignment type selection on resource creation:
      • EduResource and EduResourceCreation: Added sharingDescriptionHtml for rich text sharing descriptions.
      • EduResourceCreation: Added resource property for assignment-specific creation options (e.g., assignment type).
      • EduLibrary: Renamed library type from flatEduSamples to flatEduContent.
    • Microsoft Teams Integration - Scheduled assignments and individual student targeting:
      • MicrosoftGraphAssignment: Added assignDateTime for scheduled assignments, assignToType (class/individual) and assignedStudentsMsIds for individual assignment targeting. Expanded state enum with scheduled and inactive statuses.
  • Accounts & Profiles:

    • UserPublic: Added allPublicScoresCount property. Removed deprecated instruments property.
    • UserCreation: Locale is now a free-form string (auto-normalized) instead of a strict enum.
    • Improved TutteoProduct descriptions with links to each product.
  • Statistics:

    • Added yearly counts to ScoreCommentsCounts, ScoreLikesCounts, ScorePlaysCounts, and ScoreViewsCounts.
  • Deprecations & Removals:

    • Removed FlatLocales enum schema, replaced by FlatLocalesString with auto-normalization.
    • Removed unused billing role from OrganizationRoles.
    • Deprecated POST /collections/{collection}/untrash (untrashCollection).
    • Deprecated LTI credentials endpoints in favor of the new unified configuration API.
    • Deprecated root and sharedWithMe collection parent aliases (use user instead).
    • Deprecated staffIdx on ScoreCommentContext.