flat_api 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (333) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +5 -0
  3. data/Gemfile +7 -0
  4. data/README.md +248 -0
  5. data/Rakefile +8 -0
  6. data/docs/AccountApi.md +55 -0
  7. data/docs/Assignment.md +18 -0
  8. data/docs/AssignmentCopy.md +8 -0
  9. data/docs/AssignmentCreation.md +12 -0
  10. data/docs/AssignmentSubmission.md +19 -0
  11. data/docs/AssignmentSubmissionUpdate.md +11 -0
  12. data/docs/ClassApi.md +1051 -0
  13. data/docs/ClassAttachmentCreation.md +10 -0
  14. data/docs/ClassCreation.md +9 -0
  15. data/docs/ClassDetails.md +25 -0
  16. data/docs/ClassDetailsCanvas.md +9 -0
  17. data/docs/ClassDetailsClever.md +14 -0
  18. data/docs/ClassDetailsGoogleClassroom.md +11 -0
  19. data/docs/ClassDetailsGoogleDrive.md +9 -0
  20. data/docs/ClassDetailsLti.md +10 -0
  21. data/docs/ClassRoles.md +7 -0
  22. data/docs/ClassState.md +7 -0
  23. data/docs/ClassUpdate.md +9 -0
  24. data/docs/FlatErrorResponse.md +11 -0
  25. data/docs/FlatLocales.md +7 -0
  26. data/docs/GoogleClassroomCoursework.md +10 -0
  27. data/docs/GoogleClassroomSubmission.md +10 -0
  28. data/docs/Group.md +14 -0
  29. data/docs/GroupApi.md +167 -0
  30. data/docs/GroupDetails.md +14 -0
  31. data/docs/GroupType.md +7 -0
  32. data/docs/LicenseMode.md +7 -0
  33. data/docs/LicenseSources.md +7 -0
  34. data/docs/LmsName.md +7 -0
  35. data/docs/LtiCredentials.md +16 -0
  36. data/docs/LtiCredentialsCreation.md +9 -0
  37. data/docs/MediaAttachment.md +23 -0
  38. data/docs/MediaScoreSharingMode.md +7 -0
  39. data/docs/OrganizationApi.md +538 -0
  40. data/docs/OrganizationInvitation.md +14 -0
  41. data/docs/OrganizationInvitationCreation.md +9 -0
  42. data/docs/OrganizationRoles.md +7 -0
  43. data/docs/ScoreApi.md +1605 -0
  44. data/docs/ScoreCollaborator.md +15 -0
  45. data/docs/ScoreCollaboratorCreation.md +13 -0
  46. data/docs/ScoreComment.md +22 -0
  47. data/docs/ScoreCommentContext.md +14 -0
  48. data/docs/ScoreCommentCreation.md +13 -0
  49. data/docs/ScoreCommentUpdate.md +11 -0
  50. data/docs/ScoreCommentsCounts.md +11 -0
  51. data/docs/ScoreCreation.md +13 -0
  52. data/docs/ScoreCreationType.md +7 -0
  53. data/docs/ScoreData.md +7 -0
  54. data/docs/ScoreDataEncoding.md +7 -0
  55. data/docs/ScoreDetails.md +36 -0
  56. data/docs/ScoreFork.md +7 -0
  57. data/docs/ScoreLicense.md +7 -0
  58. data/docs/ScoreLikesCounts.md +10 -0
  59. data/docs/ScoreModification.md +13 -0
  60. data/docs/ScorePrivacy.md +7 -0
  61. data/docs/ScoreRevision.md +14 -0
  62. data/docs/ScoreRevisionCreation.md +11 -0
  63. data/docs/ScoreRevisionStatistics.md +9 -0
  64. data/docs/ScoreRights.md +9 -0
  65. data/docs/ScoreSource.md +8 -0
  66. data/docs/ScoreSummary.md +13 -0
  67. data/docs/ScoreTrack.md +19 -0
  68. data/docs/ScoreTrackCreation.md +12 -0
  69. data/docs/ScoreTrackPoint.md +10 -0
  70. data/docs/ScoreTrackState.md +7 -0
  71. data/docs/ScoreTrackType.md +7 -0
  72. data/docs/ScoreTrackUpdate.md +11 -0
  73. data/docs/ScoreViewsCounts.md +10 -0
  74. data/docs/UserAdminUpdate.md +9 -0
  75. data/docs/UserApi.md +173 -0
  76. data/docs/UserBasics.md +13 -0
  77. data/docs/UserCreation.md +11 -0
  78. data/docs/UserDetails.md +28 -0
  79. data/docs/UserDetailsAdmin.md +20 -0
  80. data/docs/UserDetailsAdminLicense.md +12 -0
  81. data/docs/UserInstruments.md +7 -0
  82. data/docs/UserPublic.md +25 -0
  83. data/docs/UserPublicSummary.md +17 -0
  84. data/flat_api.gemspec +48 -0
  85. data/git_push.sh +55 -0
  86. data/lib/flat_api.rb +117 -0
  87. data/lib/flat_api/api/account_api.rb +72 -0
  88. data/lib/flat_api/api/class_api.rb +1148 -0
  89. data/lib/flat_api/api/group_api.rb +191 -0
  90. data/lib/flat_api/api/organization_api.rb +599 -0
  91. data/lib/flat_api/api/score_api.rb +1737 -0
  92. data/lib/flat_api/api/user_api.rb +194 -0
  93. data/lib/flat_api/api_client.rb +389 -0
  94. data/lib/flat_api/api_error.rb +38 -0
  95. data/lib/flat_api/configuration.rb +209 -0
  96. data/lib/flat_api/models/assignment.rb +323 -0
  97. data/lib/flat_api/models/assignment_copy.rb +194 -0
  98. data/lib/flat_api/models/assignment_creation.rb +230 -0
  99. data/lib/flat_api/models/assignment_submission.rb +299 -0
  100. data/lib/flat_api/models/assignment_submission_update.rb +220 -0
  101. data/lib/flat_api/models/class_attachment_creation.rb +242 -0
  102. data/lib/flat_api/models/class_creation.rb +239 -0
  103. data/lib/flat_api/models/class_details.rb +351 -0
  104. data/lib/flat_api/models/class_details_canvas.rb +199 -0
  105. data/lib/flat_api/models/class_details_clever.rb +282 -0
  106. data/lib/flat_api/models/class_details_google_classroom.rb +219 -0
  107. data/lib/flat_api/models/class_details_google_drive.rb +199 -0
  108. data/lib/flat_api/models/class_details_lti.rb +209 -0
  109. data/lib/flat_api/models/class_roles.rb +22 -0
  110. data/lib/flat_api/models/class_state.rb +23 -0
  111. data/lib/flat_api/models/class_update.rb +231 -0
  112. data/lib/flat_api/models/flat_error_response.rb +219 -0
  113. data/lib/flat_api/models/flat_locales.rb +27 -0
  114. data/lib/flat_api/models/google_classroom_coursework.rb +209 -0
  115. data/lib/flat_api/models/google_classroom_submission.rb +209 -0
  116. data/lib/flat_api/models/group.rb +282 -0
  117. data/lib/flat_api/models/group_details.rb +248 -0
  118. data/lib/flat_api/models/group_type.rb +23 -0
  119. data/lib/flat_api/models/license_mode.rb +22 -0
  120. data/lib/flat_api/models/license_sources.rb +25 -0
  121. data/lib/flat_api/models/lms_name.rb +27 -0
  122. data/lib/flat_api/models/lti_credentials.rb +268 -0
  123. data/lib/flat_api/models/lti_credentials_creation.rb +227 -0
  124. data/lib/flat_api/models/media_attachment.rb +371 -0
  125. data/lib/flat_api/models/media_score_sharing_mode.rb +23 -0
  126. data/lib/flat_api/models/organization_invitation.rb +248 -0
  127. data/lib/flat_api/models/organization_invitation_creation.rb +198 -0
  128. data/lib/flat_api/models/organization_roles.rb +24 -0
  129. data/lib/flat_api/models/score_collaborator.rb +263 -0
  130. data/lib/flat_api/models/score_collaborator_creation.rb +245 -0
  131. data/lib/flat_api/models/score_comment.rb +363 -0
  132. data/lib/flat_api/models/score_comment_context.rb +282 -0
  133. data/lib/flat_api/models/score_comment_creation.rb +245 -0
  134. data/lib/flat_api/models/score_comment_update.rb +268 -0
  135. data/lib/flat_api/models/score_comments_counts.rb +219 -0
  136. data/lib/flat_api/models/score_creation.rb +240 -0
  137. data/lib/flat_api/models/score_creation_type.rb +23 -0
  138. data/lib/flat_api/models/score_data.rb +179 -0
  139. data/lib/flat_api/models/score_data_encoding.rb +21 -0
  140. data/lib/flat_api/models/score_details.rb +467 -0
  141. data/lib/flat_api/models/score_fork.rb +179 -0
  142. data/lib/flat_api/models/score_license.rb +28 -0
  143. data/lib/flat_api/models/score_likes_counts.rb +209 -0
  144. data/lib/flat_api/models/score_modification.rb +270 -0
  145. data/lib/flat_api/models/score_privacy.rb +24 -0
  146. data/lib/flat_api/models/score_revision.rb +249 -0
  147. data/lib/flat_api/models/score_revision_creation.rb +222 -0
  148. data/lib/flat_api/models/score_revision_statistics.rb +199 -0
  149. data/lib/flat_api/models/score_rights.rb +203 -0
  150. data/lib/flat_api/models/score_source.rb +189 -0
  151. data/lib/flat_api/models/score_summary.rb +237 -0
  152. data/lib/flat_api/models/score_track.rb +298 -0
  153. data/lib/flat_api/models/score_track_creation.rb +229 -0
  154. data/lib/flat_api/models/score_track_point.rb +252 -0
  155. data/lib/flat_api/models/score_track_state.rb +23 -0
  156. data/lib/flat_api/models/score_track_type.rb +24 -0
  157. data/lib/flat_api/models/score_track_update.rb +219 -0
  158. data/lib/flat_api/models/score_views_counts.rb +209 -0
  159. data/lib/flat_api/models/user_admin_update.rb +214 -0
  160. data/lib/flat_api/models/user_basics.rb +239 -0
  161. data/lib/flat_api/models/user_creation.rb +266 -0
  162. data/lib/flat_api/models/user_details.rb +418 -0
  163. data/lib/flat_api/models/user_details_admin.rb +306 -0
  164. data/lib/flat_api/models/user_details_admin_license.rb +227 -0
  165. data/lib/flat_api/models/user_instruments.rb +179 -0
  166. data/lib/flat_api/models/user_public.rb +356 -0
  167. data/lib/flat_api/models/user_public_summary.rb +277 -0
  168. data/lib/flat_api/version.rb +15 -0
  169. data/lib/swagger_client.rb +117 -0
  170. data/lib/swagger_client/api/account_api.rb +72 -0
  171. data/lib/swagger_client/api/class_api.rb +1148 -0
  172. data/lib/swagger_client/api/group_api.rb +191 -0
  173. data/lib/swagger_client/api/organization_api.rb +599 -0
  174. data/lib/swagger_client/api/score_api.rb +1737 -0
  175. data/lib/swagger_client/api/user_api.rb +194 -0
  176. data/lib/swagger_client/api_client.rb +389 -0
  177. data/lib/swagger_client/api_error.rb +38 -0
  178. data/lib/swagger_client/configuration.rb +209 -0
  179. data/lib/swagger_client/models/assignment.rb +323 -0
  180. data/lib/swagger_client/models/assignment_copy.rb +194 -0
  181. data/lib/swagger_client/models/assignment_creation.rb +230 -0
  182. data/lib/swagger_client/models/assignment_submission.rb +299 -0
  183. data/lib/swagger_client/models/assignment_submission_update.rb +220 -0
  184. data/lib/swagger_client/models/class_attachment_creation.rb +242 -0
  185. data/lib/swagger_client/models/class_creation.rb +239 -0
  186. data/lib/swagger_client/models/class_details.rb +351 -0
  187. data/lib/swagger_client/models/class_details_canvas.rb +199 -0
  188. data/lib/swagger_client/models/class_details_clever.rb +282 -0
  189. data/lib/swagger_client/models/class_details_google_classroom.rb +219 -0
  190. data/lib/swagger_client/models/class_details_google_drive.rb +199 -0
  191. data/lib/swagger_client/models/class_details_lti.rb +209 -0
  192. data/lib/swagger_client/models/class_roles.rb +22 -0
  193. data/lib/swagger_client/models/class_state.rb +23 -0
  194. data/lib/swagger_client/models/class_update.rb +231 -0
  195. data/lib/swagger_client/models/flat_error_response.rb +219 -0
  196. data/lib/swagger_client/models/flat_locales.rb +27 -0
  197. data/lib/swagger_client/models/google_classroom_coursework.rb +209 -0
  198. data/lib/swagger_client/models/google_classroom_submission.rb +209 -0
  199. data/lib/swagger_client/models/group.rb +282 -0
  200. data/lib/swagger_client/models/group_details.rb +248 -0
  201. data/lib/swagger_client/models/group_type.rb +23 -0
  202. data/lib/swagger_client/models/license_mode.rb +22 -0
  203. data/lib/swagger_client/models/license_sources.rb +25 -0
  204. data/lib/swagger_client/models/lms_name.rb +27 -0
  205. data/lib/swagger_client/models/lti_credentials.rb +268 -0
  206. data/lib/swagger_client/models/lti_credentials_creation.rb +227 -0
  207. data/lib/swagger_client/models/media_attachment.rb +371 -0
  208. data/lib/swagger_client/models/media_score_sharing_mode.rb +23 -0
  209. data/lib/swagger_client/models/organization_invitation.rb +248 -0
  210. data/lib/swagger_client/models/organization_invitation_creation.rb +198 -0
  211. data/lib/swagger_client/models/organization_roles.rb +24 -0
  212. data/lib/swagger_client/models/score_collaborator.rb +263 -0
  213. data/lib/swagger_client/models/score_collaborator_creation.rb +245 -0
  214. data/lib/swagger_client/models/score_comment.rb +363 -0
  215. data/lib/swagger_client/models/score_comment_context.rb +282 -0
  216. data/lib/swagger_client/models/score_comment_creation.rb +245 -0
  217. data/lib/swagger_client/models/score_comment_update.rb +268 -0
  218. data/lib/swagger_client/models/score_comments_counts.rb +219 -0
  219. data/lib/swagger_client/models/score_creation.rb +240 -0
  220. data/lib/swagger_client/models/score_creation_type.rb +23 -0
  221. data/lib/swagger_client/models/score_data.rb +179 -0
  222. data/lib/swagger_client/models/score_data_encoding.rb +21 -0
  223. data/lib/swagger_client/models/score_details.rb +467 -0
  224. data/lib/swagger_client/models/score_fork.rb +179 -0
  225. data/lib/swagger_client/models/score_license.rb +28 -0
  226. data/lib/swagger_client/models/score_likes_counts.rb +209 -0
  227. data/lib/swagger_client/models/score_modification.rb +270 -0
  228. data/lib/swagger_client/models/score_privacy.rb +24 -0
  229. data/lib/swagger_client/models/score_revision.rb +249 -0
  230. data/lib/swagger_client/models/score_revision_creation.rb +222 -0
  231. data/lib/swagger_client/models/score_revision_statistics.rb +199 -0
  232. data/lib/swagger_client/models/score_rights.rb +203 -0
  233. data/lib/swagger_client/models/score_source.rb +189 -0
  234. data/lib/swagger_client/models/score_summary.rb +237 -0
  235. data/lib/swagger_client/models/score_track.rb +298 -0
  236. data/lib/swagger_client/models/score_track_creation.rb +229 -0
  237. data/lib/swagger_client/models/score_track_point.rb +252 -0
  238. data/lib/swagger_client/models/score_track_state.rb +23 -0
  239. data/lib/swagger_client/models/score_track_type.rb +24 -0
  240. data/lib/swagger_client/models/score_track_update.rb +219 -0
  241. data/lib/swagger_client/models/score_views_counts.rb +209 -0
  242. data/lib/swagger_client/models/user_admin_update.rb +214 -0
  243. data/lib/swagger_client/models/user_basics.rb +239 -0
  244. data/lib/swagger_client/models/user_creation.rb +266 -0
  245. data/lib/swagger_client/models/user_details.rb +418 -0
  246. data/lib/swagger_client/models/user_details_admin.rb +306 -0
  247. data/lib/swagger_client/models/user_details_admin_license.rb +227 -0
  248. data/lib/swagger_client/models/user_instruments.rb +179 -0
  249. data/lib/swagger_client/models/user_public.rb +356 -0
  250. data/lib/swagger_client/models/user_public_summary.rb +277 -0
  251. data/lib/swagger_client/version.rb +15 -0
  252. data/spec/api/account_api_spec.rb +46 -0
  253. data/spec/api/class_api_spec.rb +278 -0
  254. data/spec/api/group_api_spec.rb +72 -0
  255. data/spec/api/organization_api_spec.rb +162 -0
  256. data/spec/api/score_api_spec.rb +411 -0
  257. data/spec/api/user_api_spec.rb +73 -0
  258. data/spec/api_client_spec.rb +226 -0
  259. data/spec/configuration_spec.rb +42 -0
  260. data/spec/models/assignment_copy_spec.rb +42 -0
  261. data/spec/models/assignment_creation_spec.rb +66 -0
  262. data/spec/models/assignment_spec.rb +106 -0
  263. data/spec/models/assignment_submission_spec.rb +108 -0
  264. data/spec/models/assignment_submission_update_spec.rb +60 -0
  265. data/spec/models/class_attachment_creation_spec.rb +58 -0
  266. data/spec/models/class_creation_spec.rb +48 -0
  267. data/spec/models/class_details_canvas_spec.rb +48 -0
  268. data/spec/models/class_details_clever_spec.rb +82 -0
  269. data/spec/models/class_details_google_classroom_spec.rb +60 -0
  270. data/spec/models/class_details_google_drive_spec.rb +48 -0
  271. data/spec/models/class_details_lti_spec.rb +54 -0
  272. data/spec/models/class_details_spec.rb +144 -0
  273. data/spec/models/class_roles_spec.rb +36 -0
  274. data/spec/models/class_state_spec.rb +36 -0
  275. data/spec/models/class_update_spec.rb +48 -0
  276. data/spec/models/flat_error_response_spec.rb +60 -0
  277. data/spec/models/flat_locales_spec.rb +36 -0
  278. data/spec/models/google_classroom_coursework_spec.rb +54 -0
  279. data/spec/models/google_classroom_submission_spec.rb +54 -0
  280. data/spec/models/group_details_spec.rb +78 -0
  281. data/spec/models/group_spec.rb +82 -0
  282. data/spec/models/group_type_spec.rb +36 -0
  283. data/spec/models/license_mode_spec.rb +36 -0
  284. data/spec/models/license_sources_spec.rb +36 -0
  285. data/spec/models/lms_name_spec.rb +36 -0
  286. data/spec/models/lti_credentials_creation_spec.rb +48 -0
  287. data/spec/models/lti_credentials_spec.rb +90 -0
  288. data/spec/models/media_attachment_spec.rb +136 -0
  289. data/spec/models/media_score_sharing_mode_spec.rb +36 -0
  290. data/spec/models/organization_invitation_creation_spec.rb +48 -0
  291. data/spec/models/organization_invitation_spec.rb +78 -0
  292. data/spec/models/organization_roles_spec.rb +36 -0
  293. data/spec/models/score_collaborator_creation_spec.rb +72 -0
  294. data/spec/models/score_collaborator_spec.rb +84 -0
  295. data/spec/models/score_comment_context_spec.rb +78 -0
  296. data/spec/models/score_comment_creation_spec.rb +72 -0
  297. data/spec/models/score_comment_spec.rb +130 -0
  298. data/spec/models/score_comment_update_spec.rb +60 -0
  299. data/spec/models/score_comments_counts_spec.rb +60 -0
  300. data/spec/models/score_creation_spec.rb +72 -0
  301. data/spec/models/score_creation_type_spec.rb +36 -0
  302. data/spec/models/score_data_encoding_spec.rb +36 -0
  303. data/spec/models/score_data_spec.rb +36 -0
  304. data/spec/models/score_details_spec.rb +210 -0
  305. data/spec/models/score_fork_spec.rb +36 -0
  306. data/spec/models/score_license_spec.rb +36 -0
  307. data/spec/models/score_likes_counts_spec.rb +54 -0
  308. data/spec/models/score_modification_spec.rb +72 -0
  309. data/spec/models/score_privacy_spec.rb +36 -0
  310. data/spec/models/score_revision_creation_spec.rb +60 -0
  311. data/spec/models/score_revision_spec.rb +78 -0
  312. data/spec/models/score_revision_statistics_spec.rb +48 -0
  313. data/spec/models/score_rights_spec.rb +48 -0
  314. data/spec/models/score_source_spec.rb +42 -0
  315. data/spec/models/score_summary_spec.rb +72 -0
  316. data/spec/models/score_track_creation_spec.rb +66 -0
  317. data/spec/models/score_track_point_spec.rb +58 -0
  318. data/spec/models/score_track_spec.rb +108 -0
  319. data/spec/models/score_track_state_spec.rb +36 -0
  320. data/spec/models/score_track_type_spec.rb +36 -0
  321. data/spec/models/score_track_update_spec.rb +60 -0
  322. data/spec/models/score_views_counts_spec.rb +54 -0
  323. data/spec/models/user_admin_update_spec.rb +48 -0
  324. data/spec/models/user_basics_spec.rb +72 -0
  325. data/spec/models/user_creation_spec.rb +60 -0
  326. data/spec/models/user_details_admin_license_spec.rb +66 -0
  327. data/spec/models/user_details_admin_spec.rb +114 -0
  328. data/spec/models/user_details_spec.rb +166 -0
  329. data/spec/models/user_instruments_spec.rb +36 -0
  330. data/spec/models/user_public_spec.rb +144 -0
  331. data/spec/models/user_public_summary_spec.rb +96 -0
  332. data/spec/spec_helper.rb +111 -0
  333. metadata +640 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 7d1cf464397084163fdddb5b7a2b08fbaf747025
4
+ data.tar.gz: 1ca103733be95b85353dce1670f3fa35ef81be7d
5
+ SHA512:
6
+ metadata.gz: 945b9e041ee2ff343ba8883092f90dc3a0cc1a1b38e14e859d445b865595a31e4b030ca4c97d2d38f0d24b68f09f31712f75ea324a09d1d8d73095c6c44ff2f0
7
+ data.tar.gz: 54d182633a9aa20388caa71e427bd8da1d35905dbfee574bc7a63603dce4e35508ce8200e3c5e0a43d5f221cd6d3b31bd792d15c7dc57d917fcf897a85ab5e9b
@@ -0,0 +1,5 @@
1
+ # Changelog
2
+
3
+ ## 0.1.0
4
+
5
+ Initial release
data/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development, :test do
6
+ gem 'rake', '~> 12.0.0'
7
+ end
@@ -0,0 +1,248 @@
1
+ # Ruby Client for the Flat REST API
2
+
3
+ [![Build Status](https://travis-ci.org/FlatIO/api-client-ruby.svg?branch=master)](https://travis-ci.org/FlatIO/api-client-ruby)
4
+
5
+ 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:
6
+ - Creating and importing new music scores using MusicXML or MIDI files
7
+ - Browsing, updating, copying, exporting the user's scores (for example in MP3, WAV or MIDI)
8
+ - Managing educational resources with Flat for Education: creating & updating the organization accounts, the classes, rosters and assignments.
9
+
10
+ You can find the API reference including code samples and our OpenAPI Specification at the following url: [https://flat.io/developers/api/reference](https://flat.io/developers/api/reference).
11
+
12
+ To request some API credentials, please visit [https://flat.io/developers](https://flat.io/developers).
13
+
14
+ This Python package is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project.
15
+
16
+ ## Installation
17
+
18
+ ### Build a gem
19
+
20
+ To build the Ruby code into a gem:
21
+
22
+ ```shell
23
+ gem build flat_api.gemspec
24
+ ```
25
+
26
+ Then either install the gem locally:
27
+
28
+ ```shell
29
+ gem install ./flat_api-0.1.0.gem
30
+ ```
31
+ (for development, run `gem install --dev ./flat_api-0.1.0.gem` to install the development dependencies)
32
+
33
+ or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
34
+
35
+ Finally add this to the Gemfile:
36
+
37
+ gem 'flat_api', '~> 0.1.0'
38
+
39
+ ### Install from Git
40
+
41
+ If the Ruby gem is hosted at a git repository: https://github.com/FlatIO/api-client-ruby, then add the following in the Gemfile:
42
+
43
+ gem 'flat_api', :git => 'https://github.com/FlatIO/api-client-ruby.git'
44
+
45
+ ### Include the Ruby code directly
46
+
47
+ Include the Ruby code directly using `-I` as follows:
48
+
49
+ ```shell
50
+ ruby -Ilib script.rb
51
+ ```
52
+
53
+ ## Getting Started
54
+
55
+ Please follow the [installation](#installation) procedure and then run the following code:
56
+ ```ruby
57
+ # Load the gem
58
+ require 'flat_api'
59
+
60
+ # Setup authorization
61
+ FlatApi.configure do |config|
62
+ # Configure OAuth2 access token for authorization: OAuth2
63
+ config.access_token = 'YOUR ACCESS TOKEN'
64
+ end
65
+
66
+ api_instance = FlatApi::AccountApi.new
67
+
68
+ begin
69
+ #Get current user profile
70
+ result = api_instance.get_authenticated_user
71
+ p result
72
+ rescue FlatApi::ApiError => e
73
+ puts "Exception when calling AccountApi->get_authenticated_user: #{e}"
74
+ end
75
+
76
+ ```
77
+
78
+ ## Documentation for API Endpoints
79
+
80
+ All URIs are relative to *https://api.flat.io/v2*
81
+
82
+ Class | Method | HTTP request | Description
83
+ ------------ | ------------- | ------------- | -------------
84
+ *FlatApi::AccountApi* | [**get_authenticated_user**](docs/AccountApi.md#get_authenticated_user) | **GET** /me | Get current user profile
85
+ *FlatApi::ClassApi* | [**activate_class**](docs/ClassApi.md#activate_class) | **POST** /classes/{class}/activate | Activate the class
86
+ *FlatApi::ClassApi* | [**add_class_user**](docs/ClassApi.md#add_class_user) | **PUT** /classes/{class}/users/{user} | Add a user to the class
87
+ *FlatApi::ClassApi* | [**archive_class**](docs/ClassApi.md#archive_class) | **POST** /classes/{class}/archive | Archive the class
88
+ *FlatApi::ClassApi* | [**copy_assignment**](docs/ClassApi.md#copy_assignment) | **POST** /classes/{class}/assignments/{assignment}/copy | Copy an assignment
89
+ *FlatApi::ClassApi* | [**create_assignment**](docs/ClassApi.md#create_assignment) | **POST** /classes/{class}/assignments | Assignment creation
90
+ *FlatApi::ClassApi* | [**create_class**](docs/ClassApi.md#create_class) | **POST** /classes | Create a new class
91
+ *FlatApi::ClassApi* | [**create_submission**](docs/ClassApi.md#create_submission) | **PUT** /classes/{class}/assignments/{assignment}/submissions | Create or edit a submission
92
+ *FlatApi::ClassApi* | [**delete_class_user**](docs/ClassApi.md#delete_class_user) | **DELETE** /classes/{class}/users/{user} | Remove a user from the class
93
+ *FlatApi::ClassApi* | [**edit_submission**](docs/ClassApi.md#edit_submission) | **PUT** /classes/{class}/assignments/{assignment}/submissions/{submission} | Edit a submission
94
+ *FlatApi::ClassApi* | [**enroll_class**](docs/ClassApi.md#enroll_class) | **POST** /classes/enroll/{enrollmentCode} | Join a class
95
+ *FlatApi::ClassApi* | [**get_class**](docs/ClassApi.md#get_class) | **GET** /classes/{class} | Get the details of a single class
96
+ *FlatApi::ClassApi* | [**get_score_submissions**](docs/ClassApi.md#get_score_submissions) | **GET** /scores/{score}/submissions | List submissions related to the score
97
+ *FlatApi::ClassApi* | [**get_submission**](docs/ClassApi.md#get_submission) | **GET** /classes/{class}/assignments/{assignment}/submissions/{submission} | Get a student submission
98
+ *FlatApi::ClassApi* | [**get_submissions**](docs/ClassApi.md#get_submissions) | **GET** /classes/{class}/assignments/{assignment}/submissions | List the students' submissions
99
+ *FlatApi::ClassApi* | [**list_assignments**](docs/ClassApi.md#list_assignments) | **GET** /classes/{class}/assignments | Assignments listing
100
+ *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
101
+ *FlatApi::ClassApi* | [**list_classes**](docs/ClassApi.md#list_classes) | **GET** /classes | List the classes available for the current user
102
+ *FlatApi::ClassApi* | [**unarchive_class**](docs/ClassApi.md#unarchive_class) | **DELETE** /classes/{class}/archive | Unarchive the class
103
+ *FlatApi::ClassApi* | [**update_class**](docs/ClassApi.md#update_class) | **PUT** /classes/{class} | Update the class
104
+ *FlatApi::GroupApi* | [**get_group_details**](docs/GroupApi.md#get_group_details) | **GET** /groups/{group} | Get group information
105
+ *FlatApi::GroupApi* | [**get_group_scores**](docs/GroupApi.md#get_group_scores) | **GET** /groups/{group}/scores | List group's scores
106
+ *FlatApi::GroupApi* | [**list_group_users**](docs/GroupApi.md#list_group_users) | **GET** /groups/{group}/users | List group's users
107
+ *FlatApi::OrganizationApi* | [**create_lti_credentials**](docs/OrganizationApi.md#create_lti_credentials) | **POST** /organizations/lti/credentials | Create a new couple of LTI 1.x credentials
108
+ *FlatApi::OrganizationApi* | [**create_organization_invitation**](docs/OrganizationApi.md#create_organization_invitation) | **POST** /organizations/invitations | Create a new invitation to join the organization
109
+ *FlatApi::OrganizationApi* | [**create_organization_user**](docs/OrganizationApi.md#create_organization_user) | **POST** /organizations/users | Create a new user account
110
+ *FlatApi::OrganizationApi* | [**list_lti_credentials**](docs/OrganizationApi.md#list_lti_credentials) | **GET** /organizations/lti/credentials | List LTI 1.x credentials
111
+ *FlatApi::OrganizationApi* | [**list_organization_invitations**](docs/OrganizationApi.md#list_organization_invitations) | **GET** /organizations/invitations | List the organization invitations
112
+ *FlatApi::OrganizationApi* | [**list_organization_users**](docs/OrganizationApi.md#list_organization_users) | **GET** /organizations/users | List the organization users
113
+ *FlatApi::OrganizationApi* | [**remove_organization_invitation**](docs/OrganizationApi.md#remove_organization_invitation) | **DELETE** /organizations/invitations/{invitation} | Remove an organization invitation
114
+ *FlatApi::OrganizationApi* | [**remove_organization_user**](docs/OrganizationApi.md#remove_organization_user) | **DELETE** /organizations/users/{user} | Remove an account from Flat
115
+ *FlatApi::OrganizationApi* | [**revoke_lti_credentials**](docs/OrganizationApi.md#revoke_lti_credentials) | **DELETE** /organizations/lti/credentials/{credentials} | Revoke LTI 1.x credentials
116
+ *FlatApi::OrganizationApi* | [**update_organization_user**](docs/OrganizationApi.md#update_organization_user) | **PUT** /organizations/users/{user} | Update account information
117
+ *FlatApi::ScoreApi* | [**add_score_collaborator**](docs/ScoreApi.md#add_score_collaborator) | **POST** /scores/{score}/collaborators | Add a new collaborator
118
+ *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
119
+ *FlatApi::ScoreApi* | [**create_score**](docs/ScoreApi.md#create_score) | **POST** /scores | Create a new score
120
+ *FlatApi::ScoreApi* | [**create_score_revision**](docs/ScoreApi.md#create_score_revision) | **POST** /scores/{score}/revisions | Create a new revision
121
+ *FlatApi::ScoreApi* | [**delete_score**](docs/ScoreApi.md#delete_score) | **DELETE** /scores/{score} | Delete a score
122
+ *FlatApi::ScoreApi* | [**delete_score_comment**](docs/ScoreApi.md#delete_score_comment) | **DELETE** /scores/{score}/comments/{comment} | Delete a comment
123
+ *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
124
+ *FlatApi::ScoreApi* | [**edit_score**](docs/ScoreApi.md#edit_score) | **PUT** /scores/{score} | Edit a score's metadata
125
+ *FlatApi::ScoreApi* | [**fork_score**](docs/ScoreApi.md#fork_score) | **POST** /scores/{score}/fork | Fork a score
126
+ *FlatApi::ScoreApi* | [**ger_user_likes**](docs/ScoreApi.md#ger_user_likes) | **GET** /users/{user}/likes | List liked scores
127
+ *FlatApi::ScoreApi* | [**get_group_scores**](docs/ScoreApi.md#get_group_scores) | **GET** /groups/{group}/scores | List group's scores
128
+ *FlatApi::ScoreApi* | [**get_score**](docs/ScoreApi.md#get_score) | **GET** /scores/{score} | Get a score's metadata
129
+ *FlatApi::ScoreApi* | [**get_score_collaborator**](docs/ScoreApi.md#get_score_collaborator) | **GET** /scores/{score}/collaborators/{collaborator} | Get a collaborator
130
+ *FlatApi::ScoreApi* | [**get_score_collaborators**](docs/ScoreApi.md#get_score_collaborators) | **GET** /scores/{score}/collaborators | List the collaborators
131
+ *FlatApi::ScoreApi* | [**get_score_comments**](docs/ScoreApi.md#get_score_comments) | **GET** /scores/{score}/comments | List comments
132
+ *FlatApi::ScoreApi* | [**get_score_revision**](docs/ScoreApi.md#get_score_revision) | **GET** /scores/{score}/revisions/{revision} | Get a score revision
133
+ *FlatApi::ScoreApi* | [**get_score_revision_data**](docs/ScoreApi.md#get_score_revision_data) | **GET** /scores/{score}/revisions/{revision}/{format} | Get a score revision data
134
+ *FlatApi::ScoreApi* | [**get_score_revisions**](docs/ScoreApi.md#get_score_revisions) | **GET** /scores/{score}/revisions | List the revisions
135
+ *FlatApi::ScoreApi* | [**get_score_submissions**](docs/ScoreApi.md#get_score_submissions) | **GET** /scores/{score}/submissions | List submissions related to the score
136
+ *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
137
+ *FlatApi::ScoreApi* | [**get_user_scores**](docs/ScoreApi.md#get_user_scores) | **GET** /users/{user}/scores | List user's scores
138
+ *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
139
+ *FlatApi::ScoreApi* | [**mark_score_comment_resolved**](docs/ScoreApi.md#mark_score_comment_resolved) | **PUT** /scores/{score}/comments/{comment}/resolved | Mark the comment as resolved
140
+ *FlatApi::ScoreApi* | [**mark_score_comment_unresolved**](docs/ScoreApi.md#mark_score_comment_unresolved) | **DELETE** /scores/{score}/comments/{comment}/resolved | Mark the comment as unresolved
141
+ *FlatApi::ScoreApi* | [**post_score_comment**](docs/ScoreApi.md#post_score_comment) | **POST** /scores/{score}/comments | Post a new comment
142
+ *FlatApi::ScoreApi* | [**remove_score_collaborator**](docs/ScoreApi.md#remove_score_collaborator) | **DELETE** /scores/{score}/collaborators/{collaborator} | Delete a collaborator
143
+ *FlatApi::ScoreApi* | [**update_score_comment**](docs/ScoreApi.md#update_score_comment) | **PUT** /scores/{score}/comments/{comment} | Update an existing comment
144
+ *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
145
+ *FlatApi::UserApi* | [**ger_user_likes**](docs/UserApi.md#ger_user_likes) | **GET** /users/{user}/likes | List liked scores
146
+ *FlatApi::UserApi* | [**get_user**](docs/UserApi.md#get_user) | **GET** /users/{user} | Get a public user profile
147
+ *FlatApi::UserApi* | [**get_user_scores**](docs/UserApi.md#get_user_scores) | **GET** /users/{user}/scores | List user's scores
148
+
149
+
150
+ ## Documentation for Models
151
+
152
+ - [FlatApi::Assignment](docs/Assignment.md)
153
+ - [FlatApi::AssignmentCopy](docs/AssignmentCopy.md)
154
+ - [FlatApi::AssignmentCreation](docs/AssignmentCreation.md)
155
+ - [FlatApi::AssignmentSubmission](docs/AssignmentSubmission.md)
156
+ - [FlatApi::AssignmentSubmissionUpdate](docs/AssignmentSubmissionUpdate.md)
157
+ - [FlatApi::ClassAttachmentCreation](docs/ClassAttachmentCreation.md)
158
+ - [FlatApi::ClassCreation](docs/ClassCreation.md)
159
+ - [FlatApi::ClassDetails](docs/ClassDetails.md)
160
+ - [FlatApi::ClassDetailsCanvas](docs/ClassDetailsCanvas.md)
161
+ - [FlatApi::ClassDetailsClever](docs/ClassDetailsClever.md)
162
+ - [FlatApi::ClassDetailsGoogleClassroom](docs/ClassDetailsGoogleClassroom.md)
163
+ - [FlatApi::ClassDetailsGoogleDrive](docs/ClassDetailsGoogleDrive.md)
164
+ - [FlatApi::ClassDetailsLti](docs/ClassDetailsLti.md)
165
+ - [FlatApi::ClassRoles](docs/ClassRoles.md)
166
+ - [FlatApi::ClassState](docs/ClassState.md)
167
+ - [FlatApi::ClassUpdate](docs/ClassUpdate.md)
168
+ - [FlatApi::FlatErrorResponse](docs/FlatErrorResponse.md)
169
+ - [FlatApi::FlatLocales](docs/FlatLocales.md)
170
+ - [FlatApi::GoogleClassroomCoursework](docs/GoogleClassroomCoursework.md)
171
+ - [FlatApi::GoogleClassroomSubmission](docs/GoogleClassroomSubmission.md)
172
+ - [FlatApi::Group](docs/Group.md)
173
+ - [FlatApi::GroupDetails](docs/GroupDetails.md)
174
+ - [FlatApi::GroupType](docs/GroupType.md)
175
+ - [FlatApi::LicenseMode](docs/LicenseMode.md)
176
+ - [FlatApi::LicenseSources](docs/LicenseSources.md)
177
+ - [FlatApi::LmsName](docs/LmsName.md)
178
+ - [FlatApi::LtiCredentials](docs/LtiCredentials.md)
179
+ - [FlatApi::LtiCredentialsCreation](docs/LtiCredentialsCreation.md)
180
+ - [FlatApi::MediaAttachment](docs/MediaAttachment.md)
181
+ - [FlatApi::MediaScoreSharingMode](docs/MediaScoreSharingMode.md)
182
+ - [FlatApi::OrganizationInvitation](docs/OrganizationInvitation.md)
183
+ - [FlatApi::OrganizationInvitationCreation](docs/OrganizationInvitationCreation.md)
184
+ - [FlatApi::OrganizationRoles](docs/OrganizationRoles.md)
185
+ - [FlatApi::ScoreCollaborator](docs/ScoreCollaborator.md)
186
+ - [FlatApi::ScoreCollaboratorCreation](docs/ScoreCollaboratorCreation.md)
187
+ - [FlatApi::ScoreComment](docs/ScoreComment.md)
188
+ - [FlatApi::ScoreCommentContext](docs/ScoreCommentContext.md)
189
+ - [FlatApi::ScoreCommentCreation](docs/ScoreCommentCreation.md)
190
+ - [FlatApi::ScoreCommentUpdate](docs/ScoreCommentUpdate.md)
191
+ - [FlatApi::ScoreCommentsCounts](docs/ScoreCommentsCounts.md)
192
+ - [FlatApi::ScoreCreation](docs/ScoreCreation.md)
193
+ - [FlatApi::ScoreCreationType](docs/ScoreCreationType.md)
194
+ - [FlatApi::ScoreData](docs/ScoreData.md)
195
+ - [FlatApi::ScoreDataEncoding](docs/ScoreDataEncoding.md)
196
+ - [FlatApi::ScoreFork](docs/ScoreFork.md)
197
+ - [FlatApi::ScoreLicense](docs/ScoreLicense.md)
198
+ - [FlatApi::ScoreLikesCounts](docs/ScoreLikesCounts.md)
199
+ - [FlatApi::ScoreModification](docs/ScoreModification.md)
200
+ - [FlatApi::ScorePrivacy](docs/ScorePrivacy.md)
201
+ - [FlatApi::ScoreRevision](docs/ScoreRevision.md)
202
+ - [FlatApi::ScoreRevisionCreation](docs/ScoreRevisionCreation.md)
203
+ - [FlatApi::ScoreRevisionStatistics](docs/ScoreRevisionStatistics.md)
204
+ - [FlatApi::ScoreRights](docs/ScoreRights.md)
205
+ - [FlatApi::ScoreSource](docs/ScoreSource.md)
206
+ - [FlatApi::ScoreSummary](docs/ScoreSummary.md)
207
+ - [FlatApi::ScoreTrack](docs/ScoreTrack.md)
208
+ - [FlatApi::ScoreTrackCreation](docs/ScoreTrackCreation.md)
209
+ - [FlatApi::ScoreTrackPoint](docs/ScoreTrackPoint.md)
210
+ - [FlatApi::ScoreTrackState](docs/ScoreTrackState.md)
211
+ - [FlatApi::ScoreTrackType](docs/ScoreTrackType.md)
212
+ - [FlatApi::ScoreTrackUpdate](docs/ScoreTrackUpdate.md)
213
+ - [FlatApi::ScoreViewsCounts](docs/ScoreViewsCounts.md)
214
+ - [FlatApi::UserAdminUpdate](docs/UserAdminUpdate.md)
215
+ - [FlatApi::UserBasics](docs/UserBasics.md)
216
+ - [FlatApi::UserCreation](docs/UserCreation.md)
217
+ - [FlatApi::UserDetailsAdminLicense](docs/UserDetailsAdminLicense.md)
218
+ - [FlatApi::UserInstruments](docs/UserInstruments.md)
219
+ - [FlatApi::ScoreDetails](docs/ScoreDetails.md)
220
+ - [FlatApi::UserPublicSummary](docs/UserPublicSummary.md)
221
+ - [FlatApi::UserDetailsAdmin](docs/UserDetailsAdmin.md)
222
+ - [FlatApi::UserPublic](docs/UserPublic.md)
223
+ - [FlatApi::UserDetails](docs/UserDetails.md)
224
+
225
+
226
+ ## Documentation for Authorization
227
+
228
+
229
+ ### OAuth2
230
+
231
+ - **Type**: OAuth
232
+ - **Flow**: accessCode
233
+ - **Authorization URL**: https://flat.io/auth/oauth
234
+ - **Scopes**:
235
+ - 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.
236
+ - account.education_profile: Provides access to the basic person's education profile and public organization information.
237
+ - scores.readonly: Allows read-only access to all a user's scores. You won't need this scope to read public scores.
238
+ - scores.social: Allow to post comments and like scores
239
+ - scores: Full, permissive scope to access all of a user's scores.
240
+ - edu.classes: Full, permissive scope to manage the classes.
241
+ - edu.classes.readonly: Read-only access to the classes.
242
+ - edu.assignments: Read-write access to the assignments and submissions.
243
+ - edu.assignments.readonly: Read-only access to the assignments and submissions.
244
+ - edu.admin: Full, permissive scope to manage all the admin of an organization.
245
+ - edu.admin.lti: Access and manage the LTI Credentials for an organization.
246
+ - edu.admin.lti.readonly: Read-only access to the LTI Credentials of an organization.
247
+ - edu.admin.users: Access and manage the users and invitations of the organization.
248
+ - edu.admin.users.readonly: Read-only access to the users and invitations of the organization.
@@ -0,0 +1,8 @@
1
+ begin
2
+ require 'rspec/core/rake_task'
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+ task default: :spec
6
+ rescue LoadError
7
+ # no rspec available
8
+ end
@@ -0,0 +1,55 @@
1
+ # FlatApi::AccountApi
2
+
3
+ All URIs are relative to *https://api.flat.io/v2*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**get_authenticated_user**](AccountApi.md#get_authenticated_user) | **GET** /me | Get current user profile
8
+
9
+
10
+ # **get_authenticated_user**
11
+ > UserDetails get_authenticated_user
12
+
13
+ Get current user profile
14
+
15
+ Get details about the current authenticated User.
16
+
17
+ ### Example
18
+ ```ruby
19
+ # load the gem
20
+ require 'flat_api'
21
+ # setup authorization
22
+ FlatApi.configure do |config|
23
+ # Configure OAuth2 access token for authorization: OAuth2
24
+ config.access_token = 'YOUR ACCESS TOKEN'
25
+ end
26
+
27
+ api_instance = FlatApi::AccountApi.new
28
+
29
+ begin
30
+ #Get current user profile
31
+ result = api_instance.get_authenticated_user
32
+ p result
33
+ rescue FlatApi::ApiError => e
34
+ puts "Exception when calling AccountApi->get_authenticated_user: #{e}"
35
+ end
36
+ ```
37
+
38
+ ### Parameters
39
+ This endpoint does not need any parameter.
40
+
41
+ ### Return type
42
+
43
+ [**UserDetails**](UserDetails.md)
44
+
45
+ ### Authorization
46
+
47
+ [OAuth2](../README.md#OAuth2)
48
+
49
+ ### HTTP request headers
50
+
51
+ - **Content-Type**: application/json
52
+ - **Accept**: application/json
53
+
54
+
55
+
@@ -0,0 +1,18 @@
1
+ # FlatApi::Assignment
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **state** | **String** | State of the assignment | [optional]
7
+ **title** | **String** | Title of the assignment | [optional]
8
+ **classroom** | **String** | The unique identifier of the class where this assignment was posted | [optional]
9
+ **description** | **String** | Description and content of the assignment | [optional]
10
+ **attachments** | [**Array<MediaAttachment>**](MediaAttachment.md) | | [optional]
11
+ **submissions** | [**Array<AssignmentSubmission>**](AssignmentSubmission.md) | | [optional]
12
+ **creator** | **String** | The User unique identifier of the creator of this assignment | [optional]
13
+ **creation_date** | **DateTime** | The creation date of this assignment | [optional]
14
+ **scheduled_date** | **DateTime** | The publication (scheduled) date of the assignment. If this one is specified, the assignment will only be listed to the teachers of the class. | [optional]
15
+ **due_date** | **DateTime** | The due date of this assignment, late submissions will be marked as paste due. | [optional]
16
+ **google_classroom** | [**GoogleClassroomCoursework**](GoogleClassroomCoursework.md) | | [optional]
17
+
18
+
@@ -0,0 +1,8 @@
1
+ # FlatApi::AssignmentCopy
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **classroom** | **String** | The destination classroom where the assignment will be copied |
7
+
8
+
@@ -0,0 +1,12 @@
1
+ # FlatApi::AssignmentCreation
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **title** | **String** | Title of the assignment | [optional]
7
+ **description** | **String** | Description and content of the assignment | [optional]
8
+ **attachments** | [**Array<ClassAttachmentCreation>**](ClassAttachmentCreation.md) | | [optional]
9
+ **due_date** | **DateTime** | The due date of this assignment, late submissions will be marked as paste due. If not set, the assignment won't have a due date. | [optional]
10
+ **scheduled_date** | **DateTime** | The publication (scheduled) date of the assignment. If this one is specified, the assignment will only be listed to the teachers of the class. | [optional]
11
+
12
+
@@ -0,0 +1,19 @@
1
+ # FlatApi::AssignmentSubmission
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **id** | **String** | Unique identifier of the submission | [optional]
7
+ **classroom** | **String** | Unique identifier of the classroom where the assignment was posted | [optional]
8
+ **assignment** | **String** | Unique identifier of the assignment | [optional]
9
+ **creator** | **String** | The User identifier of the student who created the submission | [optional]
10
+ **creation_date** | **String** | The date when the submission was created | [optional]
11
+ **attachments** | [**Array<MediaAttachment>**](MediaAttachment.md) | | [optional]
12
+ **submission_date** | **String** | The date when the student submitted his work | [optional]
13
+ **student_comment** | **String** | An optionnal comment sent by the student when submitting his work | [optional]
14
+ **return_date** | **String** | The date when the teacher returned the work | [optional]
15
+ **return_feedback** | **String** | The feedback associated with the return | [optional]
16
+ **return_creator** | **String** | The User unique identifier of the teacher who returned the submission | [optional]
17
+ **google_classroom** | [**GoogleClassroomSubmission**](GoogleClassroomSubmission.md) | | [optional]
18
+
19
+
@@ -0,0 +1,11 @@
1
+ # FlatApi::AssignmentSubmissionUpdate
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **attachments** | [**Array<ClassAttachmentCreation>**](ClassAttachmentCreation.md) | | [optional]
7
+ **student_comment** | **String** | An optionnal comment sent by the student when submitting his work | [optional]
8
+ **submit** | **BOOLEAN** | If `true`, the submission will be marked as done | [optional]
9
+ **return_feedback** | **String** | The feedback associated with the return | [optional]
10
+
11
+
@@ -0,0 +1,1051 @@
1
+ # FlatApi::ClassApi
2
+
3
+ All URIs are relative to *https://api.flat.io/v2*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**activate_class**](ClassApi.md#activate_class) | **POST** /classes/{class}/activate | Activate the class
8
+ [**add_class_user**](ClassApi.md#add_class_user) | **PUT** /classes/{class}/users/{user} | Add a user to the class
9
+ [**archive_class**](ClassApi.md#archive_class) | **POST** /classes/{class}/archive | Archive the class
10
+ [**copy_assignment**](ClassApi.md#copy_assignment) | **POST** /classes/{class}/assignments/{assignment}/copy | Copy an assignment
11
+ [**create_assignment**](ClassApi.md#create_assignment) | **POST** /classes/{class}/assignments | Assignment creation
12
+ [**create_class**](ClassApi.md#create_class) | **POST** /classes | Create a new class
13
+ [**create_submission**](ClassApi.md#create_submission) | **PUT** /classes/{class}/assignments/{assignment}/submissions | Create or edit a submission
14
+ [**delete_class_user**](ClassApi.md#delete_class_user) | **DELETE** /classes/{class}/users/{user} | Remove a user from the class
15
+ [**edit_submission**](ClassApi.md#edit_submission) | **PUT** /classes/{class}/assignments/{assignment}/submissions/{submission} | Edit a submission
16
+ [**enroll_class**](ClassApi.md#enroll_class) | **POST** /classes/enroll/{enrollmentCode} | Join a class
17
+ [**get_class**](ClassApi.md#get_class) | **GET** /classes/{class} | Get the details of a single class
18
+ [**get_score_submissions**](ClassApi.md#get_score_submissions) | **GET** /scores/{score}/submissions | List submissions related to the score
19
+ [**get_submission**](ClassApi.md#get_submission) | **GET** /classes/{class}/assignments/{assignment}/submissions/{submission} | Get a student submission
20
+ [**get_submissions**](ClassApi.md#get_submissions) | **GET** /classes/{class}/assignments/{assignment}/submissions | List the students' submissions
21
+ [**list_assignments**](ClassApi.md#list_assignments) | **GET** /classes/{class}/assignments | Assignments listing
22
+ [**list_class_student_submissions**](ClassApi.md#list_class_student_submissions) | **GET** /classes/{class}/students/{user}/submissions | List the submissions for a student
23
+ [**list_classes**](ClassApi.md#list_classes) | **GET** /classes | List the classes available for the current user
24
+ [**unarchive_class**](ClassApi.md#unarchive_class) | **DELETE** /classes/{class}/archive | Unarchive the class
25
+ [**update_class**](ClassApi.md#update_class) | **PUT** /classes/{class} | Update the class
26
+
27
+
28
+ # **activate_class**
29
+ > ClassDetails activate_class(_class)
30
+
31
+ Activate the class
32
+
33
+ Mark the class as `active`. This is mainly used for classes synchronized from Clever that are initially with an `inactive` state and hidden in the UI.
34
+
35
+ ### Example
36
+ ```ruby
37
+ # load the gem
38
+ require 'flat_api'
39
+ # setup authorization
40
+ FlatApi.configure do |config|
41
+ # Configure OAuth2 access token for authorization: OAuth2
42
+ config.access_token = 'YOUR ACCESS TOKEN'
43
+ end
44
+
45
+ api_instance = FlatApi::ClassApi.new
46
+
47
+ _class = "_class_example" # String | Unique identifier of the class
48
+
49
+
50
+ begin
51
+ #Activate the class
52
+ result = api_instance.activate_class(_class)
53
+ p result
54
+ rescue FlatApi::ApiError => e
55
+ puts "Exception when calling ClassApi->activate_class: #{e}"
56
+ end
57
+ ```
58
+
59
+ ### Parameters
60
+
61
+ Name | Type | Description | Notes
62
+ ------------- | ------------- | ------------- | -------------
63
+ **_class** | **String**| Unique identifier of the class |
64
+
65
+ ### Return type
66
+
67
+ [**ClassDetails**](ClassDetails.md)
68
+
69
+ ### Authorization
70
+
71
+ [OAuth2](../README.md#OAuth2)
72
+
73
+ ### HTTP request headers
74
+
75
+ - **Content-Type**: application/json
76
+ - **Accept**: application/json
77
+
78
+
79
+
80
+ # **add_class_user**
81
+ > add_class_user(_class, user)
82
+
83
+ Add a user to the class
84
+
85
+ This method can be used by a teacher of the class to enroll another Flat user into the class. Only users that are part of your Organization can be enrolled in a class of this same Organization. When enrolling a user in the class, Flat will automatically add this user to the corresponding Class group, based on this role in the Organization.
86
+
87
+ ### Example
88
+ ```ruby
89
+ # load the gem
90
+ require 'flat_api'
91
+ # setup authorization
92
+ FlatApi.configure do |config|
93
+ # Configure OAuth2 access token for authorization: OAuth2
94
+ config.access_token = 'YOUR ACCESS TOKEN'
95
+ end
96
+
97
+ api_instance = FlatApi::ClassApi.new
98
+
99
+ _class = "_class_example" # String | Unique identifier of the class
100
+
101
+ user = "user_example" # String | Unique identifier of the user
102
+
103
+
104
+ begin
105
+ #Add a user to the class
106
+ api_instance.add_class_user(_class, user)
107
+ rescue FlatApi::ApiError => e
108
+ puts "Exception when calling ClassApi->add_class_user: #{e}"
109
+ end
110
+ ```
111
+
112
+ ### Parameters
113
+
114
+ Name | Type | Description | Notes
115
+ ------------- | ------------- | ------------- | -------------
116
+ **_class** | **String**| Unique identifier of the class |
117
+ **user** | **String**| Unique identifier of the user |
118
+
119
+ ### Return type
120
+
121
+ nil (empty response body)
122
+
123
+ ### Authorization
124
+
125
+ [OAuth2](../README.md#OAuth2)
126
+
127
+ ### HTTP request headers
128
+
129
+ - **Content-Type**: application/json
130
+ - **Accept**: application/json
131
+
132
+
133
+
134
+ # **archive_class**
135
+ > ClassDetails archive_class(_class)
136
+
137
+ Archive the class
138
+
139
+ Mark the class as `archived`. When this course is synchronized with another app, like Google Classroom, this state will be automatically be updated.
140
+
141
+ ### Example
142
+ ```ruby
143
+ # load the gem
144
+ require 'flat_api'
145
+ # setup authorization
146
+ FlatApi.configure do |config|
147
+ # Configure OAuth2 access token for authorization: OAuth2
148
+ config.access_token = 'YOUR ACCESS TOKEN'
149
+ end
150
+
151
+ api_instance = FlatApi::ClassApi.new
152
+
153
+ _class = "_class_example" # String | Unique identifier of the class
154
+
155
+
156
+ begin
157
+ #Archive the class
158
+ result = api_instance.archive_class(_class)
159
+ p result
160
+ rescue FlatApi::ApiError => e
161
+ puts "Exception when calling ClassApi->archive_class: #{e}"
162
+ end
163
+ ```
164
+
165
+ ### Parameters
166
+
167
+ Name | Type | Description | Notes
168
+ ------------- | ------------- | ------------- | -------------
169
+ **_class** | **String**| Unique identifier of the class |
170
+
171
+ ### Return type
172
+
173
+ [**ClassDetails**](ClassDetails.md)
174
+
175
+ ### Authorization
176
+
177
+ [OAuth2](../README.md#OAuth2)
178
+
179
+ ### HTTP request headers
180
+
181
+ - **Content-Type**: application/json
182
+ - **Accept**: application/json
183
+
184
+
185
+
186
+ # **copy_assignment**
187
+ > Assignment copy_assignment(_class, assignment, body)
188
+
189
+ Copy an assignment
190
+
191
+ Copy an assignment to a specified class. If the original assignment has a due date in the past, this new assingment will be created without a due date. If the new class is synchronized with an external app (e.g. Google Classroom), the copied assignment will also be posted on the external app.
192
+
193
+ ### Example
194
+ ```ruby
195
+ # load the gem
196
+ require 'flat_api'
197
+ # setup authorization
198
+ FlatApi.configure do |config|
199
+ # Configure OAuth2 access token for authorization: OAuth2
200
+ config.access_token = 'YOUR ACCESS TOKEN'
201
+ end
202
+
203
+ api_instance = FlatApi::ClassApi.new
204
+
205
+ _class = "_class_example" # String | Unique identifier of the class
206
+
207
+ assignment = "assignment_example" # String | Unique identifier of the assignment
208
+
209
+ body = FlatApi::AssignmentCopy.new # AssignmentCopy |
210
+
211
+
212
+ begin
213
+ #Copy an assignment
214
+ result = api_instance.copy_assignment(_class, assignment, body)
215
+ p result
216
+ rescue FlatApi::ApiError => e
217
+ puts "Exception when calling ClassApi->copy_assignment: #{e}"
218
+ end
219
+ ```
220
+
221
+ ### Parameters
222
+
223
+ Name | Type | Description | Notes
224
+ ------------- | ------------- | ------------- | -------------
225
+ **_class** | **String**| Unique identifier of the class |
226
+ **assignment** | **String**| Unique identifier of the assignment |
227
+ **body** | [**AssignmentCopy**](AssignmentCopy.md)| |
228
+
229
+ ### Return type
230
+
231
+ [**Assignment**](Assignment.md)
232
+
233
+ ### Authorization
234
+
235
+ [OAuth2](../README.md#OAuth2)
236
+
237
+ ### HTTP request headers
238
+
239
+ - **Content-Type**: application/json
240
+ - **Accept**: application/json
241
+
242
+
243
+
244
+ # **create_assignment**
245
+ > Assignment create_assignment(_class, opts)
246
+
247
+ Assignment creation
248
+
249
+ Use this method as a teacher to create and post a new assignment to a class. If the class is synchronized with Google Classroom, the assignment will be automatically posted to your Classroom course.
250
+
251
+ ### Example
252
+ ```ruby
253
+ # load the gem
254
+ require 'flat_api'
255
+ # setup authorization
256
+ FlatApi.configure do |config|
257
+ # Configure OAuth2 access token for authorization: OAuth2
258
+ config.access_token = 'YOUR ACCESS TOKEN'
259
+ end
260
+
261
+ api_instance = FlatApi::ClassApi.new
262
+
263
+ _class = "_class_example" # String | Unique identifier of the class
264
+
265
+ opts = {
266
+ body: FlatApi::AssignmentCreation.new # AssignmentCreation |
267
+ }
268
+
269
+ begin
270
+ #Assignment creation
271
+ result = api_instance.create_assignment(_class, opts)
272
+ p result
273
+ rescue FlatApi::ApiError => e
274
+ puts "Exception when calling ClassApi->create_assignment: #{e}"
275
+ end
276
+ ```
277
+
278
+ ### Parameters
279
+
280
+ Name | Type | Description | Notes
281
+ ------------- | ------------- | ------------- | -------------
282
+ **_class** | **String**| Unique identifier of the class |
283
+ **body** | [**AssignmentCreation**](AssignmentCreation.md)| | [optional]
284
+
285
+ ### Return type
286
+
287
+ [**Assignment**](Assignment.md)
288
+
289
+ ### Authorization
290
+
291
+ [OAuth2](../README.md#OAuth2)
292
+
293
+ ### HTTP request headers
294
+
295
+ - **Content-Type**: application/json
296
+ - **Accept**: application/json
297
+
298
+
299
+
300
+ # **create_class**
301
+ > ClassDetails create_class(body)
302
+
303
+ Create a new class
304
+
305
+ Classrooms on Flat allow you to create activities with assignments and post content to a specific group. When creating a class, Flat automatically creates two groups: one for the teachers of the course, one for the students. The creator of this class is automatically added to the teachers group. If the classsroom is synchronized with another application like Google Classroom, some of the meta information will automatically be updated. You can add users to this class using `POST /classes/{class}/users/{user}`, they will automatically added to the group based on their role on Flat. Users can also enroll themselves to this class using `POST /classes/enroll/{enrollmentCode}` and the `enrollmentCode` returned in the `ClassDetails` response.
306
+
307
+ ### Example
308
+ ```ruby
309
+ # load the gem
310
+ require 'flat_api'
311
+ # setup authorization
312
+ FlatApi.configure do |config|
313
+ # Configure OAuth2 access token for authorization: OAuth2
314
+ config.access_token = 'YOUR ACCESS TOKEN'
315
+ end
316
+
317
+ api_instance = FlatApi::ClassApi.new
318
+
319
+ body = FlatApi::ClassCreation.new # ClassCreation |
320
+
321
+
322
+ begin
323
+ #Create a new class
324
+ result = api_instance.create_class(body)
325
+ p result
326
+ rescue FlatApi::ApiError => e
327
+ puts "Exception when calling ClassApi->create_class: #{e}"
328
+ end
329
+ ```
330
+
331
+ ### Parameters
332
+
333
+ Name | Type | Description | Notes
334
+ ------------- | ------------- | ------------- | -------------
335
+ **body** | [**ClassCreation**](ClassCreation.md)| |
336
+
337
+ ### Return type
338
+
339
+ [**ClassDetails**](ClassDetails.md)
340
+
341
+ ### Authorization
342
+
343
+ [OAuth2](../README.md#OAuth2)
344
+
345
+ ### HTTP request headers
346
+
347
+ - **Content-Type**: application/json
348
+ - **Accept**: application/json
349
+
350
+
351
+
352
+ # **create_submission**
353
+ > AssignmentSubmission create_submission(_class, assignment, body)
354
+
355
+ Create or edit a submission
356
+
357
+ Use this method as a student to create, update and submit a submission related to an assignment. Students can only set `attachments`, `studentComment` and `submit`. Teachers can use `PUT /classes/{class}/assignments/{assignment}/submissions/{submission}` to update a submission by id.
358
+
359
+ ### Example
360
+ ```ruby
361
+ # load the gem
362
+ require 'flat_api'
363
+ # setup authorization
364
+ FlatApi.configure do |config|
365
+ # Configure OAuth2 access token for authorization: OAuth2
366
+ config.access_token = 'YOUR ACCESS TOKEN'
367
+ end
368
+
369
+ api_instance = FlatApi::ClassApi.new
370
+
371
+ _class = "_class_example" # String | Unique identifier of the class
372
+
373
+ assignment = "assignment_example" # String | Unique identifier of the assignment
374
+
375
+ body = FlatApi::AssignmentSubmissionUpdate.new # AssignmentSubmissionUpdate |
376
+
377
+
378
+ begin
379
+ #Create or edit a submission
380
+ result = api_instance.create_submission(_class, assignment, body)
381
+ p result
382
+ rescue FlatApi::ApiError => e
383
+ puts "Exception when calling ClassApi->create_submission: #{e}"
384
+ end
385
+ ```
386
+
387
+ ### Parameters
388
+
389
+ Name | Type | Description | Notes
390
+ ------------- | ------------- | ------------- | -------------
391
+ **_class** | **String**| Unique identifier of the class |
392
+ **assignment** | **String**| Unique identifier of the assignment |
393
+ **body** | [**AssignmentSubmissionUpdate**](AssignmentSubmissionUpdate.md)| |
394
+
395
+ ### Return type
396
+
397
+ [**AssignmentSubmission**](AssignmentSubmission.md)
398
+
399
+ ### Authorization
400
+
401
+ [OAuth2](../README.md#OAuth2)
402
+
403
+ ### HTTP request headers
404
+
405
+ - **Content-Type**: application/json
406
+ - **Accept**: application/json
407
+
408
+
409
+
410
+ # **delete_class_user**
411
+ > delete_class_user(_class, user)
412
+
413
+ Remove a user from the class
414
+
415
+ This method can be used by a teacher to remove a user from the class, or by a student to leave the classroom. Warning: Removing a user from the class will remove the associated resources, including the submissions and feedback related to these submissions.
416
+
417
+ ### Example
418
+ ```ruby
419
+ # load the gem
420
+ require 'flat_api'
421
+ # setup authorization
422
+ FlatApi.configure do |config|
423
+ # Configure OAuth2 access token for authorization: OAuth2
424
+ config.access_token = 'YOUR ACCESS TOKEN'
425
+ end
426
+
427
+ api_instance = FlatApi::ClassApi.new
428
+
429
+ _class = "_class_example" # String | Unique identifier of the class
430
+
431
+ user = "user_example" # String | Unique identifier of the user
432
+
433
+
434
+ begin
435
+ #Remove a user from the class
436
+ api_instance.delete_class_user(_class, user)
437
+ rescue FlatApi::ApiError => e
438
+ puts "Exception when calling ClassApi->delete_class_user: #{e}"
439
+ end
440
+ ```
441
+
442
+ ### Parameters
443
+
444
+ Name | Type | Description | Notes
445
+ ------------- | ------------- | ------------- | -------------
446
+ **_class** | **String**| Unique identifier of the class |
447
+ **user** | **String**| Unique identifier of the user |
448
+
449
+ ### Return type
450
+
451
+ nil (empty response body)
452
+
453
+ ### Authorization
454
+
455
+ [OAuth2](../README.md#OAuth2)
456
+
457
+ ### HTTP request headers
458
+
459
+ - **Content-Type**: application/json
460
+ - **Accept**: application/json
461
+
462
+
463
+
464
+ # **edit_submission**
465
+ > AssignmentSubmission edit_submission(_class, assignment, submission, body)
466
+
467
+ Edit a submission
468
+
469
+ Use this method as a teacher to update the different submission and give feedback. Teachers can only set `returnFeedback`
470
+
471
+ ### Example
472
+ ```ruby
473
+ # load the gem
474
+ require 'flat_api'
475
+ # setup authorization
476
+ FlatApi.configure do |config|
477
+ # Configure OAuth2 access token for authorization: OAuth2
478
+ config.access_token = 'YOUR ACCESS TOKEN'
479
+ end
480
+
481
+ api_instance = FlatApi::ClassApi.new
482
+
483
+ _class = "_class_example" # String | Unique identifier of the class
484
+
485
+ assignment = "assignment_example" # String | Unique identifier of the assignment
486
+
487
+ submission = "submission_example" # String | Unique identifier of the submission
488
+
489
+ body = FlatApi::AssignmentSubmissionUpdate.new # AssignmentSubmissionUpdate |
490
+
491
+
492
+ begin
493
+ #Edit a submission
494
+ result = api_instance.edit_submission(_class, assignment, submission, body)
495
+ p result
496
+ rescue FlatApi::ApiError => e
497
+ puts "Exception when calling ClassApi->edit_submission: #{e}"
498
+ end
499
+ ```
500
+
501
+ ### Parameters
502
+
503
+ Name | Type | Description | Notes
504
+ ------------- | ------------- | ------------- | -------------
505
+ **_class** | **String**| Unique identifier of the class |
506
+ **assignment** | **String**| Unique identifier of the assignment |
507
+ **submission** | **String**| Unique identifier of the submission |
508
+ **body** | [**AssignmentSubmissionUpdate**](AssignmentSubmissionUpdate.md)| |
509
+
510
+ ### Return type
511
+
512
+ [**AssignmentSubmission**](AssignmentSubmission.md)
513
+
514
+ ### Authorization
515
+
516
+ [OAuth2](../README.md#OAuth2)
517
+
518
+ ### HTTP request headers
519
+
520
+ - **Content-Type**: application/json
521
+ - **Accept**: application/json
522
+
523
+
524
+
525
+ # **enroll_class**
526
+ > ClassDetails enroll_class(enrollment_code)
527
+
528
+ Join a class
529
+
530
+ Use this method to join a class using an enrollment code given one of the teacher of this class. This code is also available in the `ClassDetails` returned to the teachers when creating the class or listing / fetching a specific class. Flat will automatically add the user to the corresponding class group based on this role in the organization.
531
+
532
+ ### Example
533
+ ```ruby
534
+ # load the gem
535
+ require 'flat_api'
536
+ # setup authorization
537
+ FlatApi.configure do |config|
538
+ # Configure OAuth2 access token for authorization: OAuth2
539
+ config.access_token = 'YOUR ACCESS TOKEN'
540
+ end
541
+
542
+ api_instance = FlatApi::ClassApi.new
543
+
544
+ enrollment_code = "enrollment_code_example" # String | The enrollment code, available to the teacher in `ClassDetails`
545
+
546
+
547
+ begin
548
+ #Join a class
549
+ result = api_instance.enroll_class(enrollment_code)
550
+ p result
551
+ rescue FlatApi::ApiError => e
552
+ puts "Exception when calling ClassApi->enroll_class: #{e}"
553
+ end
554
+ ```
555
+
556
+ ### Parameters
557
+
558
+ Name | Type | Description | Notes
559
+ ------------- | ------------- | ------------- | -------------
560
+ **enrollment_code** | **String**| The enrollment code, available to the teacher in `ClassDetails` |
561
+
562
+ ### Return type
563
+
564
+ [**ClassDetails**](ClassDetails.md)
565
+
566
+ ### Authorization
567
+
568
+ [OAuth2](../README.md#OAuth2)
569
+
570
+ ### HTTP request headers
571
+
572
+ - **Content-Type**: application/json
573
+ - **Accept**: application/json
574
+
575
+
576
+
577
+ # **get_class**
578
+ > ClassDetails get_class(_class)
579
+
580
+ Get the details of a single class
581
+
582
+ ### Example
583
+ ```ruby
584
+ # load the gem
585
+ require 'flat_api'
586
+ # setup authorization
587
+ FlatApi.configure do |config|
588
+ # Configure OAuth2 access token for authorization: OAuth2
589
+ config.access_token = 'YOUR ACCESS TOKEN'
590
+ end
591
+
592
+ api_instance = FlatApi::ClassApi.new
593
+
594
+ _class = "_class_example" # String | Unique identifier of the class
595
+
596
+
597
+ begin
598
+ #Get the details of a single class
599
+ result = api_instance.get_class(_class)
600
+ p result
601
+ rescue FlatApi::ApiError => e
602
+ puts "Exception when calling ClassApi->get_class: #{e}"
603
+ end
604
+ ```
605
+
606
+ ### Parameters
607
+
608
+ Name | Type | Description | Notes
609
+ ------------- | ------------- | ------------- | -------------
610
+ **_class** | **String**| Unique identifier of the class |
611
+
612
+ ### Return type
613
+
614
+ [**ClassDetails**](ClassDetails.md)
615
+
616
+ ### Authorization
617
+
618
+ [OAuth2](../README.md#OAuth2)
619
+
620
+ ### HTTP request headers
621
+
622
+ - **Content-Type**: application/json
623
+ - **Accept**: application/json
624
+
625
+
626
+
627
+ # **get_score_submissions**
628
+ > Array<AssignmentSubmission> get_score_submissions(score, )
629
+
630
+ List submissions related to the score
631
+
632
+ This API call will list the different assignments submissions where the score is attached. This method can be used by anyone that are part of the organization and have at least read access to the document.
633
+
634
+ ### Example
635
+ ```ruby
636
+ # load the gem
637
+ require 'flat_api'
638
+ # setup authorization
639
+ FlatApi.configure do |config|
640
+ # Configure OAuth2 access token for authorization: OAuth2
641
+ config.access_token = 'YOUR ACCESS TOKEN'
642
+ end
643
+
644
+ api_instance = FlatApi::ClassApi.new
645
+
646
+ score = "score_example" # String | Unique identifier of the score document. This can be a Flat Score unique identifier (i.e. `ScoreDetails.id`) or, if the score is also a Google Drive file, the Drive file unique identifier prefixed with `drive-` (e.g. `drive-0B000000000`).
647
+
648
+
649
+ begin
650
+ #List submissions related to the score
651
+ result = api_instance.get_score_submissions(score, )
652
+ p result
653
+ rescue FlatApi::ApiError => e
654
+ puts "Exception when calling ClassApi->get_score_submissions: #{e}"
655
+ end
656
+ ```
657
+
658
+ ### Parameters
659
+
660
+ Name | Type | Description | Notes
661
+ ------------- | ------------- | ------------- | -------------
662
+ **score** | **String**| Unique identifier of the score document. This can be a Flat Score unique identifier (i.e. `ScoreDetails.id`) or, if the score is also a Google Drive file, the Drive file unique identifier prefixed with `drive-` (e.g. `drive-0B000000000`). |
663
+
664
+ ### Return type
665
+
666
+ [**Array<AssignmentSubmission>**](AssignmentSubmission.md)
667
+
668
+ ### Authorization
669
+
670
+ [OAuth2](../README.md#OAuth2)
671
+
672
+ ### HTTP request headers
673
+
674
+ - **Content-Type**: application/json
675
+ - **Accept**: application/json
676
+
677
+
678
+
679
+ # **get_submission**
680
+ > AssignmentSubmission get_submission(_class, assignment, submission)
681
+
682
+ Get a student submission
683
+
684
+ ### Example
685
+ ```ruby
686
+ # load the gem
687
+ require 'flat_api'
688
+ # setup authorization
689
+ FlatApi.configure do |config|
690
+ # Configure OAuth2 access token for authorization: OAuth2
691
+ config.access_token = 'YOUR ACCESS TOKEN'
692
+ end
693
+
694
+ api_instance = FlatApi::ClassApi.new
695
+
696
+ _class = "_class_example" # String | Unique identifier of the class
697
+
698
+ assignment = "assignment_example" # String | Unique identifier of the assignment
699
+
700
+ submission = "submission_example" # String | Unique identifier of the submission
701
+
702
+
703
+ begin
704
+ #Get a student submission
705
+ result = api_instance.get_submission(_class, assignment, submission)
706
+ p result
707
+ rescue FlatApi::ApiError => e
708
+ puts "Exception when calling ClassApi->get_submission: #{e}"
709
+ end
710
+ ```
711
+
712
+ ### Parameters
713
+
714
+ Name | Type | Description | Notes
715
+ ------------- | ------------- | ------------- | -------------
716
+ **_class** | **String**| Unique identifier of the class |
717
+ **assignment** | **String**| Unique identifier of the assignment |
718
+ **submission** | **String**| Unique identifier of the submission |
719
+
720
+ ### Return type
721
+
722
+ [**AssignmentSubmission**](AssignmentSubmission.md)
723
+
724
+ ### Authorization
725
+
726
+ [OAuth2](../README.md#OAuth2)
727
+
728
+ ### HTTP request headers
729
+
730
+ - **Content-Type**: application/json
731
+ - **Accept**: application/json
732
+
733
+
734
+
735
+ # **get_submissions**
736
+ > Array<AssignmentSubmission> get_submissions(_class, assignment)
737
+
738
+ List the students' submissions
739
+
740
+ ### Example
741
+ ```ruby
742
+ # load the gem
743
+ require 'flat_api'
744
+ # setup authorization
745
+ FlatApi.configure do |config|
746
+ # Configure OAuth2 access token for authorization: OAuth2
747
+ config.access_token = 'YOUR ACCESS TOKEN'
748
+ end
749
+
750
+ api_instance = FlatApi::ClassApi.new
751
+
752
+ _class = "_class_example" # String | Unique identifier of the class
753
+
754
+ assignment = "assignment_example" # String | Unique identifier of the assignment
755
+
756
+
757
+ begin
758
+ #List the students' submissions
759
+ result = api_instance.get_submissions(_class, assignment)
760
+ p result
761
+ rescue FlatApi::ApiError => e
762
+ puts "Exception when calling ClassApi->get_submissions: #{e}"
763
+ end
764
+ ```
765
+
766
+ ### Parameters
767
+
768
+ Name | Type | Description | Notes
769
+ ------------- | ------------- | ------------- | -------------
770
+ **_class** | **String**| Unique identifier of the class |
771
+ **assignment** | **String**| Unique identifier of the assignment |
772
+
773
+ ### Return type
774
+
775
+ [**Array<AssignmentSubmission>**](AssignmentSubmission.md)
776
+
777
+ ### Authorization
778
+
779
+ [OAuth2](../README.md#OAuth2)
780
+
781
+ ### HTTP request headers
782
+
783
+ - **Content-Type**: application/json
784
+ - **Accept**: application/json
785
+
786
+
787
+
788
+ # **list_assignments**
789
+ > Array<Assignment> list_assignments(_class)
790
+
791
+ Assignments listing
792
+
793
+ ### Example
794
+ ```ruby
795
+ # load the gem
796
+ require 'flat_api'
797
+ # setup authorization
798
+ FlatApi.configure do |config|
799
+ # Configure OAuth2 access token for authorization: OAuth2
800
+ config.access_token = 'YOUR ACCESS TOKEN'
801
+ end
802
+
803
+ api_instance = FlatApi::ClassApi.new
804
+
805
+ _class = "_class_example" # String | Unique identifier of the class
806
+
807
+
808
+ begin
809
+ #Assignments listing
810
+ result = api_instance.list_assignments(_class)
811
+ p result
812
+ rescue FlatApi::ApiError => e
813
+ puts "Exception when calling ClassApi->list_assignments: #{e}"
814
+ end
815
+ ```
816
+
817
+ ### Parameters
818
+
819
+ Name | Type | Description | Notes
820
+ ------------- | ------------- | ------------- | -------------
821
+ **_class** | **String**| Unique identifier of the class |
822
+
823
+ ### Return type
824
+
825
+ [**Array<Assignment>**](Assignment.md)
826
+
827
+ ### Authorization
828
+
829
+ [OAuth2](../README.md#OAuth2)
830
+
831
+ ### HTTP request headers
832
+
833
+ - **Content-Type**: application/json
834
+ - **Accept**: application/json
835
+
836
+
837
+
838
+ # **list_class_student_submissions**
839
+ > Array<AssignmentSubmission> list_class_student_submissions(_class, user)
840
+
841
+ List the submissions for a student
842
+
843
+ Use this method as a teacher to list all the assignment submissions sent by a student of the class
844
+
845
+ ### Example
846
+ ```ruby
847
+ # load the gem
848
+ require 'flat_api'
849
+ # setup authorization
850
+ FlatApi.configure do |config|
851
+ # Configure OAuth2 access token for authorization: OAuth2
852
+ config.access_token = 'YOUR ACCESS TOKEN'
853
+ end
854
+
855
+ api_instance = FlatApi::ClassApi.new
856
+
857
+ _class = "_class_example" # String | Unique identifier of the class
858
+
859
+ user = "user_example" # String | Unique identifier of the user
860
+
861
+
862
+ begin
863
+ #List the submissions for a student
864
+ result = api_instance.list_class_student_submissions(_class, user)
865
+ p result
866
+ rescue FlatApi::ApiError => e
867
+ puts "Exception when calling ClassApi->list_class_student_submissions: #{e}"
868
+ end
869
+ ```
870
+
871
+ ### Parameters
872
+
873
+ Name | Type | Description | Notes
874
+ ------------- | ------------- | ------------- | -------------
875
+ **_class** | **String**| Unique identifier of the class |
876
+ **user** | **String**| Unique identifier of the user |
877
+
878
+ ### Return type
879
+
880
+ [**Array<AssignmentSubmission>**](AssignmentSubmission.md)
881
+
882
+ ### Authorization
883
+
884
+ [OAuth2](../README.md#OAuth2)
885
+
886
+ ### HTTP request headers
887
+
888
+ - **Content-Type**: application/json
889
+ - **Accept**: application/json
890
+
891
+
892
+
893
+ # **list_classes**
894
+ > Array<ClassDetails> list_classes(opts)
895
+
896
+ List the classes available for the current user
897
+
898
+ ### Example
899
+ ```ruby
900
+ # load the gem
901
+ require 'flat_api'
902
+ # setup authorization
903
+ FlatApi.configure do |config|
904
+ # Configure OAuth2 access token for authorization: OAuth2
905
+ config.access_token = 'YOUR ACCESS TOKEN'
906
+ end
907
+
908
+ api_instance = FlatApi::ClassApi.new
909
+
910
+ opts = {
911
+ state: "active" # String | Filter the classes by state
912
+ }
913
+
914
+ begin
915
+ #List the classes available for the current user
916
+ result = api_instance.list_classes(opts)
917
+ p result
918
+ rescue FlatApi::ApiError => e
919
+ puts "Exception when calling ClassApi->list_classes: #{e}"
920
+ end
921
+ ```
922
+
923
+ ### Parameters
924
+
925
+ Name | Type | Description | Notes
926
+ ------------- | ------------- | ------------- | -------------
927
+ **state** | **String**| Filter the classes by state | [optional] [default to active]
928
+
929
+ ### Return type
930
+
931
+ [**Array<ClassDetails>**](ClassDetails.md)
932
+
933
+ ### Authorization
934
+
935
+ [OAuth2](../README.md#OAuth2)
936
+
937
+ ### HTTP request headers
938
+
939
+ - **Content-Type**: application/json
940
+ - **Accept**: application/json
941
+
942
+
943
+
944
+ # **unarchive_class**
945
+ > ClassDetails unarchive_class(_class)
946
+
947
+ Unarchive the class
948
+
949
+ Mark the class as `active`. When this course is synchronized with another app, like Google Classroom, this state will be automatically be updated.
950
+
951
+ ### Example
952
+ ```ruby
953
+ # load the gem
954
+ require 'flat_api'
955
+ # setup authorization
956
+ FlatApi.configure do |config|
957
+ # Configure OAuth2 access token for authorization: OAuth2
958
+ config.access_token = 'YOUR ACCESS TOKEN'
959
+ end
960
+
961
+ api_instance = FlatApi::ClassApi.new
962
+
963
+ _class = "_class_example" # String | Unique identifier of the class
964
+
965
+
966
+ begin
967
+ #Unarchive the class
968
+ result = api_instance.unarchive_class(_class)
969
+ p result
970
+ rescue FlatApi::ApiError => e
971
+ puts "Exception when calling ClassApi->unarchive_class: #{e}"
972
+ end
973
+ ```
974
+
975
+ ### Parameters
976
+
977
+ Name | Type | Description | Notes
978
+ ------------- | ------------- | ------------- | -------------
979
+ **_class** | **String**| Unique identifier of the class |
980
+
981
+ ### Return type
982
+
983
+ [**ClassDetails**](ClassDetails.md)
984
+
985
+ ### Authorization
986
+
987
+ [OAuth2](../README.md#OAuth2)
988
+
989
+ ### HTTP request headers
990
+
991
+ - **Content-Type**: application/json
992
+ - **Accept**: application/json
993
+
994
+
995
+
996
+ # **update_class**
997
+ > ClassDetails update_class(_class, opts)
998
+
999
+ Update the class
1000
+
1001
+ Update the meta information of the class
1002
+
1003
+ ### Example
1004
+ ```ruby
1005
+ # load the gem
1006
+ require 'flat_api'
1007
+ # setup authorization
1008
+ FlatApi.configure do |config|
1009
+ # Configure OAuth2 access token for authorization: OAuth2
1010
+ config.access_token = 'YOUR ACCESS TOKEN'
1011
+ end
1012
+
1013
+ api_instance = FlatApi::ClassApi.new
1014
+
1015
+ _class = "_class_example" # String | Unique identifier of the class
1016
+
1017
+ opts = {
1018
+ body: FlatApi::ClassUpdate.new # ClassUpdate | Details of the Class
1019
+ }
1020
+
1021
+ begin
1022
+ #Update the class
1023
+ result = api_instance.update_class(_class, opts)
1024
+ p result
1025
+ rescue FlatApi::ApiError => e
1026
+ puts "Exception when calling ClassApi->update_class: #{e}"
1027
+ end
1028
+ ```
1029
+
1030
+ ### Parameters
1031
+
1032
+ Name | Type | Description | Notes
1033
+ ------------- | ------------- | ------------- | -------------
1034
+ **_class** | **String**| Unique identifier of the class |
1035
+ **body** | [**ClassUpdate**](ClassUpdate.md)| Details of the Class | [optional]
1036
+
1037
+ ### Return type
1038
+
1039
+ [**ClassDetails**](ClassDetails.md)
1040
+
1041
+ ### Authorization
1042
+
1043
+ [OAuth2](../README.md#OAuth2)
1044
+
1045
+ ### HTTP request headers
1046
+
1047
+ - **Content-Type**: application/json
1048
+ - **Accept**: application/json
1049
+
1050
+
1051
+