Shine.com 职位搜索数据 API
Shine.com Job Search App 是 HT Media Limited 为 Shine.com 推出的安卓应用;Shine.com 是《印度斯坦时报》(Hindustan Times)出版方旗下的印度招聘门户。求职者用发送到手机或邮箱的一次性验证码登录,可按雇佣类型、职能领域、行业、经验、薪资区间、职位类型、班次和地点筛选职位,并在职位详情页查看职位描述、所需技能、薪资、招聘人数和招聘方姓名,页面下方还有“相似职位”推荐条。看中的职位可以先收藏;雇主还可设置筛选问题(如通知期、是否愿意在某城市工作),在投递前弹出作答。首页分为 Flash openings、Recommended jobs、Your activity 和 Last applied 几个区块;“完善资料”流程可根据上传的简历预填工作经历、技能和教育背景;“资料表现”页展示资料完整度、招聘方兴趣与跟进情况;已保存的职位订阅可随时查看和删除。Shine.com 面向印度求职者,与 Naukri、foundit(原 Monster India)、TimesJobs、Indeed 和 LinkedIn 争夺寻找受薪岗位的候选人。
按 Lacs 报出的薪资区间(jSal)与卢比数值区间(jSLA)出现在每张搜索结果卡片上,与之并列的还有职位名 jJT、雇主 jCName、地点 jLoc、经验区间 jExp、发布日期 jPDate、招聘人数 jVanc、投递人数 jACnt、技能关键词 jKwds 和 premium_job_flag,列表可按 emp_type、farea、fexp、fsalary 与 shift_type 切分。完整职位再补上 job_description、job_skills、recruiter_name 和 recruiter_email;雇主筛选问题 questions 带有作答类型 type 和 required 必答标记。
候选人一侧,登录后的资料记录包含 current_annual_salary、expected_salary、notice_period、total_work_experience、key_skills、functional_area、education_history、linkedin_url 与 actively_looking;上传的简历返回为 resume_parsed_data,并带 resume_timestamp 时间戳;招聘方兴趣则通过 profileStrength、searchImpressions、profileViews、interestedRecruiters 和 recruiterFollowUps 量化,动态流里还有逐个职位的 is_applied、is_shortlisted 与 jExpDate。已保存的职位订阅沿用同一套筛选条件,从 job_title、location 到 fsalary,外加 active 开关。
劳动力市场管道可把卡片字段存成按职能领域和经验划分的印度职位与薪资区间实时普查;HRIS 工具可把期望薪资、通知期、技能、简历 ID 和 LinkedIn 链接挂到现有申请人记录上;ATS 机器人可把投递与收藏状态、发布与截止日期映射进面试阶段看板,并叠加资料完整度和感兴趣招聘方数量;入职流程则可从解析后的简历回填职位名、雇主、技能、经验和教育背景,免去空白的完善资料表单。openData Studio 把这些 Shine.com 职位、候选人与招聘方动态记录变成可调用的开放数据,支撑上述集成。
应用截图
API 端点一览
以下端点与请求/响应示例均依据应用界面推导重构,为示意说明,并非实际抓包。
搜索职位
GET
/v1/jobs/srpopendata返回经筛选的 Shine.com 职位列表(jJT 标题、jCName 雇主、jLoc、jSal/jSLA 薪资、jExp、jVanc 招聘人数、is_applied/is_shortlisted),供职位搜索结果页使用。
认证方式: 可选的 Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。匿名搜索仍会发送 device=app。
- jobs
- jCID
- jJT
- jJT_slug
- jCName
- jCName_slug
- jCUID
- jLoc
- jExp
- jSal
- jSLA
- jPDate
- jJobType
- jEType
- jTypeC
- jVanc
- jACnt
- jKwds
- jRUrl
- jSlug
- jPJ
- jHJ
- is_applied
- is_shortlisted
- highlighted
- premium_job_flag
- emp_type
- farea
- fcid
- fexp
- findustry
- fsalary
- job_type
- shift_type
- sort
- device
GET /v1/jobs/srp?q=software+engineer&location=Bengaluru&emp_type=full-time&farea=it&fcid=12&fexp=3-6&findustry=it&fsalary=8-12&job_type=permanent&shift_type=day&sort=relevance&device=app HTTP/1.1 Accept: application/json Authorization: Bearer <accessToken>{ "jobs": [{ "jCID": "87123456", "jJT": "Software Engineer", "jJT_slug": "software-engineer", "jCName": "Example Corp", "jCName_slug": "example-corp", "jCUID": "comp-441", "jLoc": "Bengaluru", "jExp": "3-6 Yrs", "jSal": "8-12 Lacs", "jSLA": "800000-1200000", "jPDate": "2026-09-24", "jJobType": "Permanent", "jEType": "Full Time", "jTypeC": "IT", "jVanc": 4, "jACnt": 86, "jKwds": ["Java", "Spring"], "jRUrl": "https://www.shine.com/jobs/software-engineer/87123456", "jSlug": "software-engineer-example-corp-bengaluru", "jPJ": true, "jHJ": false, "is_applied": false, "is_shortlisted": false, "highlighted": true, "premium_job_flag": true }], "count": 1284 }获取职位详情
GET
/v1/jobs/detailopendata为职位详情页水合单个 Shine.com 职位(job_description、job_skills、薪资、招聘人数、recruiter_name/recruiter_email),含投递/收藏标记。
认证方式: 可选的 Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。个性化标记(is_applied、is_shortlisted)需要登录的 candidate_id。
- jobId
- job_id
- jCID
- job_title
- jJT
- job_description
- job_skills
- company_name
- company_id
- jLoc
- jExp
- jSal
- jVanc
- job_postedDate
- jPDate
- job_type
- emp_type
- shift_type
- recruiter_name
- recruiter_email
- premium_job_flag
- is_applied
- is_shortlisted
- jACnt
GET /v1/jobs/detail?jobId=87123456 HTTP/1.1 Accept: application/json Authorization: Bearer <accessToken>{ "job_id": "87123456", "jCID": "87123456", "job_title": "Software Engineer", "jJT": "Software Engineer", "job_description": "<p>Build marketplace services in Bengaluru.</p>", "job_skills": ["Java", "Spring", "SQL"], "company_name": "Example Corp", "company_id": "comp-441", "jLoc": "Bengaluru", "jExp": "3-6 Yrs", "jSal": "8-12 Lacs", "jVanc": 4, "job_postedDate": "2026-09-24", "jPDate": "2026-09-24", "job_type": "Permanent", "emp_type": "full-time", "shift_type": "day", "recruiter_name": "Priya Sharma", "recruiter_email": "[email protected]", "premium_job_flag": true, "is_applied": false, "is_shortlisted": false, "jACnt": 86 }相似职位
GET
/v1/jobs/similaropendata为职位详情页的“相似职位”条返回相似 Shine.com 职位,使用与搜索相同的 jCID/jJT/jCName/jSal 卡片字段。
认证方式: 可选的 Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。
- jobs
- jCID
- jJT
- jCName
- jLoc
- jExp
- jSal
- jPDate
- jJobType
- is_applied
- is_shortlisted
- jobId
GET /v1/jobs/similar?jobId=87123456 HTTP/1.1 Accept: application/json Authorization: Bearer <accessToken>{ "jobs": [{ "jCID": "87129901", "jJT": "Backend Engineer", "jCName": "Example Labs", "jLoc": "Bengaluru", "jExp": "2-5 Yrs", "jSal": "7-11 Lacs", "jPDate": "2026-09-22", "jJobType": "Permanent", "is_applied": false, "is_shortlisted": false }] }发送登录 OTP
POST
/v1/auth/otp/sendosint在校验步骤之前,向候选人手机发送 Shine.com 登录 OTP(或通过姊妹邮箱 OTP 调用发送至邮箱)。
认证方式: 无需认证。启动手机/邮箱 OTP 登录,随后调用 POST /v1/auth/otp/login。
- phone
- device
- status
- channel
- sessionId
- message
POST /v1/auth/otp/send HTTP/1.1 Content-Type: application/json Accept: application/json { "phone": "9876543210", "email": "[email protected]", "device": "app" }{ "status": "otp_sent", "channel": "sms", "sessionId": "sess-9f3a", "message": "OTP sent" }JWT 手机登录(校验 OTP)
POST
/v1/auth/otp/loginosint把手机 OTP 换成令牌对(accessToken、refreshToken)与 candidate_id,供后续所有资料、投递与招聘方动态调用使用。
认证方式: 无需认证的 OTP 交换。后续调用携带 Authorization: Bearer <accessToken>。重复账号选择器使用同一手机号。
- phone
- otp
- sessionId
- device
- accessToken
- refreshToken
- candidate_id
- candidateId
- isProfileComplete
POST /v1/auth/otp/login HTTP/1.1 Content-Type: application/json Accept: application/json { "phone": "9876543210", "otp": "482193", "sessionId": "sess-9f3a", "device": "app" }{ "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "refreshToken": "rt_8c1e2b...", "candidate_id": "cand-1001", "candidateId": "cand-1001", "isProfileComplete": false }获取聚合候选人资料
GET
/v1/profile/aggregateosint加载完善资料所用的登录 Shine.com 候选人记录:身份信息、当前/期望薪资、notice_period、技能、resumeId 及 LinkedIn/头像 URL。
认证方式: Bearer JWT(accessToken),来自 POST /v1/auth/otp/login,根植于登录的 candidate_id。
- candidate_id
- personalDetails
- firstName
- lastName
- phone
- current_city
- current_location
- current_annual_salary
- current_salary
- expected_salary
- total_work_experience
- yearsOfExperience
- notice_period
- last_working_date
- currently_pursuing
- key_skills
- functional_area
- industry
- resumeId
- profile_picture_url
- linkedin_url
- education_history
- grading_system
- actively_looking
GET /v1/profile/aggregate HTTP/1.1 Accept: application/json Authorization: Bearer <accessToken>{ "candidate_id": "cand-1001", "personalDetails": { "firstName": "Ada", "lastName": "Sharma", "email": "[email protected]", "phone": "9876543210" }, "current_city": "Bengaluru", "current_location": "Whitefield", "current_annual_salary": 1200000, "current_salary": 100000, "expected_salary": 1500000, "total_work_experience": 4.5, "yearsOfExperience": 4, "notice_period": 30, "last_working_date": null, "currently_pursuing": false, "key_skills": ["Java", "Spring"], "functional_area": "Software Engineering", "industry": "IT", "resumeId": "resume-9", "profile_picture_url": "https://cdn.example.com/ada.png", "linkedin_url": "https://www.linkedin.com/in/ada-sharma", "education_history": [{"institute": "NITK", "grading_system": "CGPA"}], "actively_looking": true }解析上传的简历
POST
/v1/profile/resume/parseosint把上传的简历解析为 resume_parsed_data(job_title、company_name、key_skills、total_work_experience、education_history),供完善资料/上传简历流程使用。
认证方式: Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。multipart 简历上传。
- resumeId
- resume_timestamp
- resume_parsed_data
- job_title
- company_name
- key_skills
- total_work_experience
- education_history
- grading_system
- currently_pursuing
- current_city
POST /v1/profile/resume/parse HTTP/1.1 Authorization: Bearer <accessToken> Content-Type: multipart/form-data; boundary=----ShineBoundary ------ShineBoundary Content-Disposition: form-data; name="resume"; filename="ada-cv.pdf" Content-Type: application/pdf <binary> ------ShineBoundary--{ "resumeId": "resume-9", "resume_timestamp": "2026-09-27T08:12:00Z", "resume_parsed_data": { "job_title": "Software Engineer", "company_name": "Example Corp", "key_skills": ["Java", "Spring"], "total_work_experience": 4.5, "education_history": [{"institute": "NITK", "grading_system": "CGPA"}], "currently_pursuing": false, "current_city": "Bengaluru" } }首页架构(Nova Home)
GET
/v1/pages/home/schemaopendata返回应用的首页架构(flash_openings、recommended_jobs、your_activity、last_applied),注册后及每次加载首页时使用。
认证方式: 可选的 Bearer JWT。个性化模块发送 candidate_id;匿名调用发送 device=app。
- device
- candidate_id
- page_type
- home_page
- sections
- flash_openings
- recommended_jobs
- your_activity
- last_applied
- jCID
- jJT
- jCName
- is_applied
- JFY
- JD
- JSRP
- DRM
- dashboard
GET /v1/pages/home/schema?device=app&candidate_id=cand-1001 HTTP/1.1 Accept: application/json Authorization: Bearer <accessToken>{ "page_type": "home_page", "sections": [ {"id": "flash_openings", "title": "Flash openings", "jobs": [{"jCID": "87123456", "jJT": "Software Engineer", "jCName": "Example Corp"}]}, {"id": "recommended_jobs", "title": "Recommended jobs", "jobs": [{"jCID": "87129901", "jJT": "Backend Engineer"}]}, {"id": "your_activity", "title": "Your activity"}, {"id": "last_applied", "title": "Last applied", "jobs": [{"jCID": "87120001", "is_applied": true}]} ] }资料表现架构
GET
/v1/pages/profile-insights/schemaosint加载候选人洞察页展示的资料表现仪表盘(资料完整度、招聘方兴趣、跟进)。
认证方式: Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。
- candidate_id
- profileStrength
- searchImpressions
- profileViews
- interestedRecruiters
- recruiterFollowUps
GET /v1/pages/profile-insights/schema HTTP/1.1 Accept: application/json Authorization: Bearer <accessToken>{ "candidate_id": "cand-1001", "profileStrength": 72, "searchImpressions": 128, "profileViews": 17, "interestedRecruiters": 6, "recruiterFollowUps": 2 }列出/删除职位订阅
GET
/v1/job-alertsopendata列出候选人保存的 Shine.com 职位订阅(标题、地点、emp_type、farea、薪资区间),供职位订阅页使用;姊妹删除调用移除订阅。
认证方式: Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。删除使用姊妹调用 DELETE /v1/job-alerts/delete。
- alerts
- id
- job_title
- location
- emp_type
- farea
- fexp
- fsalary
- shift_type
- active
GET /v1/job-alerts HTTP/1.1 Accept: application/json Authorization: Bearer <accessToken>{ "alerts": [{ "id": "alert-22", "job_title": "Software Engineer", "location": "Bengaluru", "emp_type": "full-time", "farea": "it", "fexp": "3-6", "fsalary": "8-12", "shift_type": "day", "active": true }] }收藏职位
POST
/v1/jobs/shortlistopendata为登录候选人把 Shine.com 职位标记为收藏(is_shortlisted),每次调用最多 20 个 jobIds。
认证方式: Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。jobIds 数组不超过 20 项。
- jobIds
- candidate_id
- jCID
- is_shortlisted
POST /v1/jobs/shortlist HTTP/1.1 Authorization: Bearer <accessToken> Content-Type: application/json { "jobIds": ["87123456"], "candidate_id": "cand-1001" }{ "jCID": "87123456", "is_shortlisted": true, "jobIds": ["87123456"] }招聘方动态(候选人响应更新)
POST
/v1/profile/recruiter-activityosint返回针对该候选人的招聘方动态(浏览/收藏/投递的职位,含 jCID、jCName、is_applied、is_shortlisted),供“你的动态”/招聘方动态面板使用。
认证方式: Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。
- candidate_id
- period
- activities
- jCID
- jJT
- jCName
- jCType
- jKwds
- jExp
- jLoc
- jRUrl
- jPDate
- jExpDate
- jJobType
- jEType
- jVanc
- jSLA
- is_applied
- is_shortlisted
- highlighted
- ftcid
- jCUID
- jWLC
- jWSD
- jWLocID
POST /v1/profile/recruiter-activity HTTP/1.1 Authorization: Bearer <accessToken> Content-Type: application/json { "candidate_id": "cand-1001", "period": "7d" }{ "activities": [{ "jCID": "87123456", "jJT": "Software Engineer", "jCName": "Example Corp", "jCType": "IT", "jKwds": ["Java"], "jExp": "3-6 Yrs", "jLoc": "Bengaluru", "jRUrl": "https://www.shine.com/jobs/software-engineer/87123456", "jPDate": "2026-09-24", "jExpDate": "2026-10-24", "jJobType": "Permanent", "jEType": "Full Time", "jVanc": 4, "jSLA": "800000-1200000", "is_applied": true, "is_shortlisted": false, "highlighted": true, "ftcid": "comp-441" }] }投递前问卷
GET
/v1/jobs/questionnaireopendata加载 Shine.com 投递前展示的雇主筛选问题(通知期、地点、自定义是/否)。
认证方式: Bearer JWT(accessToken),来自 POST /v1/auth/otp/login。当职位含筛选问题时在投递前展示。
- jobId
- questions
- id
- text
- type
- required
GET /v1/jobs/questionnaire?jobId=87123456 HTTP/1.1 Accept: application/json Authorization: Bearer <accessToken>{ "jobId": "87123456", "questions": [{ "id": "q-1", "text": "Are you willing to work from Bengaluru?", "type": "yes_no", "required": true }, { "id": "q-2", "text": "Current notice period (days)", "type": "number", "required": true }] }
数据类别
- 职位列表
- 职位详情
- 候选人资料
- 简历
- 投递申请
- 招聘方动态
- 登录会话
数据使用场景与案例
印度职位市场普查
劳动力市场管道可轮询 GET /v1/jobs/srp(带 emp_type、farea、fexp、fsalary、location、shift_type),并存储 jCID、jJT、jCName、jLoc、jSal/jSLA、jExp、jVanc 与 premium_job_flag,构建实时 Shine.com 职位目录。
候选人 CRM 增强
HRIS 工具可在 OTP 登录后调用 GET /v1/profile/aggregate,把 personalDetails、current_annual_salary、expected_salary、notice_period、key_skills、resumeId、linkedin_url 与 profile_picture_url 挂到现有申请人记录上。
招聘方动态同步
ATS 机器人可 POST /v1/profile/recruiter-activity,把 is_applied、is_shortlisted、jCName、jPDate、jExpDate 映射进面试阶段看板,再叠加 GET /v1/pages/profile-insights/schema 的 profileStrength 与 interestedRecruiters。
简历解析为结构化资料
入职流程可把 PDF 上传至 /v1/profile/resume/parse,从 resume_parsed_data 水合 job_title、company_name、key_skills、total_work_experience 与 education_history,替代空白的完善资料表单。
常见问题
Shine.com 搜索返回哪些职位字段?
GET /v1/jobs/srp 返回紧凑卡片字段:jCID、jJT(标题)、jCName(雇主)、jLoc、jExp、jSal/jSLA(薪资)、jPDate、jVanc(招聘人数)、jACnt(投递人数)、is_applied、is_shortlisted 与 premium_job_flag。筛选参数含 emp_type、farea、fexp、fsalary、job_type、location 与 shift_type。
候选人如何登录认证?
应用先把手机号提交到 /v1/auth/otp/send,再在 /v1/auth/otp/login 校验 OTP,换取 accessToken、refreshToken 与 candidate_id。后续请求发送 Authorization: Bearer <accessToken>。
能否读取候选人资料与简历解析?
可以。GET /v1/profile/aggregate 返回 personalDetails、current_annual_salary、expected_salary、notice_period、key_skills、resumeId 与 linkedin_url。POST /v1/profile/resume/parse 则从上传的简历以 resume_parsed_data 填充这些字段。
招聘方浏览与职位订阅在哪里?
POST /v1/profile/recruiter-activity 列出招聘方动态(is_applied、is_shortlisted、jCName)。GET /v1/pages/profile-insights/schema 暴露 profileStrength 与 interestedRecruiters。GET /v1/job-alerts 列出已保存的订阅。
与 Shine.com Job Search App 相似的应用
- Naukri: Job Search App — Naukri 是印度偏招聘方的职位板,覆盖 IT、银行保险、制造业等行业的批量招聘,并提供筛选、提醒和直接联系招聘方。
- Indeed Job Search — Indeed 把公司网站、中介和其他招聘板上的印度职位汇总到同一搜索里,求职者可一键投递而无需跳转。
- LinkedIn: Community & Network — LinkedIn 既是职业社交网络也是招聘入口,在印度更多用于基于资料向招聘经理直接联系,而不是只靠关键词搜索。
- apna - Search Job, Vacancy App — apna 是面向印度二三线城市和蓝领招聘的手机优先求职应用,支持地区语言,并可直接与雇主聊天。
- foundit — foundit.in 是原 Monster India 改名后的招聘站,以 AI 职位匹配为主,并提供简历和面试辅助,面向中层岗位。
- TimesJobs — TimesJobs 是印度时报集团的招聘板,特色是在民营岗位之外设有专门的政府职位栏目。
- Internshala — Internshala 以印度实习为主并延伸到应届岗位,为学生和第一份工作求职者提供课程和面向 ATS 的简历工具。
相关主题
- Shine.com API
- Shine 职位搜索 API
- Shine 职位端点
- jCID jJT jCName jSal
- 候选人资料 API
- 简历解析 API
- OTP 登录 JWT
- Shine 招聘方动态
需要集成这个 App 的数据 API?
我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。
- 每个项目均签 NDA 与 SOW
- 3–7 天交付
- 验收通过后才付款
- 仅在授权范围内作业