Integrating against Test Endpoints
Overview
This section will show you how the test endpoints work. These two test endpoints are create
conversion job and retrieve conversion output data, and they correspond directly to the
production endpoints. Once you have setup your infrastructure to work against the test
endpoint, it will also be guaranteed to work with the production endpoint. Switching from
test endpoint to production endpoint will only require changing the URL and nothing else.
As we do not provide free conversion quotas for our production API. It is recommended that
you integrate against the test endpoints first so as not to waste your credits.
We will be illustrating the usage of our test endpoints using Python 3. The examples can be
adapted to any HTTP library in any languages.
Note: Please ensure you read our getting started guide first!
Job Creation Test Endpoint
https://digitaliser.getmarked.ai/api/v1.0/job/test_create_job/
This endpoint accepts a HTTP POST and checks two things. First, that the API key is valid, and second that the document is docx.
The API Key should be set in the AUTHORIZATION header of the POST request and
the document should be set into the file field in the form-data of the request.
Here's a sample docx file you may use.
Here's a sample docx file you may use.
Result
If you made successful HTTP POST request, you should receive the following response:
{
"status": "accepted",
"message": "Your file has been accepted",
"data": {
"result_endpoint": "https://digitaliser.getmarked.ai/api/v1.0/job/test_job/"
},
}
You will be given a result_endpoint,
which will point you towards the URL that you should poll next.
Note: Try removing your HTTP Authorization header or send an invalid file format. You
will find that it will not work and you will receive an error message instead!
Job Retrieval Test Endpoint
API_URL = "https://digitaliser.getmarked.ai/api/v1.0/job/test_job/"
Making a HTTP GET request to the job retrieval test endpoint will returns JSON data that
will include all the variety of questions we support, namely MCQs, open-ended and cloze.
Your integration can be considered complete when you support all the question types returned from this test endpoint.
Please take note that you should only poll the production job retrieve endpoint at most once every 15s. This endpoint also requires the API key be set in the AUTHORIZATION header.
Please take note that you should only poll the production job retrieve endpoint at most once every 15s. This endpoint also requires the API key be set in the AUTHORIZATION header.
Result
You should have received the following response:
{
"status": "success",
"message": "Your file has been successfully converted.",
"data": {
"filename": "getmarked-practice-0.docx",
"num_of_pages": 3.0,
"questions": [
{
"title": "Q6 Suddenly she came upon a little three-legged table, all made",
"category": "CLOZE",
"interactions": {
"%%%0_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
},
"%%%1_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
},
"%%%2_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
},
"%%%3_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
},
"%%%4_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
},
"%%%5_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
},
"%%%6_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
},
"%%%7_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
},
"%%%8_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
}
},
"prompt": "<blockquote><div><div> <div> Suddenly she came upon a little three-legged table,
all made of solid glass; there was (6) %%%0_INTERACTION_TEXT_ENTRY%%% on it except a tiny golden key,
and Alice’s first (7) %%%1_INTERACTION_TEXT_ENTRY%%% was that it might belong to one of the doors of
the hall; but, alas! either the locks were too large, or the key was too small, but at any rate it would
not open any of them. (8) %%%2_INTERACTION_TEXT_ENTRY%%% , on the second time round, she came upon a low
curtain she had not noticed before, and behind it was a little door about fifteen inches high: she tried
the little golden key in the lock, and to her great delight it fitted! </div> <div> Alice
(9) %%%3_INTERACTION_TEXT_ENTRY%%% the door and found that it led into a small passage, not much larger than
a rat-hole: she knelt down and looked along the passage into the loveliest garden you ever saw. How she longed
to get out of that dark hall, (10) %%%4_INTERACTION_TEXT_ENTRY%%% wander about among those beds of bright flowers
and those cool fountains, but she (11) %%%5_INTERACTION_TEXT_ENTRY%%% not even get her head through the doorway;
“and even if my head would go through,” thought poor Alice, “it would be of very little use without my shoulders.
Oh, how I wish I could shut up like a telescope! I think I could, if I only (12) %%%6_INTERACTION_TEXT_ENTRY%%%
how to begin.” For, you see, so many out-of-the-way things had happened lately, that Alice had begun to think that
very few things indeed were really impossible. </div> <div> (13) %%%7_INTERACTION_TEXT_ENTRY%%% seemed to be no
use in waiting by the little door, so she went back to the table, half hoping she might find another key on it, or
at any rate a book of rules for shutting people up like telescopes: this time she found a little bottle on it,
(“which certainly was not here before,” said Alice,) and round the neck of the bottle was a paper label,
(14) %%%8_INTERACTION_TEXT_ENTRY%%% the words “DRINK ME,” beautifully printed on it in large letters. </div>
</div></div></blockquote>"
},
{
"title": "Q1 Use the following table to ans...Which is the most expensive car in the list?",
"category": "MCQ",
"answers": [
[
"c"
]
],
"stimulus": "<div> <div> Use the following table to answer the next 2 questions: </div> <table
style=\"border: 1px solid #eeeeee;\"> <tr> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div>
Brand of Car </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Make of Car </div>
</td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Cost ($) </div> </td> </tr>
<tr> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Toyota </div> </td> <td style=\"padding: 5px;
border: 1px solid #eeeeee;\"> <div> RAV4 </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div>
35,000 </div> </td> </tr> <tr> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Ford </div> </td>
<td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> F-Series </div> </td> <td style=\"padding: 5px;
border: 1px solid #eeeeee;\"> <div> 38,000 </div> </td> </tr> <tr> <td style=\"padding: 5px; border: 1px solid
#eeeeee;\"> <div> Tesla </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Model 3 </div>
</td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> 80,000 </div> </td> </tr> <tr> <td
style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Honda </div> </td> <td style=\"padding: 5px; border: 1px solid
#eeeeee;\"> <div> Civic </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> 27,600 </div>
</td> </tr> </table> <div> </div> </div>",
"prompt": "<div> <div> 1. Which is the most expensive car in the list? </div> </div>" ,
"choices": {
"a": "<div> Toyota RAV4 </div>",
"b": "<div> Ford F-Series </div>",
"c": "<div> Tesla Model 3 </div>",
"d": "<div> Honda Civic </div>"
}
},
{
"title": "Q2 Use the following table to ans...Which is the cheapest car in the list?",
"category": "MCQ",
"answers": [
[
"d"
]
],
"stimulus": ""<div> <div> Use the following table to answer the next 2 questions: </div>
<table style=\"border: 1px solid #eeeeee;\"> <tr> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div>
Brand of Car </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Make of Car </div> </td>
<td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Cost ($) </div> </td> </tr> <tr> <td style=\"padding:
5px; border: 1px solid #eeeeee;\"> <div> Toyota </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\">
<div> RAV4 </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> 35,000 </div> </td> </tr>
<tr> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Ford </div> </td> <td style=\"padding: 5px;
border: 1px solid #eeeeee;\"> <div> F-Series </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\">
<div> 38,000 </div> </td> </tr> <tr> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Tesla </div>
</td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Model 3 </div> </td> <td style=\"padding: 5px;
border: 1px solid #eeeeee;\"> <div> 80,000 </div> </td> </tr> <tr> <td style=\"padding: 5px; border: 1px solid
#eeeeee;\"> <div> Honda </div> </td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> Civic </div>
</td> <td style=\"padding: 5px; border: 1px solid #eeeeee;\"> <div> 27,600 </div> </td> </tr> </table> <div>
</div> </div>",
"prompt": "<div> <div> 2. Which is the cheapest car in the list? </div> </div>" ,
"choices": {
"a": "<div> Toyota RAV4 </div>",
"b": "<div> Ford F-Series </div>",
"c": "<div> Tesla Model 3 </div>",
"d": "<div> Honda Civic </div>"
}
},
{
"title": "Q3 The diagram below shows a child’s swing. The swing is releas",
"category": "MCQ",
"answers": [
[
"c"
]
],
"prompt": "<div> <div> The diagram below shows a child’s swing. </div> <div>
<img src=\"https://digitaliserstorage.blob.core.windows.net/media/image/yhaojin/U9DG7RP2_3nQubtm7ijXr1GxrYS07gVuhuL
kjHOM5vB5Efv7x9ssRYXuAH80zhKDdYg3AqryA.jpg\" /></div> <div> The swing is released from point X. </div> <div>
Which movement takes one period of oscillation? </div></div>",
"choices": {
"a": "<div> From X to Y </div>",
"b": "<div> From X to Z </div>",
"c": "<div> From X to Z and back to X </div>",
"d": "<div> From X to Z and back to Y </div>"
}
},
{
"title": "Q4 ∫ x + sin x 1 + cos x d x is equal to",
"category": "MCQ",
"answers": [
[
"b"
]
],
"prompt": "<div> <div> <math> <mrow> <mo stretchy=\"false\">∫ </mo> <mrow> <mfrac>
<mrow> <mi> x </mi> <mo> + </mo> <mi> </mi> <mrow> <mrow> <mi mathvariant=\"normal\">sin </mi> </mrow>
<mo> </mo> <mrow> <mi> x </mi> </mrow> </mrow> </mrow> <mrow> <mn> 1 </mn> <mo> + </mo> <mi>
</mi> <mrow> <mrow> <mi mathvariant=\"normal\">cos </mi> </mrow> <mo> </mo> <mrow> <mi> x </mi> </mrow>
</mrow> </mrow> </mfrac> <mi> </mi> <mi> d </mi> <mi> x </mi> </mrow> </mrow> </math> is equal to
</div> </div>,
"choices": {
"a": "<div> <math> <mrow> <mrow> <mi mathvariant=\"normal\">log </mi> </mrow> <mo> </mo>
<mrow> <mfenced close=\"|\" open=\"|\" separators=\"|\"> <mrow> <mn> 1 </mn> <mo> + </mo> <mi> </mi>
<mrow> <mrow> <mi mathvariant=\"normal\">cos </mi> </mrow> <mo> </mo> <mrow> <mi> x </mi>
</mrow> </mrow> </mrow> </mfenced> </mrow> </mrow> <mo> + </mo> <mi> c </mi> </math> </div>",
"b": "<div> <math> <mrow> <mrow> <mi mathvariant=\"normal\">log </mi> </mrow> <mo> </mo>
<mrow> <mfenced close=\"|\" open=\"|\" separators=\"|\"> <mrow> <mn> 1 </mn> <mo> + </mo> <mi> </mi>
<mrow> <mrow> <mi mathvariant=\"normal\">sin </mi> </mrow> <mo> </mo> <mrow> <mi> x </mi>
</mrow> </mrow> </mrow> </mfenced> </mrow> </mrow> <mo> + </mo> <mi> c </mi> </math> </div>",
"c": "<div> <math> <mi> x </mi> <mo> - </mo> <mi> </mi> <mrow> <mrow>
<mi mathvariant=\"normal\">tan </mi> </mrow> <mo> </mo> <mrow> <mi> x </mi> </mrow> </mrow> <mo> +
</mo> <mi> c </mi> </math> </div>",
"d": "<div> <math> <mi> x </mi> <mi> </mi> <mrow> <mrow>
<mi mathvariant=\"normal\">tan </mi> </mrow> <mo> </mo> <mrow> <mfrac> <mrow> <mi> x </mi> </mrow>
<mrow> <mn> 2 </mn> </mrow> </mfrac> </mrow> </mrow> </math> </div>"
}
},
{
"title": "Q5(a) student sets up a circuit usin...Explain why in this circuit the current lamp Q is larger tha",
"category": "OEQ",
"answers": [
[
"Lamp P is connected in parallel with resistor R hence it has lower current compare to Q."
]
],
"stimulus": "<div> <div> 5. A student sets up a circuit using a battery made of four cells, a
resistor R, two identical lamps P and Q, and a switch. The circuit is shown in Fig. 6.1. </div> <div>
<img src=\"https://digitaliserstorage.blob.core.windows.net/media/image/yhaojin/S8DK3WWI_uahPtvwErqHg0IQN
wReTK5buPHFK9NmR78yPgprQ13l99AaR0XskUZgIJaNvRD0F.jpg\" /></div> <div> </div> </div>,
"prompt": "<div> Explain why in this circuit the current lamp Q is larger than the current in lamp P. </div>"
},
{
"title": "Q5(b) student sets up a circuit usin...Explain why in this circuit lamp Q has different resistance ",
"category": "OEQ",
"answers": [
[
"As V=IR, given that P has less effective resistance due to being connect in parallel with R."
]
],
"stimulus": "<div> <div> 5. A student sets up a circuit using a battery made of four cells, a
resistor R, two identical lamps P and Q, and a switch. The circuit is shown in Fig. 6.1. </div> <div>
<img src=\"https://digitaliserstorage.blob.core.windows.net/media/image/yhaojin/W40PXKB6_ad2DdYorsTR4wkLm
JhQ0cH1tszqkLYtFj8MnGT65YzFOmF9I1ta7gJV7jBjEhUgx.jpg\" /></div> <div> </div> </div>,
"prompt": "<div> Explain why in this circuit lamp Q has different resistance from lamp P even though
they are identical lamps. </div>"
},
{
"title": "Q15 The Grand Canyon is a steep-sided canyon carved by the Color",
"category": "CLOZE",
"answers": [
[
"a"
],
[
"erosion", "weathering"
]
],
"interactions": {
"%%%0_INTERACTION_INLINE_CHOICE%%%": {
"category": "inline-choice",
"answers": [
"a"
],
"choices": {
"a": "Arizona",
"b": "Utah",
"c": "California",
"d": "Nevada"
}
},
"%%%1_INTERACTION_TEXT_ENTRY%%%": {
"category": "text-entry",
"answers": [
"erosion", "weathering"
]
}
},
"prompt": "<blockquote><div><div> <div> The Grand Canyon is a steep-sided canyon carved
by the Colorado River in %%%0_INTERACTION_INLINE_CHOICE%%%. The canyon is a result of %%%1_INTERACTION_TEXT_ENTRY%%% which exposes
one of the most complete geologic columns on the planet. </div> </div></div></blockquote>"
},
{
"title": "Q16 The United States has 52 states.",
"category": "MCQ",
"answers": [
[
"b"
]
],
"prompt": "<div> <div> The United States has 52 states. </div> </div>" ,
"choices": {
"a": "<div> true </div>",
"b": "<div> false </div>"
}
},
{
"title": "Q17 Neil Armstrong was the first person to walk on the moon.",
"category": "MCQ",
"answers": [
[
"a"
]
],
"prompt": "<div> <div> Neil Armstrong was the first person to walk on the moon. </div> </div>" ,
"choices": {
"a": "<div> true </div>",
"b": "<div> false </div>"
}
},
{
"title": "Q18 Match the following landmarks with the states they are in: S",
"category": "CLOZE",
"answers": [
[
"a"
],
[
"b"
],
[
"c"
],
[
"d"
],
[
"a"
]
],
"interactions": {
"%%%0_INTERACTION_INLINE_CHOICE%%%": {
"category": "inline-choice",
"answers": [
"a"
],
"choices": {
"a": "New York",
"b": "Nevada",
"c": "South Dakota",
"d": "California"
}
},
"%%%1_INTERACTION_INLINE_CHOICE%%%": {
"category": "inline-choice",
"answers": [
"b"
],
"choices": {
"a": "New York",
"b": "Nevada",
"c": "South Dakota",
"d": "California"
}
},
"%%%2_INTERACTION_INLINE_CHOICE%%%": {
"category": "inline-choice",
"answers": [
"c"
],
"choices": {
"a": "New York",
"b": "Nevada",
"c": "South Dakota",
"d": "California"
}
},
"%%%3_INTERACTION_INLINE_CHOICE%%%": {
"category": "inline-choice",
"answers": [
"d"
],
"choices": {
"a": "New York",
"b": "Nevada",
"c": "South Dakota",
"d": "California"
}
},
"%%%4_INTERACTION_INLINE_CHOICE%%%": {
"category": "inline-choice",
"answers": [
"a"
],
"choices": {
"a": "New York",
"b": "Nevada",
"c": "South Dakota",
"d": "California"
}
}
},
"prompt": "<blockquote><div><div> <div> Match the following landmarks with the states
they are in: </div> <div> Statue of Liberty %%%0_INTERACTION_INLINE_CHOICE%%% </div> <div> Grand Canyon
%%%1_INTERACTION_INLINE_CHOICE%%% </div> <div> Mount Rushmore %%%2_INTERACTION_INLINE_CHOICE%%% </div> <div>
Golden Gate Bridge %%%3_INTERACTION_INLINE_CHOICE%%% </div> <div> Empire State Building %%%4_INTERACTION_INLINE_CHOICE%%%
</div> </div></div></blockquote>"
}
]
}
}