Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/flatio/api-client-ruby

💎 Ruby client for the Flat REST API
https://github.com/flatio/api-client-ruby

music music-composition music-notation musicxml rest-api ruby

Last synced: 2 months ago
JSON representation

💎 Ruby client for the Flat REST API

Awesome Lists containing this project

README

        

# flat_api

FlatApi - the Ruby gem for the Flat API

The Flat API allows you to easily extend the abilities of the [Flat Platform](https://flat.io), with a wide range of use cases including the following:

* Creating and importing new music scores using MusicXML, MIDI, Guitar Pro (GP3, GP4, GP5, GPX, GP), PowerTab, TuxGuitar and MuseScore files
* Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI)
* Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments.

The Flat API is built on HTTP. Our API is RESTful It has predictable resource URLs. It returns HTTP response codes to indicate errors. It also accepts and returns JSON in the HTTP body.
The [schema](/swagger.yaml) of this API follows the [OpenAPI Initiative (OAI) specification](https://www.openapis.org/), you can use and work with [compatible Swagger tools](http://swagger.io/open-source-integrations/).
This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with [W3C spec](https://www.w3.org/TR/cors/).

You can use your favorite HTTP/REST library for your programming language to use Flat's API. This specification and reference is [available on Github](https://github.com/FlatIO/api-reference).

Getting Started and learn more:

* [API Overview and introduction](https://flat.io/developers/docs/api/)
* [Authentication (Personal Access Tokens or OAuth2)](https://flat.io/developers/docs/api/authentication.html)
* [SDKs](https://flat.io/developers/docs/api/sdks.html)
* [Rate Limits](https://flat.io/developers/docs/api/rate-limits.html)
* [Changelog](https://flat.io/developers/docs/api/changelog.html)

This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:

- API version: 2.20.0
- Package version: 0.3.0
- Build package: org.openapitools.codegen.languages.RubyClientCodegen
For more information, please visit [https://flat.io/developers/docs/api/](https://flat.io/developers/docs/api/)

## Installation

### Install from rubygem

```shell
gem install flat_api
```

### Build a gem

To build the Ruby code into a gem:

```shell
gem build flat_api.gemspec
```

Then either install the gem locally:

```shell
gem install ./flat_api-0.3.0.gem
```

(for development, run `gem install --dev ./flat_api-0.3.0.gem` to install the development dependencies)

or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).

Finally add this to the Gemfile:

gem 'flat_api', '~> 0.3.0'

### Install from Git

If the Ruby gem is hosted at a git repository: https://github.com/FlatIO/api-client-ruby, then add the following in the Gemfile:

gem 'flat_api', :git => 'https://github.com/FlatIO/api-client-ruby.git'

### Include the Ruby code directly

Include the Ruby code directly using `-I` as follows:

```shell
ruby -Ilib script.rb
```

## Getting Started

Please follow the [installation](#installation) procedure and then run the following code:

```ruby
# Load the gem
require 'flat_api'

# Setup authorization
FlatApi.configure do |config|
# Configure OAuth2 access token for authorization: OAuth2
config.access_token = 'YOUR ACCESS TOKEN'
# Configure a proc to get access tokens in lieu of the static access_token configuration
config.access_token_getter = -> { 'YOUR TOKEN GETTER PROC' }
end

api_instance = FlatApi::AccountApi.new
opts = {
only_id: true # Boolean | Only return the user id
}

begin
#Get current user account
result = api_instance.get_authenticated_user(opts)
p result
rescue FlatApi::ApiError => e
puts "Exception when calling AccountApi->get_authenticated_user: #{e}"
end

```

## Documentation for API Endpoints

All URIs are relative to *https://api.flat.io/v2*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*FlatApi::AccountApi* | [**get_authenticated_user**](docs/AccountApi.md#get_authenticated_user) | **GET** /me | Get current user account
*FlatApi::ClassApi* | [**activate_class**](docs/ClassApi.md#activate_class) | **POST** /classes/{class}/activate | Activate the class
*FlatApi::ClassApi* | [**add_class_user**](docs/ClassApi.md#add_class_user) | **PUT** /classes/{class}/users/{user} | Add a user to the class
*FlatApi::ClassApi* | [**archive_assignment**](docs/ClassApi.md#archive_assignment) | **POST** /classes/{class}/assignments/{assignment}/archive | Archive the assignment
*FlatApi::ClassApi* | [**archive_class**](docs/ClassApi.md#archive_class) | **POST** /classes/{class}/archive | Archive the class
*FlatApi::ClassApi* | [**copy_assignment**](docs/ClassApi.md#copy_assignment) | **POST** /classes/{class}/assignments/{assignment}/copy | Copy an assignment
*FlatApi::ClassApi* | [**create_class**](docs/ClassApi.md#create_class) | **POST** /classes | Create a new class
*FlatApi::ClassApi* | [**create_class_assignment**](docs/ClassApi.md#create_class_assignment) | **POST** /classes/{class}/assignments | Assignment creation
*FlatApi::ClassApi* | [**create_submission**](docs/ClassApi.md#create_submission) | **PUT** /classes/{class}/assignments/{assignment}/submissions | Create or edit a submission
*FlatApi::ClassApi* | [**create_test_student_account**](docs/ClassApi.md#create_test_student_account) | **POST** /classes/{class}/testStudent | Create a test student account
*FlatApi::ClassApi* | [**delete_class_user**](docs/ClassApi.md#delete_class_user) | **DELETE** /classes/{class}/users/{user} | Remove a user from the class
*FlatApi::ClassApi* | [**delete_submission**](docs/ClassApi.md#delete_submission) | **DELETE** /classes/{class}/assignments/{assignment}/submissions/{submission} | Reset a submission
*FlatApi::ClassApi* | [**delete_submission_comment**](docs/ClassApi.md#delete_submission_comment) | **DELETE** /classes/{class}/assignments/{assignment}/submissions/{submission}/comments/{comment} | Delete a feedback comment to a submission
*FlatApi::ClassApi* | [**edit_submission**](docs/ClassApi.md#edit_submission) | **PUT** /classes/{class}/assignments/{assignment}/submissions/{submission} | Edit a submission
*FlatApi::ClassApi* | [**enroll_class**](docs/ClassApi.md#enroll_class) | **POST** /classes/enroll/{enrollmentCode} | Join a class
*FlatApi::ClassApi* | [**export_submissions_reviews_as_csv**](docs/ClassApi.md#export_submissions_reviews_as_csv) | **GET** /classes/{class}/assignments/{assignment}/submissions/csv | CSV Grades exports
*FlatApi::ClassApi* | [**export_submissions_reviews_as_excel**](docs/ClassApi.md#export_submissions_reviews_as_excel) | **GET** /classes/{class}/assignments/{assignment}/submissions/excel | Excel Grades exports
*FlatApi::ClassApi* | [**get_class**](docs/ClassApi.md#get_class) | **GET** /classes/{class} | Get the details of a single class
*FlatApi::ClassApi* | [**get_score_submissions**](docs/ClassApi.md#get_score_submissions) | **GET** /scores/{score}/submissions | List submissions related to the score
*FlatApi::ClassApi* | [**get_submission**](docs/ClassApi.md#get_submission) | **GET** /classes/{class}/assignments/{assignment}/submissions/{submission} | Get a student submission
*FlatApi::ClassApi* | [**get_submission_comments**](docs/ClassApi.md#get_submission_comments) | **GET** /classes/{class}/assignments/{assignment}/submissions/{submission}/comments | List the feedback comments of a submission
*FlatApi::ClassApi* | [**get_submission_history**](docs/ClassApi.md#get_submission_history) | **GET** /classes/{class}/assignments/{assignment}/submissions/{submission}/history | Get the history of the submission
*FlatApi::ClassApi* | [**get_submissions**](docs/ClassApi.md#get_submissions) | **GET** /classes/{class}/assignments/{assignment}/submissions | List the students' submissions
*FlatApi::ClassApi* | [**list_assignments**](docs/ClassApi.md#list_assignments) | **GET** /classes/{class}/assignments | Assignments listing
*FlatApi::ClassApi* | [**list_class_student_submissions**](docs/ClassApi.md#list_class_student_submissions) | **GET** /classes/{class}/students/{user}/submissions | List the submissions for a student
*FlatApi::ClassApi* | [**list_classes**](docs/ClassApi.md#list_classes) | **GET** /classes | List the classes available for the current user
*FlatApi::ClassApi* | [**post_submission_comment**](docs/ClassApi.md#post_submission_comment) | **POST** /classes/{class}/assignments/{assignment}/submissions/{submission}/comments | Add a feedback comment to a submission
*FlatApi::ClassApi* | [**unarchive_assignment**](docs/ClassApi.md#unarchive_assignment) | **DELETE** /classes/{class}/assignments/{assignment}/archive | Unarchive the assignment.
*FlatApi::ClassApi* | [**unarchive_class**](docs/ClassApi.md#unarchive_class) | **DELETE** /classes/{class}/archive | Unarchive the class
*FlatApi::ClassApi* | [**update_class**](docs/ClassApi.md#update_class) | **PUT** /classes/{class} | Update the class
*FlatApi::ClassApi* | [**update_submission_comment**](docs/ClassApi.md#update_submission_comment) | **PUT** /classes/{class}/assignments/{assignment}/submissions/{submission}/comments/{comment} | Update a feedback comment to a submission
*FlatApi::CollectionApi* | [**add_score_to_collection**](docs/CollectionApi.md#add_score_to_collection) | **PUT** /collections/{collection}/scores/{score} | Add a score to the collection
*FlatApi::CollectionApi* | [**create_collection**](docs/CollectionApi.md#create_collection) | **POST** /collections | Create a new collection
*FlatApi::CollectionApi* | [**delete_collection**](docs/CollectionApi.md#delete_collection) | **DELETE** /collections/{collection} | Delete the collection
*FlatApi::CollectionApi* | [**delete_score_from_collection**](docs/CollectionApi.md#delete_score_from_collection) | **DELETE** /collections/{collection}/scores/{score} | Delete a score from the collection
*FlatApi::CollectionApi* | [**edit_collection**](docs/CollectionApi.md#edit_collection) | **PUT** /collections/{collection} | Update a collection's metadata
*FlatApi::CollectionApi* | [**get_collection**](docs/CollectionApi.md#get_collection) | **GET** /collections/{collection} | Get collection details
*FlatApi::CollectionApi* | [**list_collection_scores**](docs/CollectionApi.md#list_collection_scores) | **GET** /collections/{collection}/scores | List the scores contained in a collection
*FlatApi::CollectionApi* | [**list_collections**](docs/CollectionApi.md#list_collections) | **GET** /collections | List the collections
*FlatApi::CollectionApi* | [**untrash_collection**](docs/CollectionApi.md#untrash_collection) | **POST** /collections/{collection}/untrash | Untrash a collection
*FlatApi::EduResourcesApi* | [**copy_edu_resource**](docs/EduResourcesApi.md#copy_edu_resource) | **POST** /eduResources/{resource}/copy | Copy an education resource to a Resource Library
*FlatApi::EduResourcesApi* | [**copy_edu_resource_to_demo_class**](docs/EduResourcesApi.md#copy_edu_resource_to_demo_class) | **POST** /eduResources/{resource}/copyToDemoClass | Copy an education assignment to a teacher demo class
*FlatApi::EduResourcesApi* | [**create_edu_resource**](docs/EduResourcesApi.md#create_edu_resource) | **POST** /eduResources | Create a new education resource
*FlatApi::EduResourcesApi* | [**create_edu_resource_lti_link**](docs/EduResourcesApi.md#create_edu_resource_lti_link) | **POST** /eduResources/{resource}/createLtiLink | Create an LTI link for an education resource
*FlatApi::EduResourcesApi* | [**delete_edu_resource**](docs/EduResourcesApi.md#delete_edu_resource) | **DELETE** /eduResources/{resource} | Delete an education resource
*FlatApi::EduResourcesApi* | [**get_edu_resource**](docs/EduResourcesApi.md#get_edu_resource) | **GET** /eduResources/{resource} | Get an education resource
*FlatApi::EduResourcesApi* | [**list_edu_libraries**](docs/EduResourcesApi.md#list_edu_libraries) | **GET** /eduResources/libraries | List the education libraries
*FlatApi::EduResourcesApi* | [**list_edu_resources**](docs/EduResourcesApi.md#list_edu_resources) | **GET** /eduResources | List education resources in a library or folder
*FlatApi::EduResourcesApi* | [**move_edu_resource**](docs/EduResourcesApi.md#move_edu_resource) | **POST** /eduResources/{resource}/move | Move an education resource
*FlatApi::EduResourcesApi* | [**update_edu_resource**](docs/EduResourcesApi.md#update_edu_resource) | **PUT** /eduResources/{resource} | Update an education resource metadata
*FlatApi::EduResourcesApi* | [**update_edu_resource_assignment**](docs/EduResourcesApi.md#update_edu_resource_assignment) | **PUT** /eduResources/{resource}/assignment | Update an education resource assignment
*FlatApi::EduResourcesApi* | [**use_edu_resource_in_class**](docs/EduResourcesApi.md#use_edu_resource_in_class) | **POST** /eduResources/{resource}/useInClass | Use an education resource in a class
*FlatApi::GroupApi* | [**get_group_details**](docs/GroupApi.md#get_group_details) | **GET** /groups/{group} | Get group information
*FlatApi::GroupApi* | [**get_group_scores**](docs/GroupApi.md#get_group_scores) | **GET** /groups/{group}/scores | List group's scores
*FlatApi::GroupApi* | [**list_group_users**](docs/GroupApi.md#list_group_users) | **GET** /groups/{group}/users | List group's users
*FlatApi::OrganizationApi* | [**count_orga_users**](docs/OrganizationApi.md#count_orga_users) | **GET** /organizations/users/count | Count the organization users using the provided filters
*FlatApi::OrganizationApi* | [**create_lti_credentials**](docs/OrganizationApi.md#create_lti_credentials) | **POST** /organizations/lti/credentials | Create a new couple of LTI 1.x credentials
*FlatApi::OrganizationApi* | [**create_organization_invitation**](docs/OrganizationApi.md#create_organization_invitation) | **POST** /organizations/invitations | Create a new invitation to join the organization
*FlatApi::OrganizationApi* | [**create_organization_user**](docs/OrganizationApi.md#create_organization_user) | **POST** /organizations/users | Create a new user account
*FlatApi::OrganizationApi* | [**create_organization_user_access_token**](docs/OrganizationApi.md#create_organization_user_access_token) | **POST** /organizations/users/{user}/accessToken | Create a delegated API access token for an organization user
*FlatApi::OrganizationApi* | [**create_organization_user_signin_link**](docs/OrganizationApi.md#create_organization_user_signin_link) | **POST** /organizations/users/{user}/signinLink | Create a sign in link for an organization user
*FlatApi::OrganizationApi* | [**list_lti_credentials**](docs/OrganizationApi.md#list_lti_credentials) | **GET** /organizations/lti/credentials | List LTI 1.x credentials
*FlatApi::OrganizationApi* | [**list_organization_invitations**](docs/OrganizationApi.md#list_organization_invitations) | **GET** /organizations/invitations | List the organization invitations
*FlatApi::OrganizationApi* | [**list_organization_users**](docs/OrganizationApi.md#list_organization_users) | **GET** /organizations/users | List the organization users
*FlatApi::OrganizationApi* | [**remove_organization_invitation**](docs/OrganizationApi.md#remove_organization_invitation) | **DELETE** /organizations/invitations/{invitation} | Remove an organization invitation
*FlatApi::OrganizationApi* | [**remove_organization_user**](docs/OrganizationApi.md#remove_organization_user) | **DELETE** /organizations/users/{user} | Remove an account from Flat
*FlatApi::OrganizationApi* | [**revoke_lti_credentials**](docs/OrganizationApi.md#revoke_lti_credentials) | **DELETE** /organizations/lti/credentials/{credentials} | Revoke LTI 1.x credentials
*FlatApi::OrganizationApi* | [**update_organization_user**](docs/OrganizationApi.md#update_organization_user) | **PUT** /organizations/users/{user} | Update account information
*FlatApi::ScoreApi* | [**add_score_collaborator**](docs/ScoreApi.md#add_score_collaborator) | **POST** /scores/{score}/collaborators | Add a new collaborator
*FlatApi::ScoreApi* | [**add_score_track**](docs/ScoreApi.md#add_score_track) | **POST** /scores/{score}/tracks | Add a new video or audio track to the score
*FlatApi::ScoreApi* | [**create_export_task**](docs/ScoreApi.md#create_export_task) | **POST** /scores/{score}/revisions/{revision}/{format}/task | Create a new score export task
*FlatApi::ScoreApi* | [**create_score**](docs/ScoreApi.md#create_score) | **POST** /scores | Create a new score
*FlatApi::ScoreApi* | [**create_score_revision**](docs/ScoreApi.md#create_score_revision) | **POST** /scores/{score}/revisions | Create a new revision
*FlatApi::ScoreApi* | [**delete_score**](docs/ScoreApi.md#delete_score) | **DELETE** /scores/{score} | Delete a score
*FlatApi::ScoreApi* | [**delete_score_comment**](docs/ScoreApi.md#delete_score_comment) | **DELETE** /scores/{score}/comments/{comment} | Delete a comment
*FlatApi::ScoreApi* | [**delete_score_track**](docs/ScoreApi.md#delete_score_track) | **DELETE** /scores/{score}/tracks/{track} | Remove an audio or video track linked to the score
*FlatApi::ScoreApi* | [**edit_score**](docs/ScoreApi.md#edit_score) | **PUT** /scores/{score} | Edit a score's metadata
*FlatApi::ScoreApi* | [**fork_score**](docs/ScoreApi.md#fork_score) | **POST** /scores/{score}/fork | Fork a score
*FlatApi::ScoreApi* | [**get_group_scores**](docs/ScoreApi.md#get_group_scores) | **GET** /groups/{group}/scores | List group's scores
*FlatApi::ScoreApi* | [**get_score**](docs/ScoreApi.md#get_score) | **GET** /scores/{score} | Get a score's metadata
*FlatApi::ScoreApi* | [**get_score_collaborator**](docs/ScoreApi.md#get_score_collaborator) | **GET** /scores/{score}/collaborators/{collaborator} | Get a collaborator
*FlatApi::ScoreApi* | [**get_score_collaborators**](docs/ScoreApi.md#get_score_collaborators) | **GET** /scores/{score}/collaborators | List the collaborators
*FlatApi::ScoreApi* | [**get_score_comments**](docs/ScoreApi.md#get_score_comments) | **GET** /scores/{score}/comments | List comments
*FlatApi::ScoreApi* | [**get_score_revision**](docs/ScoreApi.md#get_score_revision) | **GET** /scores/{score}/revisions/{revision} | Get a score revision
*FlatApi::ScoreApi* | [**get_score_revision_data**](docs/ScoreApi.md#get_score_revision_data) | **GET** /scores/{score}/revisions/{revision}/{format} | Get a score revision data
*FlatApi::ScoreApi* | [**get_score_revisions**](docs/ScoreApi.md#get_score_revisions) | **GET** /scores/{score}/revisions | List the revisions
*FlatApi::ScoreApi* | [**get_score_submissions**](docs/ScoreApi.md#get_score_submissions) | **GET** /scores/{score}/submissions | List submissions related to the score
*FlatApi::ScoreApi* | [**get_score_track**](docs/ScoreApi.md#get_score_track) | **GET** /scores/{score}/tracks/{track} | Retrieve the details of an audio or video track linked to a score
*FlatApi::ScoreApi* | [**get_user_likes**](docs/ScoreApi.md#get_user_likes) | **GET** /users/{user}/likes | List liked scores
*FlatApi::ScoreApi* | [**get_user_scores**](docs/ScoreApi.md#get_user_scores) | **GET** /users/{user}/scores | List user's scores
*FlatApi::ScoreApi* | [**list_score_tracks**](docs/ScoreApi.md#list_score_tracks) | **GET** /scores/{score}/tracks | List the audio or video tracks linked to a score
*FlatApi::ScoreApi* | [**mark_score_comment_resolved**](docs/ScoreApi.md#mark_score_comment_resolved) | **PUT** /scores/{score}/comments/{comment}/resolved | Mark the comment as resolved
*FlatApi::ScoreApi* | [**mark_score_comment_unresolved**](docs/ScoreApi.md#mark_score_comment_unresolved) | **DELETE** /scores/{score}/comments/{comment}/resolved | Mark the comment as unresolved
*FlatApi::ScoreApi* | [**post_score_comment**](docs/ScoreApi.md#post_score_comment) | **POST** /scores/{score}/comments | Post a new comment
*FlatApi::ScoreApi* | [**remove_score_collaborator**](docs/ScoreApi.md#remove_score_collaborator) | **DELETE** /scores/{score}/collaborators/{collaborator} | Delete a collaborator
*FlatApi::ScoreApi* | [**untrash_score**](docs/ScoreApi.md#untrash_score) | **POST** /scores/{score}/untrash | Untrash a score
*FlatApi::ScoreApi* | [**update_score_comment**](docs/ScoreApi.md#update_score_comment) | **PUT** /scores/{score}/comments/{comment} | Update an existing comment
*FlatApi::ScoreApi* | [**update_score_track**](docs/ScoreApi.md#update_score_track) | **PUT** /scores/{score}/tracks/{track} | Update an audio or video track linked to a score
*FlatApi::TaskApi* | [**get_task**](docs/TaskApi.md#get_task) | **GET** /tasks/{task} | Get a task details
*FlatApi::UserApi* | [**get_user**](docs/UserApi.md#get_user) | **GET** /users/{user} | Get a public user profile
*FlatApi::UserApi* | [**get_user_likes**](docs/UserApi.md#get_user_likes) | **GET** /users/{user}/likes | List liked scores
*FlatApi::UserApi* | [**get_user_scores**](docs/UserApi.md#get_user_scores) | **GET** /users/{user}/scores | List user's scores

## Documentation for Models

- [FlatApi::ApiAccessToken](docs/ApiAccessToken.md)
- [FlatApi::AppScopes](docs/AppScopes.md)
- [FlatApi::Assignment](docs/Assignment.md)
- [FlatApi::AssignmentCapabilities](docs/AssignmentCapabilities.md)
- [FlatApi::AssignmentCapabilitiesCanPublishInClassError](docs/AssignmentCapabilitiesCanPublishInClassError.md)
- [FlatApi::AssignmentCopy](docs/AssignmentCopy.md)
- [FlatApi::AssignmentCopyResponse](docs/AssignmentCopyResponse.md)
- [FlatApi::AssignmentCopyToClass](docs/AssignmentCopyToClass.md)
- [FlatApi::AssignmentCopyToResourceLibrary](docs/AssignmentCopyToResourceLibrary.md)
- [FlatApi::AssignmentSubmission](docs/AssignmentSubmission.md)
- [FlatApi::AssignmentSubmissionComment](docs/AssignmentSubmissionComment.md)
- [FlatApi::AssignmentSubmissionCommentCreation](docs/AssignmentSubmissionCommentCreation.md)
- [FlatApi::AssignmentSubmissionComments](docs/AssignmentSubmissionComments.md)
- [FlatApi::AssignmentSubmissionHistory](docs/AssignmentSubmissionHistory.md)
- [FlatApi::AssignmentSubmissionHistoryAttachment](docs/AssignmentSubmissionHistoryAttachment.md)
- [FlatApi::AssignmentSubmissionHistoryState](docs/AssignmentSubmissionHistoryState.md)
- [FlatApi::AssignmentSubmissionLti](docs/AssignmentSubmissionLti.md)
- [FlatApi::AssignmentSubmissionPlaybackInner](docs/AssignmentSubmissionPlaybackInner.md)
- [FlatApi::AssignmentSubmissionState](docs/AssignmentSubmissionState.md)
- [FlatApi::AssignmentSubmissionUpdate](docs/AssignmentSubmissionUpdate.md)
- [FlatApi::AssignmentType](docs/AssignmentType.md)
- [FlatApi::AssignmentUpdate](docs/AssignmentUpdate.md)
- [FlatApi::ClassAssignment](docs/ClassAssignment.md)
- [FlatApi::ClassAssignmentAllOfCanvas](docs/ClassAssignmentAllOfCanvas.md)
- [FlatApi::ClassAssignmentAllOfLti](docs/ClassAssignmentAllOfLti.md)
- [FlatApi::ClassAssignmentAllOfMfc](docs/ClassAssignmentAllOfMfc.md)
- [FlatApi::ClassAssignmentUpdate](docs/ClassAssignmentUpdate.md)
- [FlatApi::ClassAssignmentUpdateAllOfGoogleClassroom](docs/ClassAssignmentUpdateAllOfGoogleClassroom.md)
- [FlatApi::ClassAssignmentUpdateAllOfMicrosoftGraph](docs/ClassAssignmentUpdateAllOfMicrosoftGraph.md)
- [FlatApi::ClassAttachmentCreation](docs/ClassAttachmentCreation.md)
- [FlatApi::ClassCreation](docs/ClassCreation.md)
- [FlatApi::ClassDetails](docs/ClassDetails.md)
- [FlatApi::ClassDetailsCanvas](docs/ClassDetailsCanvas.md)
- [FlatApi::ClassDetailsClever](docs/ClassDetailsClever.md)
- [FlatApi::ClassDetailsGoogleClassroom](docs/ClassDetailsGoogleClassroom.md)
- [FlatApi::ClassDetailsGoogleDrive](docs/ClassDetailsGoogleDrive.md)
- [FlatApi::ClassDetailsIssues](docs/ClassDetailsIssues.md)
- [FlatApi::ClassDetailsIssuesSyncInner](docs/ClassDetailsIssuesSyncInner.md)
- [FlatApi::ClassDetailsLti](docs/ClassDetailsLti.md)
- [FlatApi::ClassDetailsMfc](docs/ClassDetailsMfc.md)
- [FlatApi::ClassDetailsMicrosoftGraph](docs/ClassDetailsMicrosoftGraph.md)
- [FlatApi::ClassGradeLevel](docs/ClassGradeLevel.md)
- [FlatApi::ClassRoles](docs/ClassRoles.md)
- [FlatApi::ClassState](docs/ClassState.md)
- [FlatApi::ClassUpdate](docs/ClassUpdate.md)
- [FlatApi::Collection](docs/Collection.md)
- [FlatApi::CollectionApp](docs/CollectionApp.md)
- [FlatApi::CollectionCapabilities](docs/CollectionCapabilities.md)
- [FlatApi::CollectionCreation](docs/CollectionCreation.md)
- [FlatApi::CollectionModification](docs/CollectionModification.md)
- [FlatApi::CollectionPrivacy](docs/CollectionPrivacy.md)
- [FlatApi::CollectionType](docs/CollectionType.md)
- [FlatApi::EduLibrary](docs/EduLibrary.md)
- [FlatApi::EduResource](docs/EduResource.md)
- [FlatApi::EduResourceCapabilities](docs/EduResourceCapabilities.md)
- [FlatApi::EduResourceCopy](docs/EduResourceCopy.md)
- [FlatApi::EduResourceCreation](docs/EduResourceCreation.md)
- [FlatApi::EduResourceFolder](docs/EduResourceFolder.md)
- [FlatApi::EduResourceLtiLink](docs/EduResourceLtiLink.md)
- [FlatApi::EduResourceMove](docs/EduResourceMove.md)
- [FlatApi::EduResourcePrivacy](docs/EduResourcePrivacy.md)
- [FlatApi::EduResourceResource](docs/EduResourceResource.md)
- [FlatApi::EduResourceType](docs/EduResourceType.md)
- [FlatApi::EduResourceUpdate](docs/EduResourceUpdate.md)
- [FlatApi::EduResourceUseInClass](docs/EduResourceUseInClass.md)
- [FlatApi::FlatErrorResponse](docs/FlatErrorResponse.md)
- [FlatApi::FlatLocales](docs/FlatLocales.md)
- [FlatApi::GoogleClassroomCoursework](docs/GoogleClassroomCoursework.md)
- [FlatApi::GoogleClassroomSubmission](docs/GoogleClassroomSubmission.md)
- [FlatApi::Group](docs/Group.md)
- [FlatApi::GroupDetails](docs/GroupDetails.md)
- [FlatApi::GroupType](docs/GroupType.md)
- [FlatApi::LicenseMode](docs/LicenseMode.md)
- [FlatApi::LicenseSources](docs/LicenseSources.md)
- [FlatApi::LmsName](docs/LmsName.md)
- [FlatApi::LtiCredentials](docs/LtiCredentials.md)
- [FlatApi::LtiCredentialsCreation](docs/LtiCredentialsCreation.md)
- [FlatApi::MediaAttachment](docs/MediaAttachment.md)
- [FlatApi::MediaScoreSharingMode](docs/MediaScoreSharingMode.md)
- [FlatApi::MicrosoftGraphAssignment](docs/MicrosoftGraphAssignment.md)
- [FlatApi::MicrosoftGraphSubmission](docs/MicrosoftGraphSubmission.md)
- [FlatApi::OrganizationInvitation](docs/OrganizationInvitation.md)
- [FlatApi::OrganizationInvitationCreation](docs/OrganizationInvitationCreation.md)
- [FlatApi::OrganizationRoles](docs/OrganizationRoles.md)
- [FlatApi::OrganizationUserAccessTokenCreation](docs/OrganizationUserAccessTokenCreation.md)
- [FlatApi::ResourceCollaborator](docs/ResourceCollaborator.md)
- [FlatApi::ResourceCollaboratorCreation](docs/ResourceCollaboratorCreation.md)
- [FlatApi::ResourceRights](docs/ResourceRights.md)
- [FlatApi::ScoreComment](docs/ScoreComment.md)
- [FlatApi::ScoreCommentContext](docs/ScoreCommentContext.md)
- [FlatApi::ScoreCommentCreation](docs/ScoreCommentCreation.md)
- [FlatApi::ScoreCommentModeration](docs/ScoreCommentModeration.md)
- [FlatApi::ScoreCommentUpdate](docs/ScoreCommentUpdate.md)
- [FlatApi::ScoreCommentsCounts](docs/ScoreCommentsCounts.md)
- [FlatApi::ScoreCreation](docs/ScoreCreation.md)
- [FlatApi::ScoreCreationBuilderData](docs/ScoreCreationBuilderData.md)
- [FlatApi::ScoreCreationBuilderDataAllOfBuilderData](docs/ScoreCreationBuilderDataAllOfBuilderData.md)
- [FlatApi::ScoreCreationBuilderDataAllOfBuilderDataLayoutData](docs/ScoreCreationBuilderDataAllOfBuilderDataLayoutData.md)
- [FlatApi::ScoreCreationBuilderDataAllOfBuilderDataScoreData](docs/ScoreCreationBuilderDataAllOfBuilderDataScoreData.md)
- [FlatApi::ScoreCreationBuilderDataAllOfBuilderDataScoreDataInstruments](docs/ScoreCreationBuilderDataAllOfBuilderDataScoreDataInstruments.md)
- [FlatApi::ScoreCreationCommon](docs/ScoreCreationCommon.md)
- [FlatApi::ScoreCreationFileImport](docs/ScoreCreationFileImport.md)
- [FlatApi::ScoreCreationGoogleDriveImport](docs/ScoreCreationGoogleDriveImport.md)
- [FlatApi::ScoreCreationType](docs/ScoreCreationType.md)
- [FlatApi::ScoreDetails](docs/ScoreDetails.md)
- [FlatApi::ScoreFork](docs/ScoreFork.md)
- [FlatApi::ScoreLicense](docs/ScoreLicense.md)
- [FlatApi::ScoreLikesCounts](docs/ScoreLikesCounts.md)
- [FlatApi::ScoreModification](docs/ScoreModification.md)
- [FlatApi::ScorePlaysCounts](docs/ScorePlaysCounts.md)
- [FlatApi::ScorePrivacy](docs/ScorePrivacy.md)
- [FlatApi::ScoreRevision](docs/ScoreRevision.md)
- [FlatApi::ScoreRevisionCreation](docs/ScoreRevisionCreation.md)
- [FlatApi::ScoreRevisionStatistics](docs/ScoreRevisionStatistics.md)
- [FlatApi::ScoreSource](docs/ScoreSource.md)
- [FlatApi::ScoreSummary](docs/ScoreSummary.md)
- [FlatApi::ScoreTrack](docs/ScoreTrack.md)
- [FlatApi::ScoreTrackCreation](docs/ScoreTrackCreation.md)
- [FlatApi::ScoreTrackPoint](docs/ScoreTrackPoint.md)
- [FlatApi::ScoreTrackPurpose](docs/ScoreTrackPurpose.md)
- [FlatApi::ScoreTrackState](docs/ScoreTrackState.md)
- [FlatApi::ScoreTrackType](docs/ScoreTrackType.md)
- [FlatApi::ScoreTrackUpdate](docs/ScoreTrackUpdate.md)
- [FlatApi::ScoreViewsCounts](docs/ScoreViewsCounts.md)
- [FlatApi::Task](docs/Task.md)
- [FlatApi::TaskExportOptions](docs/TaskExportOptions.md)
- [FlatApi::TaskProgress](docs/TaskProgress.md)
- [FlatApi::TaskResult](docs/TaskResult.md)
- [FlatApi::TutteoProduct](docs/TutteoProduct.md)
- [FlatApi::UserAdminUpdate](docs/UserAdminUpdate.md)
- [FlatApi::UserAzureDetails](docs/UserAzureDetails.md)
- [FlatApi::UserBasics](docs/UserBasics.md)
- [FlatApi::UserCommunityProfileLinks](docs/UserCommunityProfileLinks.md)
- [FlatApi::UserCreation](docs/UserCreation.md)
- [FlatApi::UserDetails](docs/UserDetails.md)
- [FlatApi::UserDetailsAdmin](docs/UserDetailsAdmin.md)
- [FlatApi::UserDetailsAdminAllOfLicense](docs/UserDetailsAdminAllOfLicense.md)
- [FlatApi::UserPublic](docs/UserPublic.md)
- [FlatApi::UserPublicSummary](docs/UserPublicSummary.md)
- [FlatApi::UserSigninLink](docs/UserSigninLink.md)
- [FlatApi::UserSigninLinkCreation](docs/UserSigninLinkCreation.md)

## Documentation for Authorization

Authentication schemes defined for the API:
### OAuth2

- **Type**: OAuth
- **Flow**: accessCode
- **Authorization URL**: https://flat.io/auth/oauth
- **Scopes**:
- account.public_profile: Provides access to the basic person's public profile. Education profiles may be anonymized with this scope, you can request the scope `education_profile` to access to the a basic education account profile.
- account.email: Provices access to the person's email.
- account.education_profile: Provides access to the basic person's education profile and public organization information.
- scores.readonly: Allows read-only access to all a user's scores. You won't need this scope to read public scores.
- scores.social: Allow to post comments and like scores
- scores: Full, permissive scope to access all of a user's scores.
- collections.readonly: Allow read-only access to a user's collections.
- collections.add_scores: Allow to add scores to a user's collections.
- collections: Full, permissive scope to access all of a user's collections.
- edu.resources: Read-write access to the resource library.
- edu.resources.readonly: Read-only access to the resource library.
- edu.classes: Full, permissive scope to manage the classes.
- edu.classes.readonly: Read-only access to the classes.
- edu.assignments: Read-write access to the assignments and submissions.
- edu.assignments.readonly: Read-only access to the assignments and submissions.
- edu.admin: Full, permissive scope to manage all the admin of an organization.
- edu.admin.lti: Access and manage the LTI Credentials for an organization.
- edu.admin.lti.readonly: Read-only access to the LTI Credentials of an organization.
- edu.admin.users: Access and manage the users and invitations of the organization.
- edu.admin.users.readonly: Read-only access to the users and invitations of the organization.
- tasks.readonly: Read-only access to export tasks created by this account.