Creating a TSV file with tasks
Tasks are uploaded to the pool in a TSV file.
Download a sample file for your project by clicking File example for task uploading (tsv) on the pool page. To do this, click Upload. In the window that opens, download a sample TSV file here: Sample file for uploading.
If you need to upload different task types to a pool, upload multiple TSV files, each file containing a different task type.
Structure of the TSV file
INPUT:<name of the input data field>
— Input data for tasks.GOLDEN:<name of the output data field>
— Responses for control tasks.HINT:text
— Hints for training tasks.- Point coordinates for field surveys:
Al:latitude
— Latitude.Al:longitude
— Longitude.
Task type depends on which fields are filled in:
To create a main task, fill in the columns with the INPUT
header.


To create a control task, add:
- The task input data in the columns with the
INPUT
header. - Correct responses in the columns with the
GOLDEN
header.

- The task input data in the columns with the
INPUT
header. - Correct responses in the columns with the
GOLDEN
header. - A hint in the
HINT:text
column.
For training tasks, it is convenient to create a separate pool.

The task that the performer chooses on the map in the Yandex.Toloka mobile app.
To create a field task, add:
- The task input data in the columns with the
INPUT
header. - Coordinates in the
Al:latitude
andAl:longitude
columns.

The columns with required input data fields must be filled. The other columns can be deleted if they are empty.
Working with the TSV file
Popular spreadsheet editors allow you to import and export data in TSV format:
- Create a spreadsheet with the appropriate headings or copy them from the TSV file example.
- Add data for tasks.
- Copy the entire table and paste it into a simple text editor (such as Notepad in Windows or TextEdit in Mac).
- Save the file in UTF-8 encoding with the
tsv
extension.
The maximum file size is 100 MB.
Escaping strings
- Add another quotation mark to each quotation mark of the
"
type in the text data.Don't escape other quotation marks (
« »
and“ ”
). Enclose the field in quotation marks
" "
.
Unescaped quotation marks are removed when processing the TSV file.
- Escaping examples
-
Input data Result A task in Yandex.Toloka
A task in Yandex.Toloka
A task in Yandex.Toloka
A task in Yandex.Toloka
Input data Result A task in Yandex.Toloka
A task in Yandex.Toloka
A task in Yandex.Toloka
A task in Yandex.Toloka
Input data Result A task in Yandex.Toloka
A task in Yandex.Toloka
Quotation marks were removed when processing.
A task in Yandex.Toloka
Processing error: unpaired quotation marks.
Input data Result A task in Yandex.Toloka
A task in Yandex.Toloka
Quotation marks were removed when processing.
A task in Yandex.Toloka
Processing error: unpaired quotation marks.
Escaping data in JSON format
To load data in a field with the json type:
Add another quotation mark to each
"
type of quotation mark in the JSON object.Enclose the field in quotation marks
" "
.
- Escaping examples
-
Input data Result "[{""type"":""polygon"",""data"":[{""x"":0.24173,""y"":0.25118},{""x"":0.31327,""y"":0.24896},{""x"":0.31327,""y"":0.32453},{""x"":0.27576,""y"":0.34898},{""x"":0.23061,""y"":0.32564}]}]"
[{"type":"polygon","data":[{"x":0.24173,"y":0.25118},{"x":0.31327,"y":0.24896},{"x":0.31327,"y":0.32453},{"x":0.27576,"y":0.34898},{"x":0.23061,"y":0.32564}]}]
Input data Result "[{""type"":""polygon"",""data"":[{""x"":0.24173,""y"":0.25118},{""x"":0.31327,""y"":0.24896},{""x"":0.31327,""y"":0.32453},{""x"":0.27576,""y"":0.34898},{""x"":0.23061,""y"":0.32564}]}]"
[{"type":"polygon","data":[{"x":0.24173,"y":0.25118},{"x":0.31327,"y":0.24896},{"x":0.31327,"y":0.32453},{"x":0.27576,"y":0.34898},{"x":0.23061,"y":0.32564}]}]
Input data Result "[{"type":"polygon","data":[{"x":0.24173,"y":0.25118},{"x":0.31327,"y":0.24896},{"x":0.31327,"y":0.32453},{"x":0.27576,"y":0.34898},{"x":0.23061,"y":0.32564}]}]"
Invalid data in json — add another quotation mark to each
"
type of quotation mark in the JSON object.Input data Result "[{"type":"polygon","data":[{"x":0.24173,"y":0.25118},{"x":0.31327,"y":0.24896},{"x":0.31327,"y":0.32453},{"x":0.27576,"y":0.34898},{"x":0.23061,"y":0.32564}]}]"
Invalid data in json — add another quotation mark to each
"
type of quotation mark in the JSON object.
Escaping the JSON array data
To load data in a field with the json type:
Add another quotation mark to each
"
type of quotation mark in the JSON object.Inside the object, add
\
before the comma.Enclose the field in quotation marks
" "
.
- Escaping examples
-
Input data Result "{""url"":""https://fotki-kotikov.ru/1""\,""img"":""https://fotki-kotikov.ru/cat1.jpg""\,""description"":""Just fat cats\, because nothing can be more beautiful.""\,""title"":""Fat cats""},{""url"":""https://fotki-kotikov.ru/2""\,""img"":""https://fotki-kotikov.ru/cat2.jpg""\,""description"":""Just red cats\, as everyone knows\, that red cats bring money.""\,""title"":""Red cats""},{""url"":""https://fotki-kotikov.ru/3""\,""img"":""https://fotki-kotikov.ru/cat3.jpg""\,""description"":""Yes\, it will be just sleeping cats""\,""title"":""Sleeping cats""}"
{"url":"https://fotki-kotikov.ru/1", "img":"https://fotki-kotikov.ru/cat1.jpg", "description": "Just fat cats, because nothing can be more beautiful.", "title": "Fat cats"},{"url":"https://fotki-kotikov.ru/2","img":"https://fotki-kotikov.ru/cat2.jpg","description":"Just red cats, as everyone knows that red cats bring money.", "title": "Red cats"},{"url":"https://fotki-kotikov.ru/3","img":"https://fotki-kotikov.ru/cat3.jpg","description":"Yes, it will be just sleeping cats", "title": "Sleeping cats"}
Input data Result "{""url"":""https://fotki-kotikov.ru/1""\,""img"":""https://fotki-kotikov.ru/cat1.jpg""\,""description"":""Just fat cats\, because nothing can be more beautiful.""\,""title"":""Fat cats""},{""url"":""https://fotki-kotikov.ru/2""\,""img"":""https://fotki-kotikov.ru/cat2.jpg""\,""description"":""Just red cats\, as everyone knows\, that red cats bring money.""\,""title"":""Red cats""},{""url"":""https://fotki-kotikov.ru/3""\,""img"":""https://fotki-kotikov.ru/cat3.jpg""\,""description"":""Yes\, it will be just sleeping cats""\,""title"":""Sleeping cats""}"
{"url":"https://fotki-kotikov.ru/1", "img":"https://fotki-kotikov.ru/cat1.jpg", "description": "Just fat cats, because nothing can be more beautiful.", "title": "Fat cats"},{"url":"https://fotki-kotikov.ru/2","img":"https://fotki-kotikov.ru/cat2.jpg","description":"Just red cats, as everyone knows that red cats bring money.", "title": "Red cats"},{"url":"https://fotki-kotikov.ru/3","img":"https://fotki-kotikov.ru/cat3.jpg","description":"Yes, it will be just sleeping cats", "title": "Sleeping cats"}
Input data Result {""url"":""https://fotki-kotikov.ru/1"",""img"":""https://fotki-kotikov.ru/cat1.jpg"",""description"":""Just fat cats, because nothing can be more beautiful."",""title"":""Fat cats""},{""url"":""https://fotki-kotikov.ru/2"",""img"":""https://fotki-kotikov.ru/cat2.jpg"",""description"":""Just red cats, as everyone knows that red cats bring money."",""title"":""Red cats""},{""url"":""https://fotki-kotikov.ru/3"",""img"":""https://fotki-kotikov.ru/cat3.jpg"",""description"":""Yes, it will be just sleeping cats"",""title"":""Sleeping cats"}
Invalid data in JSON:Put
\
inside the object before commas.The field must be enclosed in
" "
.
Input data Result {""url"":""https://fotki-kotikov.ru/1"",""img"":""https://fotki-kotikov.ru/cat1.jpg"",""description"":""Just fat cats, because nothing can be more beautiful."",""title"":""Fat cats""},{""url"":""https://fotki-kotikov.ru/2"",""img"":""https://fotki-kotikov.ru/cat2.jpg"",""description"":""Just red cats, as everyone knows that red cats bring money."",""title"":""Red cats""},{""url"":""https://fotki-kotikov.ru/3"",""img"":""https://fotki-kotikov.ru/cat3.jpg"",""description"":""Yes, it will be just sleeping cats"",""title"":""Sleeping cats"}
Invalid data in JSON:Put
\
inside the object before commas.The field must be enclosed in
" "
.
What's next
Troubleshooting
- Errors in column headers
-
If the column headings are incorrect, the whole file is rejected. Otherwise, Toloka specifies the number of tasks with processing errors.
- Processing errors table
-
Description How to fix "parsing_error_of": "https://tlk.s3.yandex.net/wsdm2020/photos/2d5f63a3184919ce7e3e7068cf93da4b.jpg\t\t", "exception_msg": "the nameMapping array and the sourceList should be the same size (nameMapping length = 1, sourceList size = 3)"
Extra tabs
If the TSV file contains more
\t
column separators after the data or the link than the number of columns set in the input data, you will get en error message.For example, if 1 column is defined in the input, and two more
\t\t
tabs are added in the TSV file after the link, you get 3 columns, 2 of which are extra.Remove extra column separators in the above example — both
\t\t
characters."exception_msg": "the nameMapping array and the sourceList should be the same size (nameMapping length = 4, sourceList size = 6)"
The number of fields in the header and in the row doesn't match.
Make sure that:
- The number of tabs in the file structure is correct.
- String values with tab characters are enclosed in quotation marks
" "
.
"code": "VALUE_REQUIRED", "message": "Value must be present and not equal to null"
The value for a required input field is not specified. Make sure that columns with required input data fields are filled.
"code": "INVALID_URL_SYNTAX", "message": "Value must be in valid url format"
Invalid data in the URL field. Make sure that:- Links start with the
http://
,https://
orwww
prefix. - When you upload the file from Yandex.Disk by relative link, the data type is set to string for the input data fields.
"exception_msg": "unexpected end of file while reading quoted column beginning on line 2 and ending on line 4"
The string includes unpaired quotation mark.
Check that all quotation marks are escaped.
Description How to fix "parsing_error_of": "https://tlk.s3.yandex.net/wsdm2020/photos/2d5f63a3184919ce7e3e7068cf93da4b.jpg\t\t", "exception_msg": "the nameMapping array and the sourceList should be the same size (nameMapping length = 1, sourceList size = 3)"
Extra tabs
If the TSV file contains more
\t
column separators after the data or the link than the number of columns set in the input data, you will get en error message.For example, if 1 column is defined in the input, and two more
\t\t
tabs are added in the TSV file after the link, you get 3 columns, 2 of which are extra.Remove extra column separators in the above example — both
\t\t
characters."exception_msg": "the nameMapping array and the sourceList should be the same size (nameMapping length = 4, sourceList size = 6)"
The number of fields in the header and in the row doesn't match.
Make sure that:
- The number of tabs in the file structure is correct.
- String values with tab characters are enclosed in quotation marks
" "
.
"code": "VALUE_REQUIRED", "message": "Value must be present and not equal to null"
The value for a required input field is not specified. Make sure that columns with required input data fields are filled.
"code": "INVALID_URL_SYNTAX", "message": "Value must be in valid url format"
Invalid data in the URL field. Make sure that:- Links start with the
http://
,https://
orwww
prefix. - When you upload the file from Yandex.Disk by relative link, the data type is set to string for the input data fields.
"exception_msg": "unexpected end of file while reading quoted column beginning on line 2 and ending on line 4"
The string includes unpaired quotation mark.
Check that all quotation marks are escaped.
The number of tasks depends on how difficult and time-consuming the tasks are. Don't make task pages too large. They are unpopular, partly because they are inconvenient for performers (for example, if the internet connection is unstable).
result
match the line number of the uploaded file. Lines that were processed with an error have the status "success": false
.