Here is the OpenAPI specification for our stable public endpoints.
Here is the OpenAPI specification for our stable public endpoints.
By setting this field, you will link the answer to the provided learner identifier. Alternatively, you can use an anonymous identifier if preferred.
The identifier of the tenant where the target task, specified in the taskDefinition, will be stored or searched for. If not provided the domain's default tenant will be used. Ensure that the API user has the necessary permissions on the target tenant to create or update a task. If not, an error-response of type MISSING_PERMISSIONS
will be returned.
Defines the type of the task. Can be used by deserialization tools to instantiate the correct sub-type.
curl -i -X POST \
'https://api.taskbase.com/tasks/${taskId}/feedback/compute' \
-H 'Authorization: Bearer <YOUR_UUID_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"userId": "some_anonymous_id",
"taskType": "FREEFORM_TEXT",
"answer": {
"content": "The Battle of Waterloo was in 1815."
}
}'
successful operation
Defines the type of the task. Can be used by deserialization tools to instantiate the correct sub-type.
The object containing metadata about the performed operation, along with helpful debugging information. Designed to simplify the integration process and does not include any production-related details that should be visible to the end user.
The correctness of the learner's answer.
An array of Aspects that resulted in the given feedback.
The Aspect name.
The Aspect description.
Indicates whether an Aspect represents a misconception (wrong aspect) or a concept (correct aspect).
The feedback message.
The content of this part of the answer, included for convenience. It can also be obtained from the answer using the offset and length.
The position offset relative to the full answer.
{ "userId": "some_anonymous_id", "taskId": "0Ihkl0CyzoWSjDm5F", "taskType": "FREEFORM_TEXT", "metaData": { "taskAction": "CREATED", "tenantId": "string", "taskLink": "string" }, "result": { "sampleSolution": { … }, "feedback": [ … ], "answer": { … }, "allAspects": [ … ] } }
This operation provides access to our formative feedback. The task included in the request is essential for context and must be provided with every request. This ensures synchronization and prevents issues where feedback might be based on an outdated version of the task.
The id
field in the task object is crucial for identifying answers associated with the same task. This field represents the task's identifier as defined in the client’s system.
If the id remains the same across requests but other task fields change, the system updates the fields for the existing task 𝑡. Feedback is then generated based on previously submitted answers and feedback related to task 𝑡 (*
). If the system has not seen the value of the id
field before, a new task 𝑡′ is created. In this case, there are no existing answers or feedback linked to task 𝑡′.
To avoid unintended behavior, only change the id field when creating a completely new task.
(*
) This applies only if the task types remain the same. If a request specifies a task type for t that differs from the type already associated with it from previous requests, an error will be returned.
Important note on task updates: Whenever a task is updated in the client's system, it should be assumed that these changes affect the feedback. Therefore, we recommend the following actions to align with the changes: test the feedback after making changes; create new answers to reflect the updated task; and consider reassigning existing feedback for previous answers. Without these measures, the generated feedback may no longer be accurate.
By setting this field, you will link the answer to the provided learner identifier. Alternatively, you can use an anonymous identifier if preferred.
The identifier of the tenant where the target task, specified in the taskDefinition, will be stored or searched for. If not provided the domain's default tenant will be used. Ensure that the API user has the necessary permissions on the target tenant to create or update a task. If not, an error-response of type MISSING_PERMISSIONS
will be returned.
Defines the type of the task. Can be used by deserialization tools to instantiate the correct sub-type.
The task definition for the FREEFORM_TEXT
-type task.
NOTE: If the type
field does not match in the UI documentation view, you may need to adjust it manually.
The task ID. This field should contain the task identifier used in the client's system.
The problem statement of the task.
Defines the type of the task. Can be used by deserialization tools to instantiate the correct sub-type.
The task title. If left blank, the taskDefinition.id
will be used as the title during implicit task creation or update.
The task language.
Context, such as background knowledge or additional information, required to solve the task.
curl -i -X POST \
https://api.taskbase.com/feedback/compute \
-H 'Authorization: Bearer <YOUR_UUID_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"userId": "some_anonymous_id",
"taskType": "FREEFORM_TEXT",
"taskDefinition": {
"id": "your_id_as_string",
"problemStatement": "When was the Battle of Waterloo?",
"type": "FREEFORM_TEXT"
},
"answer": {
"content": "The Battle of Waterloo was in 1815."
}
}'
successful operation
Defines the type of the task. Can be used by deserialization tools to instantiate the correct sub-type.
The object containing metadata about the performed operation, along with helpful debugging information. Designed to simplify the integration process and does not include any production-related details that should be visible to the end user.
The correctness of the learner's answer.
An array of Aspects that resulted in the given feedback.
The Aspect name.
The Aspect description.
Indicates whether an Aspect represents a misconception (wrong aspect) or a concept (correct aspect).
The feedback message.
The content of this part of the answer, included for convenience. It can also be obtained from the answer using the offset and length.
The position offset relative to the full answer.
{ "userId": "some_anonymous_id", "taskId": "0Ihkl0CyzoWSjDm5F", "taskType": "FREEFORM_TEXT", "metaData": { "taskAction": "CREATED", "tenantId": "string", "taskLink": "string" }, "result": { "sampleSolution": { … }, "feedback": [ … ], "answer": { … }, "allAspects": [ … ] } }