Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

FlatIO/api-client-js

Open more actions menu

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

58 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

JavaScript (Browser & Node.js) Client for the Flat REST API

Build Status NPM Version

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 or MIDI 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.

You can find the API reference including code samples and our OpenAPI Specification at the following url: https://flat.io/developers/api/reference.

To request some API credentials, please visit https://flat.io/developers.

This JavaScript package is automatically generated by the Swagger Codegen project.

Installation

npm

$ npm install flat-api --save

git

$ npm install git://github.com/FlatIO/api-client-js --save

For browser

bower

$ bower install flat-api

git / github

The library also works in the browser environment via npm and browserify. A build is available in the build directory, you can also rebuild the library:

$ npm install -d && npm run build
$ ls -1 build
flat-api.js
flat-api.js.map
flat-api.min.js

Then include bundle.js in the HTML pages.

Getting Started

Please follow the installation instruction and execute the following JS code:

var FlatApi = require('flat-api');

// Configure OAuth2 access token for authorization
FlatApi.ApiClient.instance.authentications.OAuth2.accessToken = 'YOUR_ACCES_TOKEN';

var flatAccountApi = new FlatApi.AccountApi();
flatAccountApi.getAuthenticatedUser(function(error, data, response) {
  if (error) {
    console.error(error);
  }
  else {
    console.log('Successfully retrieved user profile: ', data);
  }
});

Documentation for API Endpoints

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

Class Method HTTP request Description
FlatApi.AccountApi getAuthenticatedUser GET /me Get current user profile
FlatApi.ClassApi activateClass POST /classes/{class}/activate Activate the class
FlatApi.ClassApi addClassUser PUT /classes/{class}/users/{user} Add a user to the class
FlatApi.ClassApi archiveClass POST /classes/{class}/archive Archive the class
FlatApi.ClassApi copyAssignment POST /classes/{class}/assignments/{assignment}/copy Copy an assignment
FlatApi.ClassApi createAssignment POST /classes/{class}/assignments Assignment creation
FlatApi.ClassApi createClass POST /classes Create a new class
FlatApi.ClassApi createSubmission PUT /classes/{class}/assignments/{assignment}/submissions Create or edit a submission
FlatApi.ClassApi deleteClassUser DELETE /classes/{class}/users/{user} Remove a user from the class
FlatApi.ClassApi editSubmission PUT /classes/{class}/assignments/{assignment}/submissions/{submission} Edit a submission
FlatApi.ClassApi enrollClass POST /classes/enroll/{enrollmentCode} Join a class
FlatApi.ClassApi getClass GET /classes/{class} Get the details of a single class
FlatApi.ClassApi getScoreSubmissions GET /scores/{score}/submissions List submissions related to the score
FlatApi.ClassApi getSubmission GET /classes/{class}/assignments/{assignment}/submissions/{submission} Get a student submission
FlatApi.ClassApi getSubmissions GET /classes/{class}/assignments/{assignment}/submissions List the students' submissions
FlatApi.ClassApi listAssignments GET /classes/{class}/assignments Assignments listing
FlatApi.ClassApi listClassStudentSubmissions GET /classes/{class}/students/{user}/submissions List the submissions for a student
FlatApi.ClassApi listClasses GET /classes List the classes available for the current user
FlatApi.ClassApi unarchiveClass DELETE /classes/{class}/archive Unarchive the class
FlatApi.ClassApi updateClass PUT /classes/{class} Update the class
FlatApi.CollectionApi addScoreToCollection PUT /collections/{collection}/scores/{score} Add a score to the collection
FlatApi.CollectionApi createCollection POST /collections Create a new collection
FlatApi.CollectionApi deleteCollection DELETE /collections/{collection} Delete the collection
FlatApi.CollectionApi deleteScoreFromCollection DELETE /collections/{collection}/scores/{score} Delete a score from the collection
FlatApi.CollectionApi editCollection PUT /collections/{collection} Update a collection's metadata
FlatApi.CollectionApi getCollection GET /collections/{collection} Get collection details
FlatApi.CollectionApi listCollectionScores GET /collections/{collection}/scores List the scores contained in a collection
FlatApi.CollectionApi listCollections GET /collections List the collections
FlatApi.CollectionApi untrashCollection POST /collections/{collection}/untrash Untrash a collection
FlatApi.GroupApi getGroupDetails GET /groups/{group} Get group information
FlatApi.GroupApi getGroupScores GET /groups/{group}/scores List group's scores
FlatApi.GroupApi listGroupUsers GET /groups/{group}/users List group's users
FlatApi.OrganizationApi createLtiCredentials POST /organizations/lti/credentials Create a new couple of LTI 1.x credentials
FlatApi.OrganizationApi createOrganizationInvitation POST /organizations/invitations Create a new invitation to join the organization
FlatApi.OrganizationApi createOrganizationUser POST /organizations/users Create a new user account
FlatApi.OrganizationApi listLtiCredentials GET /organizations/lti/credentials List LTI 1.x credentials
FlatApi.OrganizationApi listOrganizationInvitations GET /organizations/invitations List the organization invitations
FlatApi.OrganizationApi listOrganizationUsers GET /organizations/users List the organization users
FlatApi.OrganizationApi removeOrganizationInvitation DELETE /organizations/invitations/{invitation} Remove an organization invitation
FlatApi.OrganizationApi removeOrganizationUser DELETE /organizations/users/{user} Remove an account from Flat
FlatApi.OrganizationApi revokeLtiCredentials DELETE /organizations/lti/credentials/{credentials} Revoke LTI 1.x credentials
FlatApi.OrganizationApi updateOrganizationUser PUT /organizations/users/{user} Update account information
FlatApi.ScoreApi addScoreCollaborator POST /scores/{score}/collaborators Add a new collaborator
FlatApi.ScoreApi addScoreTrack POST /scores/{score}/tracks Add a new video or audio track to the score
FlatApi.ScoreApi createScore POST /scores Create a new score
FlatApi.ScoreApi createScoreRevision POST /scores/{score}/revisions Create a new revision
FlatApi.ScoreApi deleteScore DELETE /scores/{score} Delete a score
FlatApi.ScoreApi deleteScoreComment DELETE /scores/{score}/comments/{comment} Delete a comment
FlatApi.ScoreApi deleteScoreTrack DELETE /scores/{score}/tracks/{track} Remove an audio or video track linked to the score
FlatApi.ScoreApi editScore PUT /scores/{score} Edit a score's metadata
FlatApi.ScoreApi forkScore POST /scores/{score}/fork Fork a score
FlatApi.ScoreApi gerUserLikes GET /users/{user}/likes List liked scores
FlatApi.ScoreApi getGroupScores GET /groups/{group}/scores List group's scores
FlatApi.ScoreApi getScore GET /scores/{score} Get a score's metadata
FlatApi.ScoreApi getScoreCollaborator GET /scores/{score}/collaborators/{collaborator} Get a collaborator
FlatApi.ScoreApi getScoreCollaborators GET /scores/{score}/collaborators List the collaborators
FlatApi.ScoreApi getScoreComments GET /scores/{score}/comments List comments
FlatApi.ScoreApi getScoreRevision GET /scores/{score}/revisions/{revision} Get a score revision
FlatApi.ScoreApi getScoreRevisionData GET /scores/{score}/revisions/{revision}/{format} Get a score revision data
FlatApi.ScoreApi getScoreRevisions GET /scores/{score}/revisions List the revisions
FlatApi.ScoreApi getScoreSubmissions GET /scores/{score}/submissions List submissions related to the score
FlatApi.ScoreApi getScoreTrack GET /scores/{score}/tracks/{track} Retrieve the details of an audio or video track linked to a score
FlatApi.ScoreApi getUserScores GET /users/{user}/scores List user's scores
FlatApi.ScoreApi listScoreTracks GET /scores/{score}/tracks List the audio or video tracks linked to a score
FlatApi.ScoreApi markScoreCommentResolved PUT /scores/{score}/comments/{comment}/resolved Mark the comment as resolved
FlatApi.ScoreApi markScoreCommentUnresolved DELETE /scores/{score}/comments/{comment}/resolved Mark the comment as unresolved
FlatApi.ScoreApi postScoreComment POST /scores/{score}/comments Post a new comment
FlatApi.ScoreApi removeScoreCollaborator DELETE /scores/{score}/collaborators/{collaborator} Delete a collaborator
FlatApi.ScoreApi untrashScore POST /scores/{score}/untrash Untrash a score
FlatApi.ScoreApi updateScoreComment PUT /scores/{score}/comments/{comment} Update an existing comment
FlatApi.ScoreApi updateScoreTrack PUT /scores/{score}/tracks/{track} Update an audio or video track linked to a score
FlatApi.UserApi gerUserLikes GET /users/{user}/likes List liked scores
FlatApi.UserApi getUser GET /users/{user} Get a public user profile
FlatApi.UserApi getUserScores GET /users/{user}/scores List user's scores

Documentation for Models

Documentation for Authorization

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.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.

Packages

No packages published

Contributors 3

  •  
  •  
  •  
Morty Proxy This is a proxified and sanitized view of the page, visit original site.