umk0/headhunter-api
用于与 hh.ru API 交互的 PHP 库
Requires
- php: >=5.6.0
- guzzlehttp/guzzle: ^7.8
Requires (Dev)
- codeclimate/php-test-reporter: ^0.3.0@dev
- mockery/mockery: 0.9.9
- phpunit/phpunit: ^5.7
This package is auto-updated.
Last update: 2024-09-13 13:54:13 UTC
README
提供对 HeadHunter (hh.ru) 服务的友好 API 接口。
官方 API 文档在此处可获取。
依赖项
需要 PHP 5.6 或更高版本。
安装
安装此库的推荐方式是通过Composer。您是 Composer 新手吗?了解Composer?
composer require umk0/headhunter-api
快速入门
// You may need to amend this path to locate composer's autoloader require('vendor/autoload.php'); use umk0\HeadHunterApi\Api; /** * Token is optional. Your need token only * for resources that require authentication */ $api = Api::create('YOUR_TOKEN'); $userInfo = $api->me->info();
您可以在没有令牌的情况下创建一个实例,稍后更改它。
$api = Api::create();
$api->setToken('YOUR_TOKEN');
API 资源
职位空缺
通过 ID 查看职位空缺(官方文档)
$vacancy = $api->vacancies->view($id);
获取当前职位的相似职位空缺(官方文档)
$similarVacancies = $api->vacancies->similar($id);
获取黑名单中的职位空缺(官方文档)
$blacklisted = $api->vacancies->blacklisted();
获取收藏的职位空缺列表(官方文档)
$vacancies = $api->vacancies->favorited(); // with pagination $vacancies = $api->vacancies->favorited(['page' => 2]);
搜索(官方文档)
$vacancies = $api->vacancies->search($params);
职位空缺统计(官方文档)
$stats = $api->vacancies->statistics($vacancyId);
雇主的活动职位空缺(官方文档)
$vacancies = $api->vacancies->active(); // you can specify a manager, by default uses current manager $vacancies = $api->vacancies->active($managerId); // with pagination $vacancies = $api->vacancies->active($managerId, ['page'=>2]);
雇主的存档职位空缺(官方文档)
$archived = $api->vacancies->archived(); // with pagination $archived = $api->vacancies->archived(['page'=>2]);
雇主的隐藏职位空缺(官方文档)
$hidden = $api->vacancies->hidden(); // with pagination $hidden = $api->vacancies->hidden(['page'=>2]);
隐藏职位空缺(官方文档)
$api->vacancies->hide($vacancyId);
恢复职位空缺(官方文档)
$api->vacancies->restore($vacancyId);
雇主
通过 ID 查看员工(官方文档)
$employee = $api->employers->view($id);
搜索(官方文档)
$employers = $api->employers->search($params);
雇主经理
参考类型和经理的权限(官方文档)
$reference_type = $api->employers->getManagerTypes(); $reference_type = $api->employers->getManagerTypes($employerId);
不使用参数时,您的雇主 ID 将自动从您的个人资料中解析出来
获取雇主经理(官方文档)
$managers = $api->employers->getManagers(); $managers = $api->employers->getManagers($employerId); $managerWhoHasVacancies = $api->employers->getManagersWhoHasVacancies(); $managerWhoHasVacancies = $api->employers->getManagersWhoHasVacancies($employerId);
不使用参数时,您的雇主 ID 将自动从您的个人资料中解析出来
获取经理信息(官方文档)
$managers = $api->employers->getManager($managerId); $managers = $api->employers->getManager($managerId, $employerId);
不使用参数时,您的雇主 ID 将自动从您的个人资料中解析出来
成果
获取您的照片(官方文档)
$photos = $api->artifacts->photos();
获取您的作品集(官方文档)
$portfolio = $api->artifacts->portfolio();
通过id删除照片(官方文档)
$api->artifacts->deletePhoto($photoId);
编辑照片属性(官方文档)
$api->artifacts->editPhoto($photoId, $attributes);
上传照片(官方文档)
$api->artifacts->uploadPhoto('photo.jpg', 'my picture description');
上传作品集(官方文档)
$api->artifacts->uploadPortfolio('portfolio.jpg', 'my portfolio description');
用户
获取当前用户信息(官方文档)
$info = $api->me->info();
更新姓名(姓、名、中间名)。所有参数都是必需的(官方文档)
$api->me->editName($lastName, $firstName, $middleName);
更新标志 'is_in_search'(官方文档)
$isInSearch = true; // or false; $api->me->setIsInSearch($isInSearch);
通过managerId管理偏好。您可以从返回的user对象中获取您的managerId,该对象来自 $api->me->info()
。当不带参数使用时,您的managerId将自动从您的个人资料中解析出来(官方文档)。
$me = $api->me->info(); $managerId = $me['manager']['id']; $preferences = $api->manager->preferences($managerId); // automatically get manager id from your profile $preferences = $api->manager->preferences($managerId);
应聘者评论
获取所有关于应聘者的评论(官方文档)
$comments = $api->comments->view($applicantId);
创建评论(官方文档)。您需要应聘者id来创建评论。应聘者id可以从简历中获取
$resumeInfo = $api->resume->view($resumeId); $applicantCommentsUrl = $resumeInfo['owner']['comments']['url']; // https://api.hh.ru/applicant_comments/2743747 // You need to parse id from this url // Create a comment, that is visible for coworkers $result = $api->comments($applicantId, 'my comment'); // Create a comment, that is visible only for you $result = $api->createPrivate($applicantId, 'my comment');
编辑评论(官方文档)
// Edit a comment, that is visible for coworkers $api->comments->edit($applicantId, $commentId, 'new comment text') // Edit a comment, that is visible only for you $result = $api->editPrivate($applicantId, $commentId, 'new comment text');
删除评论(官方文档)
$api->comments->delete($applicantId, $commentId);
行业
获取所有行业(官方文档)
$industries = $api->industries->all();
员工谈判
获取所有谈判(官方文档)
$negotiations = $api->negotiations->all();
仅获取活跃的谈判(官方文档)
$negotiations = $api->negotiations->active();
查看消息列表。
$api->negotiations->messages($negotiationId); // with pagination $api->negotiations->messages($negotiationId, ['page'=>2]);
发送新消息。
$api->negotiations->message($negotiationId, $messageText);
获取对(官方文档)的响应/邀请列表
$responses = $api->negotiations->invited($vacancyId);
有几种邀请类型。对于每一种,您可以将分页数组作为第二个参数传递
响应
$responses = $api->negotiations->invitedResponses($vacancyId); // with pagination $responses = $api->negotiations->invitedResponses($vacancyId, ['page'=>2]);
考虑
$toConsider = $api->negotiations->invitedConsider($vacancyId);
电话面试
$phoneInterviews = $api->negotiations->invitedPhoneInterviews($vacancyId);
评估
$assessments = $api->negotiations->invitedAssessments($vacancyId);
面试
$interviews = $api->negotiations->invitedInterviews($vacancyId);
报价
$offers = $api->negotiations->invitedOffers($vacancyId);
已雇佣
$hired = $api->negotiations->invitedHired($vacancyId);
雇主拒绝
$discard = $api->negotiations->invitedDiscardByEmployer($vacancyId);
通过id查看响应/邀请。NegotiationId可以从响应中key url中获取。 (官方文档)
$response = $api->negotiations->view($negotiationId);
地区
获取所有地区(官方文档)
$regions = $api->regions->all();
简历
获取我的简历(官方文档)
$resumes = $api->resumes->mine();
查看简历(官方文档)
$views = $api->resumes->view($resumeId);
编辑简历(《官方文档》)
$api->resumes->edit($resumeId, ['first_name' => 'New name']);
创建新简历(《官方文档》)
$attributes = ['first_name' => 'New name']; $result = $api->resumes->create($attributes);
查看历史(《官方文档”)
$views = $api->resumes->views($resumeId); // with pagination $views = $api->resumes->views($resumeId, ['page'=>2]);
谈判历史(《官方文档”)
$negotiations = $api->resumes->negotiations($resumeId); // with pagination $negotiations = $api->resumes->negotiations($resumeId, ['page' => 2]);
更新简历发布日期(《官方文档”)
$api->resumes->publish($resumeId);
获取简历条件(《官方文档”)
$conditions = $api->resumes->conditions($resumeId);
删除简历(《官方文档”)
$api->resumes->delete($resumeId);
获取当前状态(如果被封锁或准备好发布)(《官方文档”)
$status = $api->resumes->status($resumeId);
获取简历推荐工作(《官方文档”)
$jobs = $api->resumes->jobs($resumeId) // with pagination $jobs = $api->resumes->jobs($resumeId, ['page' => 2])
简历可见性
获取简历黑白名单
$blackList = $api->resumes->getBlackList($resumeId); // ... $whiteList = $api->resumes->getWhiteList($resumeId);
将公司添加到黑白名单
$api->resumes->addToBlackList($resumeId, $companyId); // ... $api->resumes->addToWhiteList($resumeId, $companyId);
从黑白名单中删除公司
$api->resumes->removeFromBlackList($resumeId, $companyId); // ... $api->resumes->removeFromWhiteList($resumeId, $companyId);
清除黑白名单
$api->resumes->clearBlackList($resumeId); // ... $api->resumes->clearWhiteList($resumeId);
在黑白名单中搜索
$companies = $api->resumes->searchInBlackList($resumeId, 'some-key-word'); //... $companies = $api->resumes->searchInWhiteList($resumeId, 'some-key-word');
在黑白名单中搜索
已保存的搜索
列出搜索(《官方文档”)
$searches = $api->savedSearches->all();
获取一个搜索(《官方文档”)
$searches = $api->savedSearches->view($searchId);
专长
获取所有专业(《官方文档”)
$specializations = $api->specializations->all();
字典
获取API中使用的实体列表(《官方文档”)
$dictionaries = $api->dictionaries->all();
建议
教育机构(《官方文档”)
$suggests = $api->suggests->educational_institutions($text);
公司(《官方文档”)
$suggests = $api->suggests->companies($text);
专业(《官方文档”)
$suggests = $api->suggests->fieldsOfStudy($text);
关键技能(《官方文档”)
$suggests = $api->suggests->skillSet($text);
职位(《官方文档”)
$suggests = $api->suggests->positions($text);
地区(《官方文档”)
$suggests = $api->suggests->areas($text);
职位搜索关键词提示(《官方文档”)
$suggests = $api->suggests->vacancySearchKeyword($text);
地铁
获取所有城市的所有地铁站(《官方文档”)
$stations = $api->metro->all();
特定城市地铁站和线路列表(《官方文档”)
$stations = $api->metro->forCity($cityId);
语言
获取可用语言(《官方文档”)
$languages = $api->languages->all();
院系
获取教育机构院系列表(《官方文档”)。使用从教育机构建议中获得的institutionId。
$faculties = $api->faculties->forInstitution($institutionId);
自定义请求(《官方文档”)
区域
您可以为您的要求设置区域,结果将以所选区域返回。默认设置为RU
(《官方文档”)
$api->setLocale('EN'); // chain methods $api->setLocale('EN') ->me ->info();
主机
从HeadHunter集团的不同网站获取数据。(官方文档)
$api->setHost('hh.kz'); // chain methods $api->setHost('hh.kz') ->me ->info();