The Flat API allows you to easily extend the abilities of the Flat Platform, 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 of this API follows the OpenAPI Initiative (OAI) specification, you can use and work with compatible Swagger tools. This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with W3C spec. 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. Getting Started and learn more: * API Overview and interoduction * Authentication (Personal Access Tokens or OAuth2) * SDKs * Rate Limits * Changelog
This Python package is automatically generated by the OpenAPI Generator project:
- API version: 2.9.0
- Package version: 0.6.0
- Build package: org.openapitools.codegen.languages.PythonClientCodegen For more information, please visit https://flat.io/developers/docs/api/
Python 2.7 and 3.4+
If the python package is hosted on a repository, you can install directly using:
pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git(you may need to run pip with root permission: sudo pip install git+https://github.com/GIT_USER_ID/GIT_REPO_ID.git)
Then import the package:
import flat_apiInstall via Setuptools.
python setup.py install --user(or sudo python setup.py install to install the package for all users)
Then import the package:
import flat_apiPlease follow the installation procedure and then run the following:
from __future__ import print_function
import time
import flat_api
from flat_api.rest import ApiException
from pprint import pprint
configuration = flat_api.Configuration()
# Configure OAuth2 access token for authorization: OAuth2
configuration.access_token = 'YOUR_ACCESS_TOKEN'
# Defining host is optional and default to https://api.flat.io/v2
configuration.host = "https://api.flat.io/v2"
# Create an instance of the API class
api_instance = flat_api.AccountApi(flat_api.ApiClient(configuration))
try:
# Get current user profile
api_response = api_instance.get_authenticated_user()
pprint(api_response)
except ApiException as e:
print("Exception when calling AccountApi->get_authenticated_user: %s\n" % e)All URIs are relative to https://api.flat.io/v2
| Class | Method | HTTP request | Description |
|---|---|---|---|
| AccountApi | get_authenticated_user | GET /me | Get current user profile |
| ClassApi | activate_class | POST /classes/{class}/activate | Activate the class |
| ClassApi | add_class_user | PUT /classes/{class}/users/{user} | Add a user to the class |
| ClassApi | archive_class | POST /classes/{class}/archive | Archive the class |
| ClassApi | copy_assignment | POST /classes/{class}/assignments/{assignment}/copy | Copy an assignment |
| ClassApi | create_assignment | POST /classes/{class}/assignments | Assignment creation |
| ClassApi | create_class | POST /classes | Create a new class |
| ClassApi | create_submission | PUT /classes/{class}/assignments/{assignment}/submissions | Create or edit a submission |
| ClassApi | delete_class_user | DELETE /classes/{class}/users/{user} | Remove a user from the class |
| ClassApi | edit_submission | PUT /classes/{class}/assignments/{assignment}/submissions/{submission} | Edit a submission |
| ClassApi | enroll_class | POST /classes/enroll/{enrollmentCode} | Join a class |
| ClassApi | get_class | GET /classes/{class} | Get the details of a single class |
| ClassApi | get_score_submissions | GET /scores/{score}/submissions | List submissions related to the score |
| ClassApi | get_submission | GET /classes/{class}/assignments/{assignment}/submissions/{submission} | Get a student submission |
| ClassApi | get_submissions | GET /classes/{class}/assignments/{assignment}/submissions | List the students' submissions |
| ClassApi | list_assignments | GET /classes/{class}/assignments | Assignments listing |
| ClassApi | list_class_student_submissions | GET /classes/{class}/students/{user}/submissions | List the submissions for a student |
| ClassApi | list_classes | GET /classes | List the classes available for the current user |
| ClassApi | unarchive_class | DELETE /classes/{class}/archive | Unarchive the class |
| ClassApi | update_class | PUT /classes/{class} | Update the class |
| CollectionApi | add_score_to_collection | PUT /collections/{collection}/scores/{score} | Add a score to the collection |
| CollectionApi | create_collection | POST /collections | Create a new collection |
| CollectionApi | delete_collection | DELETE /collections/{collection} | Delete the collection |
| CollectionApi | delete_score_from_collection | DELETE /collections/{collection}/scores/{score} | Delete a score from the collection |
| CollectionApi | edit_collection | PUT /collections/{collection} | Update a collection's metadata |
| CollectionApi | get_collection | GET /collections/{collection} | Get collection details |
| CollectionApi | list_collection_scores | GET /collections/{collection}/scores | List the scores contained in a collection |
| CollectionApi | list_collections | GET /collections | List the collections |
| CollectionApi | untrash_collection | POST /collections/{collection}/untrash | Untrash a collection |
| GroupApi | get_group_details | GET /groups/{group} | Get group information |
| GroupApi | get_group_scores | GET /groups/{group}/scores | List group's scores |
| GroupApi | list_group_users | GET /groups/{group}/users | List group's users |
| OrganizationApi | create_lti_credentials | POST /organizations/lti/credentials | Create a new couple of LTI 1.x credentials |
| OrganizationApi | create_organization_invitation | POST /organizations/invitations | Create a new invitation to join the organization |
| OrganizationApi | create_organization_user | POST /organizations/users | Create a new user account |
| OrganizationApi | list_lti_credentials | GET /organizations/lti/credentials | List LTI 1.x credentials |
| OrganizationApi | list_organization_invitations | GET /organizations/invitations | List the organization invitations |
| OrganizationApi | list_organization_users | GET /organizations/users | List the organization users |
| OrganizationApi | remove_organization_invitation | DELETE /organizations/invitations/{invitation} | Remove an organization invitation |
| OrganizationApi | remove_organization_user | DELETE /organizations/users/{user} | Remove an account from Flat |
| OrganizationApi | revoke_lti_credentials | DELETE /organizations/lti/credentials/{credentials} | Revoke LTI 1.x credentials |
| OrganizationApi | update_organization_user | PUT /organizations/users/{user} | Update account information |
| ScoreApi | add_score_collaborator | POST /scores/{score}/collaborators | Add a new collaborator |
| ScoreApi | add_score_track | POST /scores/{score}/tracks | Add a new video or audio track to the score |
| ScoreApi | create_score | POST /scores | Create a new score |
| ScoreApi | create_score_revision | POST /scores/{score}/revisions | Create a new revision |
| ScoreApi | delete_score | DELETE /scores/{score} | Delete a score |
| ScoreApi | delete_score_comment | DELETE /scores/{score}/comments/{comment} | Delete a comment |
| ScoreApi | delete_score_track | DELETE /scores/{score}/tracks/{track} | Remove an audio or video track linked to the score |
| ScoreApi | edit_score | PUT /scores/{score} | Edit a score's metadata |
| ScoreApi | fork_score | POST /scores/{score}/fork | Fork a score |
| ScoreApi | ger_user_likes | GET /users/{user}/likes | List liked scores |
| ScoreApi | get_group_scores | GET /groups/{group}/scores | List group's scores |
| ScoreApi | get_score | GET /scores/{score} | Get a score's metadata |
| ScoreApi | get_score_collaborator | GET /scores/{score}/collaborators/{collaborator} | Get a collaborator |
| ScoreApi | get_score_collaborators | GET /scores/{score}/collaborators | List the collaborators |
| ScoreApi | get_score_comments | GET /scores/{score}/comments | List comments |
| ScoreApi | get_score_revision | GET /scores/{score}/revisions/{revision} | Get a score revision |
| ScoreApi | get_score_revision_data | GET /scores/{score}/revisions/{revision}/{format} | Get a score revision data |
| ScoreApi | get_score_revisions | GET /scores/{score}/revisions | List the revisions |
| ScoreApi | get_score_submissions | GET /scores/{score}/submissions | List submissions related to the score |
| ScoreApi | get_score_track | GET /scores/{score}/tracks/{track} | Retrieve the details of an audio or video track linked to a score |
| ScoreApi | get_user_scores | GET /users/{user}/scores | List user's scores |
| ScoreApi | list_score_tracks | GET /scores/{score}/tracks | List the audio or video tracks linked to a score |
| ScoreApi | mark_score_comment_resolved | PUT /scores/{score}/comments/{comment}/resolved | Mark the comment as resolved |
| ScoreApi | mark_score_comment_unresolved | DELETE /scores/{score}/comments/{comment}/resolved | Mark the comment as unresolved |
| ScoreApi | post_score_comment | POST /scores/{score}/comments | Post a new comment |
| ScoreApi | remove_score_collaborator | DELETE /scores/{score}/collaborators/{collaborator} | Delete a collaborator |
| ScoreApi | untrash_score | POST /scores/{score}/untrash | Untrash a score |
| ScoreApi | update_score_comment | PUT /scores/{score}/comments/{comment} | Update an existing comment |
| ScoreApi | update_score_track | PUT /scores/{score}/tracks/{track} | Update an audio or video track linked to a score |
| UserApi | ger_user_likes | GET /users/{user}/likes | List liked scores |
| UserApi | get_user | GET /users/{user} | Get a public user profile |
| UserApi | get_user_scores | GET /users/{user}/scores | List user's scores |
- Assignment
- AssignmentCopy
- AssignmentCreation
- AssignmentSubmission
- AssignmentSubmissionUpdate
- ClassAttachmentCreation
- ClassCreation
- ClassDetails
- ClassDetailsCanvas
- ClassDetailsClever
- ClassDetailsGoogleClassroom
- ClassDetailsGoogleDrive
- ClassDetailsLti
- ClassDetailsMicrosoftGraph
- ClassRoles
- ClassState
- ClassUpdate
- Collection
- CollectionCapabilities
- CollectionCreation
- CollectionModification
- CollectionPrivacy
- CollectionType
- FlatErrorResponse
- FlatLocales
- GoogleClassroomCoursework
- GoogleClassroomSubmission
- Group
- GroupDetails
- GroupType
- LicenseMode
- LicenseSources
- LmsName
- LtiCredentials
- LtiCredentialsCreation
- MediaAttachment
- MediaScoreSharingMode
- OrganizationInvitation
- OrganizationInvitationCreation
- OrganizationRoles
- ResourceCollaborator
- ResourceCollaboratorAllOf
- ResourceCollaboratorCreation
- ResourceRights
- ScoreComment
- ScoreCommentContext
- ScoreCommentCreation
- ScoreCommentUpdate
- ScoreCommentsCounts
- ScoreCreation
- ScoreCreationType
- ScoreDetails
- ScoreDetailsAllOf
- ScoreFork
- ScoreLicense
- ScoreLikesCounts
- ScoreModification
- ScorePlaysCounts
- ScorePrivacy
- ScoreRevision
- ScoreRevisionCreation
- ScoreRevisionStatistics
- ScoreSource
- ScoreSummary
- ScoreTrack
- ScoreTrackCreation
- ScoreTrackPoint
- ScoreTrackState
- ScoreTrackType
- ScoreTrackUpdate
- ScoreViewsCounts
- UserAdminUpdate
- UserBasics
- UserCreation
- UserDetails
- UserDetailsAdmin
- UserDetailsAdminAllOf
- UserDetailsAdminAllOfLicense
- UserDetailsAllOf
- UserPublic
- UserPublicAllOf
- UserPublicSummary
- UserPublicSummaryAllOf
- 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_profileto 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.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.