Соискатель может загружать свои файлы. На данный момент это ограничивается изображениями для прикрепления их к резюме (фото и портфолио). На основном сайте этот сервис располагается в разделе настроек, пункт «изображения».
После этого в интерфейсе создания/редактирования резюме можно использовать эти изображения.
- Получение артефактов
- Загрузка артефакта
- Условия загрузки артефактов
- Редактирование артефакта
- Удаление артефакта
- Прикрепление фото/портфолио к резюме
GET /artifacts/photo
GET /artifacts/portfolio
Успешный ответ приходит с кодом 200 OK
и содержит:
{
"items": [
{
"id": "92278992",
"state": {
"id": "ok",
"name": "ok"
},
"small": "http://...",
"medium": "http://...",
"description": "..."
}
],
"found": 1,
"pages": 1,
"page": 0,
"per_page": 1
}
где для каждого элемента items
:
Имя | Тип | Описание |
---|---|---|
id | string | уникальный идентификатор изображения |
state | object | текущий статус изображения |
state.id | string | идентификатор текущего статуса изображения |
state.name | string | название текущего статуса изображения |
small | string или null | url для получения уменьшенного изображения или null, если изображение ещё не готово |
medium | string или null | url для получения среднего по размеру изображения или null, если изображение ещё не готово |
description | string | описание, в данный момент только у portfolio . |
Статусы изображений:
processing
— в процессе обработкиfailed
— ошибка, скорее всего неподдерживаемый форматok
— обработан, доступен для использования в резюме
403 Forbidden
– текущий пользователь не соискатель
POST /artifacts
Для загрузки файла необходимо отправить запрос multipart/form-data
cо
следующими параметрами:
Имя | Обязательный | Описание |
---|---|---|
type | да | тип артефакта: photo или portfolio |
description | нет | текстовое описание, имеет смысл для portfolio |
file | да | сам файл |
Ограничения на типы файлов и их размер доступны в условиях загрузки артефактов.
Успешный ответ приходит с кодом 201 Created
и содержит:
{
"id": "123456",
"medium": null,
"small": null,
"state": {
"id": "processing",
"name": "в обработке"
}
}
Поля ответа аналогичны полям элементов в списке артефактов.
403 Forbidden
– текущий пользователь не соискатель400 Bad Request
– ошибка в параметрах запроса или добавление изображения невозможно413 Request Entity Too Large
– слишком большое изображение
Дополнительно к HTTP коду сервер может вернуть описание причины ошибки.
Условия загрузки артефактов для каждого типа запрашиваются отдельно.
GET /artifacts/photo/conditions
GET /artifacts/portfolio/conditions
Успешный ответ приходит с кодом 200 OK
и содержит тело:
{
"fields": {
"description": {
"max_length": 255,
"min_length": 0,
"required": false
},
"file": {
"max_size": 6291456,
"mime_type": [
"image/jpeg",
"image/png",
"image/psd"
],
"required": true
},
"type": {
"required": true
}
},
"counters": {
"max": 20,
"uploaded": 2
}
}
Имя | Тип | Описание |
---|---|---|
description | object | условия для поля description |
description.required | boolean | является ли поле description обязательным |
description.max_length | number | максимальный размер текстового поля description |
description.min_length | number | минимальный размер текстового поля description |
file | object | условия для поля file |
file.max_size | number | максимальный размер файла |
file.mime_type | array | список допустимых MIME-типов файлов |
file.required | boolean | является ли поле file обязательным |
type | object | условия для поля type |
type.required | boolean | является ли поле type обязательным |
Имя | Тип | Описание |
---|---|---|
max | число | максимально возможное количество артефактов данного типа, которое можно загрузить |
uploaded | число | количество уже загруженных артефактов данного типа |
403 Forbidden
– текущий пользователь - не соискатель
PUT /artifacts/{id}
где id
- идентификатор артефакта.
Принимаемые параметры:
description
- текстовое описание изображения
Успешный ответ приходит с кодом 204 No Content
и не содержит тела.
403 Forbidden
– текущий пользователь не соискатель404 Not Found
– артефакт не существует или не принадлежит текущему пользователю400 Bad Request
– ошибка в параметрах запроса или добавление изображения невозможно
DELETE /artifacts/{id}
где id
- идентификатор артефакта.
Успешный ответ приходит с кодом 204 No Content
и не содержит тела.
403 Forbidden
– текущий пользователь не соискатель404 Not Found
– артефакт не существует или не принадлежит текущему пользователю
Для прикрепления загруженных изображений в резюме, необходимо передать id
артефакта в соответствующее поле резюме.
Для удаления из резюме укажите null
.