MT-EQuAl REST API
GET project/report
Returns the evaluation report of the specified project.
Endpoint
GET http(s)://hostname/api/project/report
Request Parameters
Header field
|
Type | Value |
---|---|---|
X-Api-Key |
string | Required. A valid access token from a registered MT-EQuAl account. The access token
must have been issued on behalf of the current user. |
Request data | Value type | Value |
---|---|---|
id | string | Required. The project id. |
Response
On success, the HTTP status code in the response header is 200
(OK)
and the response is structured in JSON as follow:
{
"header": {
"date": "Date and time of the response generation process",
"description": "Description of the invoked method or error message",
"status": "status/error code"
},
"result": {
"report": {
"summary": {
"id": "The project id",
"type": "The evaluation format",
"countTUs": "The number of TUs",
"countIntraTUs": "Number of redundant TUs for Intra-Annotator Agreement",
"countEvaluators": "The number of active evaluators",
"evaluators": "The evaluators",
"countTargets": "The number of targes",
"targetLabels": "The target labels and number of TUs",
"countRanges": "The number of levels, output to rank, or questions to answer set in the evaluation format",
"ranges": "The evaluation format ranges"
},
"before": {
"results": "The aggregated result before the review",
"quality": "The quality of the evaluation",
"trustability": "The evaluators' trustability (intra-annotator agreement on the redundant TUs)"
},
"after": {
"results": "The aggregated result after the review",
"quality": "The quality of the evaluation",
"trustability": "The number of evaluations changed by the reviewer"
}
}
}
}
Example
curl -X GET "https://hostname/api/project/report?id=1" -H "X-Api-Key: {user access token}"
{
"header": {
"date": "Sunday, 2016-11-06 17:14:14 Europe\/Paris",
"description": "Returns the evaluation report of the specified project.",
"status": "200"
},
"result": {
"report": {
"summary": {
"id": "1",
"type": "scale",
"countTUs": "6",
"countIntraTUs": 2,
"countEvaluators": 2,
"evaluators": [
{
"username": "Evaluator 1"
},
{
"username": "Evaluator 2"
}
],
"countTargets": 2,
"targetLabels": [
{
"type": "sys1",
"sentences": "6"
},
{
"type": "sys2",
"sentences": "6"
}
],
"countRanges": 4,
"ranges": [
{
"color": "#ff0000",
"label": "very bad",
"val": 1
},
{
"color": "#ff8000",
"label": "bad",
"val": 2
},
{
"color": "#ffbf00",
"label": "good",
"val": 3
},
{
"color": "#40ff00",
"label": "very good",
"val": 4
}
]
},
"before": {
"results": {
"sys1": {
"eval": [
0,
4,
0,
0,
4
],
"sentences": 6,
"evaluations": 8,
"average": 2.5,
"rank": "good"
},
"sys2": {
"eval": [
0,
4,
0,
0,
4
],
"sentences": 6,
"evaluations": 8,
"average": 2.5,
"rank": "good"
}
},
"quality": {
"kStat": -1
},
"trustability": [
{
"username": "Evaluator 1",
"Pnorm": 1,
"Pe": 1,
"kStat": "not available",
"id": 5
},
{
"username": "Evaluator 2",
"Pnorm": 0,
"Pe": 0.5,
"kStat": -1,
"id": 3
}
]
},
"after": {
"results": {
"sys1": {
"eval": [
0,
0,
0,
0,
8
],
"sentences": 6,
"evaluations": 8,
"average": 4,
"rank": "very good"
},
"sys2": {
"eval": [
0,
1,
0,
0,
7
],
"sentences": 6,
"evaluations": 8,
"average": 3.63,
"rank": "very good"
}
},
"quality": {
"kStat": -0.0666666666667,
"totEvaluationsRev": 7
},
"evaluationsRev": [
{
"userid": "5",
"numrev": "7"
}
]
}
}
}
}