Список вакансий
Получение списка вакансий
Список вакансий можно получить, выполнив следующий запрос:
- graphql
- cURL
query VacancyList {
vacancies {
items {
id
title
department
createdAt
status
salary {
currency
from
to
}
}
pageInfo {
endCursor
}
}
}
curl https://api.talantix.ru/graphql \
-X POST \
-H "Content-Type: application/json" \
-H "User-Agent: api-doc-agent" \
-H "Authorization: Bearer <your access token>" \
-d "{\"query\":\"query VacancyList {\\n vacancies {\\n items {\\n id\\n title\\n department\\n createdAt\\n status\\n salary {\\n currency\\n from\\n to\\n }\\n }\\n pageInfo {\\n endCursor\\n }\\n }\\n}\"}"
примечание
VacancyItem - список доступных полей вакансии
Результат выполнения запроса
{
"data": {
"vacancies": {
"items": [
{
"id": 55679,
"title": "Первая вакансия",
"department": "Бухгалтерия",
"createdAt": 1718287569000,
"status": "archive",
"salary": {
"currency": "RUR",
"from": 50000,
"to": 75000
}
},
{
"id": 159272,
"title": "Вторая вакансия",
"department": "Лесничество",
"createdAt": 1718287569000,
"status": "active",
"salary": {
"currency": "RUR",
"from": 100000,
"to": 120000
}
}
],
"pageInfo": {
"endCursor": "MTU5MjcyfDE="
}
}
}
}
Фильтрация списка вакансий
Фильтрация добавляется в запрос с помощью аргумента filter. Ниже представлен пример запроса с фильтрацией по статусу вакансии и департаменту:
- graphql
- cURL
query VacancyListFilter {
vacancies(filter: {vacancyStatus: ACTIVE, departments: ["Лесничество"]}) {
items {
id
title
department
status
salary {
currency
from
to
}
}
pageInfo {
endCursor
}
}
}
curl https://api.talantix.ru/graphql \
-X POST \
-H "Content-Type: application/json" \
-H "User-Agent: api-doc-agent" \
-H "Authorization: Bearer <your access token>" \
-d "{\"query\":\"query VacancyListFilter {\\n vacancies(filter: {vacancyStatus: ACTIVE, departments: [\\\"Лесничество\\\"]}) {\\n items {\\n id\\n title\\n department\\n status\\n salary {\\n currency\\n from\\n to\\n }\\n }\\n pageInfo {\\n endCursor\\n }\\n }\\n}\"}"
Результат запроса
{
"data": {
"vacancies": {
"items": [
{
"id": 159272,
"title": "Вторая вакансия",
"department": "Лесничество",
"status": "active",
"salary": {
"currency": "RUR",
"from": 100000,
"to": 120000
}
}
],
"pageInfo": {
"endCursor": "NTU2Nzl8MQ=="
}
}
}
}
Пагинация по списку вакансий
Чтобы запросить следующую страницу по списку, нужно использовать курсор для аргумента after
в запросе vacancies.
- graphql
- cURL
query VacancyListPagination {
vacancies(
after: "NTU2Nzl8MQ=="
first: 1
filter: {vacancyStatus: ACTIVE, departments: ["Лесничество"]}
) {
items {
id
title
department
status
salary {
currency
from
to
}
}
pageInfo {
endCursor
}
}
}
curl https://api.talantix.ru/graphql \
-X POST \
-H "Content-Type: application/json" \
-H "User-Agent: api-doc-agent" \
-H "Authorization: Bearer <your access token>" \
-d "{\"query\":\"query VacancyListPagination {\\n vacancies(\\n after: \\\"NTU2Nzl8MQ==\\\"\\n first: 1\\n filter: {vacancyStatus: ACTIVE, departments: [\\\"Лесничество\\\"]}\\n ) {\\n items {\\n id\\n title\\n department\\n status\\n salary {\\n currency\\n from\\n to\\n }\\n }\\n pageInfo {\\n endCursor\\n }\\n }\\n}\"}"
подсказка
Пагинация - подробное описание работы пагинации
подсказка
Количество запрашиваемых вакансий можно ограничить с помощью аргумента first
Результат запроса
{
"data": {
"vacancies": {
"items": [
{
"id": 159273,
"title": "Третья вакансия",
"department": "Лесничество",
"status": "active",
"salary": {
"currency": "RUR",
"from": 90000,
"to": 100000
}
}
],
"pageInfo": {
"endCursor": "MTkyMjcyfDEy"
}
}
}
}