Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion OPERATIONS.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"schema_version": 1,
"spec_version": "2.26.1",
"spec_version": "2.26.2",
"generator": {
"name": "php-nextgen",
"version": "7.24.0"
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.0.0
1.0.1

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep the generated user agent in sync with the package version

When this package is released as 1.0.1, its default requests will still identify themselves as Flat-SDK-PHP/1.0.0 because src/Configuration.php:103 was not updated alongside this version bump. This misattributes SDK telemetry and defeats the repository's version-tracking user-agent patch; regenerate or update the user-agent after incrementing VERSION.

Useful? React with 👍 / 👎.

20 changes: 10 additions & 10 deletions docs/reference/Api/ClassApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ addClassUser($class, $user)

Add a user to the class

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.
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 their role in the Organization.

### Example

Expand Down Expand Up @@ -230,7 +230,7 @@ archiveClass($class): \Flat\APIClient\Model\ClassDetails

Archive the class

Mark the class as `archived`. When this course is synchronized with another app, like Google Classroom, this state will be automatically be updated.
Mark the class as `archived`. When this course is synchronized with another app, like Google Classroom, this state will automatically be updated.

### Example

Expand Down Expand Up @@ -354,7 +354,7 @@ createClass($body): \Flat\APIClient\Model\ClassDetails

Create a new class

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 `PUT /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.
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 classroom 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 `PUT /classes/{class}/users/{user}`, they will automatically be 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.

### Example

Expand Down Expand Up @@ -476,7 +476,7 @@ createSubmission($class, $assignment, $body): \Flat\APIClient\Model\AssignmentSu

Create or edit a submission

Use this method as a student to create, update and submit a submission related to an assignment. Students can only set `attachments` and `submit`. Teachers can use `PUT /classes/{class}/assignments/{assignment}/submissions/{submission}` to update a submission by id.
Use this method as a student to create, update and submit a submission related to an assignment. Students can only set `attachments`, `playback`, `exercisesIds` and `submit`. Teachers can use `PUT /classes/{class}/assignments/{assignment}/submissions/{submission}` to update a submission by id.

### Example

Expand Down Expand Up @@ -540,7 +540,7 @@ createTestStudentAccount($class, $reset): \Flat\APIClient\Model\UserDetails

Create a test student account

Test students account can be created by teachers an admin and be used to experiment the assignments. - They are automatically added to the class. - They can be reset using this API endpoint (a new account will be created and the previous one scheduled for deletion). - These accounts don't use a user license.
Test student accounts can be created by teachers and admins to try out the assignments. - They are automatically added to the class. - They can be reset using this API endpoint (a new account will be created and the previous one scheduled for deletion). - These accounts don't use a user license.

### Example

Expand Down Expand Up @@ -724,7 +724,7 @@ deleteSubmission($class, $assignment, $submission): \Flat\APIClient\Model\Assign

Reset a submission

Use this method as a teacher to reset a submission and allow student to start over the assignment
Use this method as a teacher to reset a submission and allow the student to start the assignment over

### Example

Expand Down Expand Up @@ -851,7 +851,7 @@ editSubmission($class, $assignment, $submission, $body): \Flat\APIClient\Model\A

Edit a submission

Use this method as a teacher to update the different submission and give feedback. Teachers can only set `return`, `draftGrade` and `grade`
Use this method as a teacher to update a submission and give feedback. Teachers can only set `return`, `draftGrade` and `grade`.

### Example

Expand Down Expand Up @@ -917,7 +917,7 @@ enrollClass($enrollment_code): \Flat\APIClient\Model\ClassDetails

Join a class

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.
Use this method to join a class using an enrollment code given by one of the teachers 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 their role in the organization.

### Example

Expand Down Expand Up @@ -1221,7 +1221,7 @@ getScoreSubmissions($score): \Flat\APIClient\Model\AssignmentSubmission[]

List submissions related to the score

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.
This API call will list the different assignments submissions where the score is attached. This method can be used by anyone who is part of the organization and has at least read access to the document.

### Example

Expand Down Expand Up @@ -1833,7 +1833,7 @@ unarchiveClass($class): \Flat\APIClient\Model\ClassDetails

Unarchive the class

Mark the class as `active`. When this course is synchronized with another app, like Google Classroom, this state will be automatically be updated.
Mark the class as `active`. When this course is synchronized with another app, like Google Classroom, this state will automatically be updated.

### Example

Expand Down
6 changes: 3 additions & 3 deletions docs/reference/Api/CollectionApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ deleteScoreFromCollection($collection, $score, $event_properties, $sharing_key)

Delete a score from the collection

This method will delete a score from the collection. Unlike [`DELETE /scores/{score}`](#operation/deleteScore), this score will not remove the score from your account, but only from the collection. This can be used to *move* a score from one collection to another, or simply remove a score from one collection when this one is contained in multiple collections.
This method will delete a score from the collection. Unlike [`DELETE /scores/{score}`](#operation/deleteScore), this will not remove the score from your account, but only from the collection. This can be used to *move* a score from one collection to another, or simply remove a score from one collection when this one is contained in multiple collections.

### Example

Expand All @@ -227,7 +227,7 @@ $apiInstance = new Flat\APIClient\Api\CollectionApi(
);
$collection = 'collection_example'; // string | Unique identifier of the collection. The following collection aliases are supported: - `root`: **Deprecated.** The root collection of the account - `app`: Alias for the current app collection - `trash`: Automatically contains resources that have been deleted
$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`).
$event_properties = {"context":"discover","screenLevel0":"home","screenRoute":"/discover"}; // string | Optional analytics properties merged into XP tracking for this request. JSON-encoded string representing event properties. Example: - `?eventProperties={\"context\":\"discover\",\"screenLevel0\":\"home\"}`
$event_properties = {"context":"discover","screenLevel0":"home","screenRoute":"/discover"}; // string | Optional analytics properties merged into the analytics events recorded for this request. JSON-encoded string representing event properties. Example: - `?eventProperties={\"context\":\"discover\",\"screenLevel0\":\"home\"}`
$sharing_key = 'sharing_key_example'; // string | This sharing key must be specified to access to a score or collection with a `privacy` mode set to `privateLink` and the current user is not a collaborator of the document.

try {
Expand All @@ -243,7 +243,7 @@ try {
| ------------- | ------------- | ------------- | ------------- |
| **collection** | **string**| Unique identifier of the collection. The following collection aliases are supported: - `root`: **Deprecated.** The root collection of the account - `app`: Alias for the current app collection - `trash`: Automatically contains resources that have been deleted | |
| **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`). | |
| **event_properties** | **string**| Optional analytics properties merged into XP tracking for this request. JSON-encoded string representing event properties. Example: - `?eventProperties={\"context\":\"discover\",\"screenLevel0\":\"home\"}` | [optional] |
| **event_properties** | **string**| Optional analytics properties merged into the analytics events recorded for this request. JSON-encoded string representing event properties. Example: - `?eventProperties={\"context\":\"discover\",\"screenLevel0\":\"home\"}` | [optional] |
| **sharing_key** | **string**| This sharing key must be specified to access to a score or collection with a `privacy` mode set to `privateLink` and the current user is not a collaborator of the document. | [optional] |

### Return type
Expand Down
6 changes: 3 additions & 3 deletions docs/reference/Api/EduResourcesApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -452,7 +452,7 @@ $apiInstance = new Flat\APIClient\Api\EduResourcesApi(
$config
);
$parent = 'root'; // string | List the resources contained in this `parent` library or folder. Accepts a folder identifier, or the identifier of one of the libraries returned by [`listEduLibraries`](#tag/EduResources/operation/listEduLibraries). Which libraries are available depends on the account, so use the `id` values that endpoint returns rather than hardcoding this list: * `root`: the user's own resources * `organization`: resources shared with the organization
$without_subfolders_resources = True; // bool | For the `parent` = `organization`, do not include resources from subfolders. By default in the Resource Library UI, we include resources from subfolders, but for example in a picker like LTI, we don't want to include them.
$without_subfolders_resources = True; // bool | For the `parent` = `organization`, do not include resources from subfolders. Resources from subfolders are included by default; set this to `true` to list only the direct children, for example in a picker.
$type = 'type_example'; // string | Filter the returned resources by type
$subjects = array(new \Flat\APIClient\Model\\Flat\APIClient\Model\TeachingTheme()); // \Flat\APIClient\Model\TeachingTheme[] | Filter the returned resources by subjects
$assignment_types = array(new \Flat\APIClient\Model\\Flat\APIClient\Model\AssignmentType()); // \Flat\APIClient\Model\AssignmentType[] | Filter the returned resources by assignment types
Expand All @@ -476,7 +476,7 @@ try {
| Name | Type | Description | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **parent** | **string**| List the resources contained in this `parent` library or folder. Accepts a folder identifier, or the identifier of one of the libraries returned by [`listEduLibraries`](#tag/EduResources/operation/listEduLibraries). Which libraries are available depends on the account, so use the `id` values that endpoint returns rather than hardcoding this list: * `root`: the user's own resources * `organization`: resources shared with the organization | [optional] [default to 'root'] |
| **without_subfolders_resources** | **bool**| For the `parent` = `organization`, do not include resources from subfolders. By default in the Resource Library UI, we include resources from subfolders, but for example in a picker like LTI, we don't want to include them. | [optional] |
| **without_subfolders_resources** | **bool**| For the `parent` = `organization`, do not include resources from subfolders. Resources from subfolders are included by default; set this to `true` to list only the direct children, for example in a picker. | [optional] |
| **type** | **string**| Filter the returned resources by type | [optional] |
| **subjects** | [**\Flat\APIClient\Model\TeachingTheme[]**](../Model/\Flat\APIClient\Model\TeachingTheme.md)| Filter the returned resources by subjects | [optional] |
| **assignment_types** | [**\Flat\APIClient\Model\AssignmentType[]**](../Model/\Flat\APIClient\Model\AssignmentType.md)| Filter the returned resources by assignment types | [optional] |
Expand Down Expand Up @@ -572,7 +572,7 @@ updateEduResource($resource, $edu_resource_update): \Flat\APIClient\Model\EduRes

Update an education resource metadata

Update any resources metadata (e.g. title). Use this method to rename education resources folders or assignments.
Update the metadata of a resource (e.g. its title). Use this method to rename education resources folders or assignments.

### Example

Expand Down
4 changes: 2 additions & 2 deletions docs/reference/Api/GroupApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,7 @@ $apiInstance = new Flat\APIClient\Api\GroupApi(
$config
);
$group = 'group_example'; // string | Unique identifier of a Flat group
$parent = 'parent_example'; // string | Filter the score forked from the score id `parent`
$parent = 'parent_example'; // string | Only return the scores forked from the score `parent`

try {
$result = $apiInstance->getGroupScores($group, $parent);
Expand All @@ -297,7 +297,7 @@ try {
| Name | Type | Description | Notes |
| ------------- | ------------- | ------------- | ------------- |
| **group** | **string**| Unique identifier of a Flat group | |
| **parent** | **string**| Filter the score forked from the score id `parent` | [optional] |
| **parent** | **string**| Only return the scores forked from the score `parent` | [optional] |

### Return type

Expand Down
4 changes: 2 additions & 2 deletions docs/reference/Api/OMRApi.md
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@ createOmrJob($omr_job_creation, $x_flat_locale): \Flat\APIClient\Model\OmrJob

Create an OMR job

Create an Optical Music Recognition job. There are two ways to call this endpoint: * **Draft:** send the parameters without `files` to create an empty job, then add files with `addOmrJobFile`, then run it with `startOmrJob`. Best for multiple images or incremental mobile capture. * **One-shot:** include `files` and `autoStart: true` to import in a single request. Best for a single PDF or a third-party integration. Declare the interactive steps your client supports in `interactiveSteps`: the pipeline runs fully automatically and only pauses at the steps you list. Steps you do not list, including ones added in the future, are auto-resolved with server defaults, so older clients never break.
Create an Optical Music Recognition job. There are two ways to call this endpoint: * **Draft:** send the parameters without `files` to create an empty job, then add files with `addOmrJobFile`, then run it with `startOmrJob`. Best for multiple images or incremental mobile capture. * **One-shot:** include `files` and `autoStart: true` to import in a single request. Best for a single PDF or a third-party integration. Declare the interactive steps your client supports in `interactiveSteps`: the pipeline runs fully automatically and only pauses at the steps you list. Steps you do not list, including ones added in the future, are auto-resolved with server defaults, so older clients never break. Pages are recognized in the orientation they are uploaded in. If your client does not let the user rotate pages before upload, set `autoRotate: true` and the server corrects pages uploaded sideways or upside down.

### Example

Expand Down Expand Up @@ -214,7 +214,7 @@ deleteOmrJob($job, $x_flat_locale): \Flat\APIClient\Model\OmrJob

Delete an OMR job's data

Erase a job's uploaded files and recognition results now, instead of waiting for its retention deadline. Use this to serve a deletion request from your own end user. Reaches the same end state as the scheduled cleanup: the files are gone, the job keeps the `status` it finished with, stays listable, and reports `retention.expiredDate`. Downloads then fail with `OMR_JOB_EXPIRED`. Only available for jobs whose `output` is `musicxml`. Library imports are not covered by the retention policy and are rejected with `OMR_JOB_NOT_EXPIRABLE`; delete the resulting score instead. The job must have finished (`done`, `error` or `canceled`). A draft or in-flight job is rejected with `OMR_JOB_IN_PROGRESS`: cancel it first, then delete. Deleting never cancels on your behalf, because cancellation reverses charged credits and that must not happen as a side effect of erasing data. Calling this again on an already-erased job succeeds and changes nothing.
Erase a job's uploaded files and recognition results now, instead of waiting for its retention deadline. Use this to serve a deletion request from your own end user. Reaches the same end state as retention expiry: the files are gone, the job keeps the `status` it finished with, stays listable, and reports `retention.expiredDate`. Downloads then fail with `OMR_JOB_EXPIRED`. Only available for jobs whose `output` is `musicxml`. Library imports are not covered by the retention policy and are rejected with `OMR_JOB_NOT_EXPIRABLE`; delete the resulting score instead. The job must have finished (`done`, `error` or `canceled`). A draft or in-flight job is rejected with `OMR_JOB_IN_PROGRESS`: cancel it first, then delete. Deleting never cancels on your behalf, because cancellation reverses charged credits and that must not happen as a side effect of erasing data. Calling this again on an already-erased job succeeds and changes nothing.

### Example

Expand Down
Loading
Loading