Computrabajo 数据 API:职位、简历与投递进度
Computrabajo Ofertas de Empleo 是 DGNET LTD. 面向西班牙与拉美求职者的西语招聘应用。求职者先选择国家门户(西班牙、墨西哥、阿根廷、智利及其他西语市场),按关键词、城市、合同类型与薪资带搜索 ofertas,打开含公司资料、职位描述、福利与筛选(killer)问题的职位页,并用应用内简历投递——覆盖工作经历、教育、技能、语言、求职信与可选视频介绍。投递后,「Mis postulaciones」跟踪每条申请,「Empresas que han visto tu CV」列出打开过简历的招聘方,聊天收件箱承载招聘方消息,已保存搜索与职位提醒持续推送新匹配。收藏、关注公司与公司评价环绕这一闭环。DGNET Ltd.(公司编号 189977)发布该 Android 客户端;它在西班牙与 InfoJobs、在墨西哥与 OCC、在阿根廷与 Bumeran 竞争,属于分类招聘板而非自由职业市场。
职位记录以 jobOfferId 为键,携带 jobTitle、companyName、salaryMin/salaryMax、contractType、locationName、HasKillerQuestions 与 isApplied——搜索、按职业推荐与相似职位轮播都共用同一张卡片。登录后的投递列表补上 applicationId、applicationStatusId 与 applicationDate;简历返回 curriculumId、jobExperienceId、skills、resumeVisibility 与 employabilityIndex;招聘方浏览行暴露 companyId、totalViews 与 totalProfileVisits。
ATS 与劳动力市场工具可以分页职位流、按筛选问题给简历打分、观察谁打开过资料,并同步提醒条件。openData Studio 把这一接口面变成可调用的开放数据。
应用截图
API 端点一览
以下端点与请求/响应示例均依据应用界面推导重构,为示意说明,并非实际抓包。
OpenID Connect 令牌
POST
/oauth/tokenosint把 OpenID 授权码(或 refresh_token)换成后续候选人 REST 调用作为 Bearer 携带的 accessToken。
认证方式: 无需登录。授权码授予(或 grant_type=refresh_token)。后续 REST 调用发送 Authorization: Bearer <accessToken>、X-Portal-Id、X-XSRF-TOKEN 与 X-Version-Id。
- grant_type
- code
- client_id
- scope
- access_token
- refresh_token
- id_token
- accessToken
- refreshToken
- idToken
POST /oauth/token HTTP/1.1 Content-Type: application/x-www-form-urlencoded X-Portal-Id: es grant_type=authorization_code&code=<auth-code>&client_id=<mobile-client-id>&scope=openid%20offline_access{ "access_token": "<accessToken>", "refresh_token": "<refreshToken>", "id_token": "<idToken>", "accessToken": "<accessToken>", "refreshToken": "<refreshToken>", "idToken": "<idToken>", "scope": "openid offline_access" }门户配置
GET
/v1/portals/currentopendata返回当前国家门户元数据,后续 REST 调用通过 X-Portal-Id 带上它。
认证方式: 可选的 Bearer accessToken。X-Portal-Id 选择国家站点(es、mx、ar、cl 等)。
- portalId
- portalName
- PortalCode
- PortalCurrency
- CountryIsoCode
- locale
- src_portal_url
- src_portal_site
- src_portal_site_id
- src_portal_domain
GET /v1/portals/current HTTP/1.1 X-Portal-Id: es X-Version-Id: 4.0.5 X-PLATFORM-ID: android Accept: application/json{ "portalId": "es", "portalName": "España", "PortalCode": "es", "PortalCurrency": "EUR", "CountryIsoCode": "ES", "locale": "es-ES", "src_portal_url": "https://portal.example", "src_portal_site": "portal.example", "src_portal_site_id": "es", "src_portal_domain": "portal.example" }搜索职位
GET
/v1/ofertas/searchopendata返回搜索结果页使用的分页职位列表:jobTitle、companyName、salaryMin/salaryMax、locationName 与 HasKillerQuestions。
认证方式: 可选的 Bearer accessToken。匿名搜索仍可分页;登录调用会个性化 isApplied 与 isOfferFavorite。X-Portal-Id 选择国家站点。
- page
- pageSize
- total
- hasMore
- jobOffers
- jobOfferId
- encryptedId
- EncryptedIdOffer
- jobTitle
- companyName
- companyId
- companyLogoUrl
- isCompanyVerified
- salaryMin
- salaryMax
- salaryRangeId
- contractType
- contractTypeId
- locationName
- cityId
- provinceName
- publicationDate
- numVacancies
- HasKillerQuestions
- isApplied
- isOfferFavorite
GET /v1/ofertas/search?query=ingeniero+software&cityId=280&contractTypeId=1&salaryRangeId=3&page=1&pageSize=20&sortBy=publicationDate HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es X-XSRF-TOKEN: <xsrf> X-Version-Id: 4.0.5 Accept: application/json{ "page": 1, "pageSize": 20, "total": 1842, "hasMore": true, "jobOffers": [{ "jobOfferId": "A1B2C3D4", "encryptedId": "enc-off-A1B2C3D4", "EncryptedIdOffer": "enc-off-A1B2C3D4", "jobTitle": "Ingeniero de software", "companyName": "Example Corp SA", "companyId": "c-9001", "companyLogoUrl": "https://cdn.example/logos/example.png", "isCompanyVerified": true, "salaryMin": 28000, "salaryMax": 38000, "salaryRangeId": 3, "contractType": "Indefinido", "contractTypeId": 1, "locationName": "Madrid", "cityId": 280, "provinceName": "Madrid", "publicationDate": "2026-09-28T11:04:00Z", "numVacancies": 2, "HasKillerQuestions": true, "isApplied": false, "isOfferFavorite": false }] }职位详情
GET
/v1/ofertas/{jobOfferId}opendata为职位详情页供水:jobDescription、benefits、薪资带、companyRating,以及投递流程必须回答的 killerQuestions。
认证方式: 可选的 Bearer accessToken。登录调用会附带 isApplied、isOfferFavorite 与 killerQuestions。需要 X-Portal-Id。
- jobOfferId
- EncryptedIdOffer
- jobTitle
- jobDescription
- companyId
- companyName
- companyLogoUrl
- companyRating
- isCompanyVerified
- sector
- salaryMin
- salaryMax
- contractType
- locationName
- cityId
- benefits
- numVacancies
- publicationDate
- HasKillerQuestions
- killerQuestions
- encryptedKillerDataId
- killerQuestion
- killerQuestionAnswers
- isApplied
- isOfferFavorite
- candidatesAdequacyPercentage
GET /v1/ofertas/A1B2C3D4 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es X-XSRF-TOKEN: <xsrf> Accept: application/json{ "jobOfferId": "A1B2C3D4", "EncryptedIdOffer": "enc-off-A1B2C3D4", "jobTitle": "Ingeniero de software", "jobDescription": "Desarrollo de APIs en Java y Spring.", "companyId": "c-9001", "companyName": "Example Corp SA", "companyLogoUrl": "https://cdn.example/logos/example.png", "companyRating": 4.2, "isCompanyVerified": true, "sector": "Tecnología", "salaryMin": 28000, "salaryMax": 38000, "contractType": "Indefinido", "locationName": "Madrid", "cityId": 280, "benefits": ["Seguro médico", "Teletrabajo híbrido"], "numVacancies": 2, "publicationDate": "2026-09-28T11:04:00Z", "HasKillerQuestions": true, "killerQuestions": [{ "encryptedKillerDataId": "kq-12", "killerQuestion": "¿Tienes experiencia con Spring Boot?", "killerQuestionAnswers": ["Sí", "No"] }], "isApplied": false, "isOfferFavorite": false, "candidatesAdequacyPercentage": 72 }按职业推荐职位
GET
/v1/ofertas/recommendedopendata按求职者简历上的 profession 为首页推荐 ofertas 轮播供水。
认证方式: Bearer accessToken。按登录简历上的 profession 排序。
- profession
- page
- jobOffers
- jobOfferId
- jobTitle
- companyName
- salaryMin
- salaryMax
- locationName
- publicationDate
GET /v1/ofertas/recommended?profession=ingeniero+de+software&page=1 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "profession": "ingeniero de software", "page": 1, "jobOffers": [{ "jobOfferId": "B2C3D4E5", "jobTitle": "Backend Java", "companyName": "Fintech Norte", "salaryMin": 30000, "salaryMax": 42000, "locationName": "Barcelona", "publicationDate": "2026-09-29T08:12:00Z" }] }相似职位
GET
/v1/ofertas/{offerId}/relatedopendata为职位详情轮播返回相似职位,以打开的 offerId 为键。
认证方式: 可选的 Bearer accessToken。展示前会过滤已隐藏职位。
- offerId
- EncryptedSimilarOfferIds
- relatedOfferId
- jobTitle
- companyName
- locationName
- salaryMin
- salaryMax
GET /v1/ofertas/A1B2C3D4/related HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "offerId": "A1B2C3D4", "EncryptedSimilarOfferIds": ["enc-rel-1", "enc-rel-2"], "relatedJobOffers": [{ "relatedOfferId": "C3D4E5F6", "jobTitle": "Desarrollador backend", "companyName": "Consultora Andes", "locationName": "Valencia", "salaryMin": 26000, "salaryMax": 34000 }] }投递职位
POST
/v1/candidacies/{candidateId}/applyosint用登录简历提交 postulacion,回答筛选问题,返回 applicationId 与 applicationStatusId。
认证方式: Authorization: Bearer accessToken。请求体包含 offerId、curriculumId 以及 killerQuestionAnswers。
- offerId
- curriculumId
- coverLetter
- applicationCoverLetter
- killerQuestionAnswers
- encryptedKillerDataId
- applicationId
- candidateId
- applicationDate
- applicationStatusId
- applicationStatus
- applicationNumber
POST /v1/candidacies/cand-441902/apply HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es X-XSRF-TOKEN: <xsrf> Content-Type: application/json { "offerId": "A1B2C3D4", "curriculumId": "cv-7781", "coverLetter": "cl-12", "applicationCoverLetter": true, "killerQuestionAnswers": [{ "encryptedKillerDataId": "kq-12", "answer": "Sí" }] }{ "applicationId": "app-99021", "offerId": "A1B2C3D4", "candidateId": "cand-441902", "curriculumId": "cv-7781", "applicationDate": "2026-10-02T14:22:11Z", "applicationStatusId": 1, "applicationStatus": "enviada", "applicationNumber": 38 }投递列表
GET
/v1/me/postulacionesopendata分页「Mis postulaciones」:每行是带 applicationStatusId、applicationDate 与所投职位的 applicationId。
认证方式: Authorization: Bearer accessToken。限定在登录的 candidateId 与 X-Portal-Id。
- page
- total
- applicationId
- offerId
- jobTitle
- companyName
- applicationDate
- applicationStatusId
- applicationStatus
- applicationNumber
- curriculumId
GET /v1/me/postulaciones?page=1&pageSize=20 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "page": 1, "total": 12, "applications": [{ "applicationId": "app-99021", "offerId": "A1B2C3D4", "jobTitle": "Ingeniero de software", "companyName": "Example Corp SA", "applicationDate": "2026-10-02T14:22:11Z", "applicationStatusId": 2, "applicationStatus": "CV leído", "applicationNumber": 38, "curriculumId": "cv-7781" }] }候选人简历
GET
/v1/me/curriculumosint返回投递时使用的应用内简历:身份、profession、jobExperienceId 行、skills、languages、resumeVisibility 与 employabilityIndex。
认证方式: Authorization: Bearer accessToken。可选 curriculumId 查询参数选择非默认简历。
- curriculumId
- encryptedCurriculumId
- candidateId
- firstName
- lastName
- phone
- profession
- cityName
- cityId
- mobility
- resumeVisibility
- employabilityIndex
- candidateEmployabilityIndex
- jobExperiences
- jobExperienceId
- formations
- formationId
- skills
- languages
- videoPresentationUrl
GET /v1/me/curriculum?curriculumId=cv-7781 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "curriculumId": "cv-7781", "encryptedCurriculumId": "enc-cv-7781", "candidateId": "cand-441902", "firstName": "Ana", "lastName": "García", "email": "[email protected]", "phone": "+34 600 000 000", "profession": "Ingeniero de software", "cityName": "Madrid", "cityId": 280, "mobility": "hybrid", "resumeVisibility": "public", "employabilityIndex": 78, "candidateEmployabilityIndex": 78, "jobExperiences": [{ "jobExperienceId": "exp-11", "title": "Backend developer", "companyName": "Startup Sur" }], "formations": [{ "formationId": "edu-4", "title": "Ingeniería informática" }], "skills": ["Java", "Spring", "SQL"], "languages": ["es", "en"], "linkedin": "https://www.linkedin.com/in/example", "videoPresentationUrl": null }浏览过简历的公司
GET
/v1/me/cv-viewsosint分页招聘方浏览看板:哪些公司打开过简历,含 companyId、totalViews 与 totalProfileVisits。
认证方式: Authorization: Bearer accessToken。分页「Empresas que han visto tu CV」。
- page
- totalViews
- totalProfileVisits
- recruiterViews
- companyId
- companyName
- companyLogoUrl
- profileVisits
- publicationDate
GET /v1/me/cv-views?page=1 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "page": 1, "totalViews": 27, "totalProfileVisits": 27, "recruiterViews": [{ "companyId": "c-9001", "companyName": "Example Corp SA", "companyLogoUrl": "https://cdn.example/logos/example.png", "totalViews": 3, "profileVisits": 3, "publicationDate": "2026-10-01T09:14:00Z" }] }职位提醒
GET
/v1/me/job-alertsopendata列出已保存的职位提醒,按 keywords、cityId 与 salaryRangeId 匹配新 ofertas 并邮件通知。
认证方式: Authorization: Bearer accessToken。创建/更新使用同一套提醒与已保存搜索资源。
- page
- alertId
- searchId
- keywords
- cityId
- locationName
- contractTypeId
- salaryRangeId
- frequency
- query
GET /v1/me/job-alerts?page=1 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "page": 1, "alerts": [{ "alertId": "al-331", "searchId": "ss-12", "keywords": "ingeniero software", "cityId": 280, "locationName": "Madrid", "contractTypeId": 1, "salaryRangeId": 3, "frequency": "daily", "query": "ingeniero software Madrid" }] }收藏职位
GET
/v1/me/saved-ofertasopendata返回「Mis Favoritos」已收藏 ofertas 列表,以 favoriteId 与 offerId 为键。
认证方式: Authorization: Bearer accessToken。删除使用同一资源族上的收藏 id。
- page
- favoriteId
- encryptedId
- encryptedFavoritesIds
- offerId
- jobTitle
- companyName
- locationName
- typeId
- isOfferFavorite
GET /v1/me/saved-ofertas?typeId=1&page=1 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "page": 1, "favorites": [{ "favoriteId": "fav-19", "encryptedId": "enc-fav-19", "encryptedFavoritesIds": ["enc-fav-19"], "offerId": "A1B2C3D4", "jobTitle": "Ingeniero de software", "companyName": "Example Corp SA", "locationName": "Madrid", "typeId": 1, "isOfferFavorite": true }] }关注的公司
GET
/v1/me/followed-empresasopendata分页求职者关注的公司,以 companyFollowerId 为键,供关注列表与关注通知使用。
认证方式: Authorization: Bearer accessToken。关注/取关变更使用同一关注资源族。
- page
- totalFollowedCompanies
- followedCompanies
- companyId
- companyName
- companyLogoUrl
- companyFollowerId
- followId
- followerId
GET /v1/me/followed-empresas?page=1 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "page": 1, "totalFollowedCompanies": 6, "followedCompanies": [{ "companyId": "c-9001", "companyName": "Example Corp SA", "companyLogoUrl": "https://cdn.example/logos/example.png", "companyFollowerId": "fl-441902-9001", "followId": "fl-19", "followerId": "cand-441902" }] }招聘方消息
GET
/v1/me/inboxosint分页招聘方聊天收件箱:带 unreadMessagesCount、subject 与消息正文的 conversationId 线程。
认证方式: Authorization: Bearer accessToken。同一收件箱资源上有仅分页变体。
- page
- unreadMessagesCount
- conversationId
- companyId
- companyName
- encryptedIdResponser
- subject
- messageId
- body
- publicationDate
GET /v1/me/inbox?page=1 HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "page": 1, "unreadMessagesCount": 2, "conversations": [{ "conversationId": "conv-55", "companyId": "c-9001", "companyName": "Example Corp SA", "encryptedIdResponser": "enc-resp-9001", "subject": "Entrevista para Ingeniero de software", "unread": true, "messages": [{ "messageId": "msg-901", "body": "¿Puedes confirmar disponibilidad el martes?", "publicationDate": "2026-10-03T16:40:00Z" }] }] }求职信列表
GET
/v1/me/cartasopendata列出求职者在投递时可附加的求职信,含 AI 生成草稿(Carta generada con IA)。
认证方式: Authorization: Bearer accessToken。生成式草稿使用同一求职信资源上的创建描述动作。
- coverLetter
- title
- body
- attachedCoverLetter
- aiCoverLetter
- applicationCoverLetter
- candidateId
GET /v1/me/cartas HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "coverLetters": [{ "coverLetter": "cl-12", "title": "Carta backend Madrid", "body": "Me presento para el puesto de ingeniero de software...", "attachedCoverLetter": true, "aiCoverLetter": false, "applicationCoverLetter": true, "candidateId": "cand-441902" }] }公司评价
GET
/v1/empresas/{companyId}/valuationsopendata返回雇主评价与 averageSalary,供公司资料的 evaluaciones 标签使用。
认证方式: 可选的 Bearer accessToken。对应「Empresa: evaluaciones」标签。
- companyId
- companyName
- valuationAverage
- totalValuations
- averageSalary
- generalValuation
- ratingCEO
- ratingEnvironment
- ratingRecommend
- valuationId
- rating
- ratingSalary
- body
- valuationDate
GET /v1/empresas/c-9001/valuations HTTP/1.1 Authorization: Bearer <accessToken> X-Portal-Id: es Accept: application/json{ "companyId": "c-9001", "companyName": "Example Corp SA", "valuationAverage": 4.2, "totalValuations": 86, "averageSalary": 34500, "generalValuation": 4.1, "ratingCEO": 4.0, "ratingEnvironment": 4.3, "ratingRecommend": 4.2, "valuations": [{ "valuationId": "val-44", "rating": 4, "ratingSalary": 4, "body": "Buen ambiente y salario acorde.", "valuationDate": "2026-08-12T10:00:00Z" }] }
数据类别
- 职位广告
- 投递申请
- 简历
- 招聘方浏览
- 职位提醒
- 消息
- 公司评价
- 关注的公司
- 登录会话
数据使用场景与案例
把西语职位流接入 ATS
招聘后台按 query、cityId、contractTypeId 与 salaryRangeId 分页拉取职位搜索,再用 jobOfferId 补全 jobTitle、companyName、salaryMin/salaryMax、HasKillerQuestions 与 publicationDate,使 Computrabajo 职位与 InfoJobs、OCC 进入同一投递管道。
按 applicationStatusId 跟踪投递管道
人事运营按 candidateId 拉取投递列表,用 applicationStatusId、applicationDate 与 applicationNumber 分组,无需抓取「Mis postulaciones」即可对清已投递的 oferta。
投递前检查简历完整度
职业顾问读取 curriculumId、jobExperienceId、skills、formations、languages、resumeVisibility 与 employabilityIndex,再对照求职信列表标出缺失项,再让求职者点投递。
用招聘方浏览信号做跟进
外联工具监视 companyId、companyName、totalViews 与 totalProfileVisits,让求职者向打开过简历的雇主跟进,对应应用里「Empresas que han visto tu CV」列表。
常见问题
Computrabajo 如何鉴权 API 调用?
应用使用 OpenID Connect:登录在 POST /oauth/token 用授权码换取 access_token、refresh_token 与 id_token。后续 REST 调用发送 Authorization: Bearer,以及 X-Portal-Id、X-XSRF-TOKEN 与 X-Version-Id。scope 为 openid 与 offline_access。这些是登录后的第一方端点,不是公开开发者 API。
哪些端点暴露职位与投递?
职位搜索是 GET /v1/ofertas/search(query、cityId、contractTypeId、salaryRangeId);详情是 GET /v1/ofertas/{jobOfferId};推荐与相似信息流是 GET /v1/ofertas/recommended 与 GET /v1/ofertas/{offerId}/related。投递是 POST /v1/candidacies/{candidateId}/apply;投递列表是 GET /v1/me/postulaciones。
简历与招聘方浏览返回哪些字段?
GET /v1/me/curriculum 返回 curriculumId、firstName、lastName、email、jobExperienceId、skills、formations、languages、resumeVisibility 与 employabilityIndex。GET /v1/me/cv-views 分页返回打开过简历的公司(companyId、companyName、totalViews)。求职信在 GET /v1/me/cartas。
API 如何区分国家门户?
每次调用携带当前国家站点的 X-Portal-Id(es、mx、ar、cl 及其他西语门户)。GET /v1/portals/current 返回该站点的 portalId、portalName、PortalCode、PortalCurrency、CountryIsoCode 与 locale。搜索、投递与简历调用都限定在登录的门户内。
与 Computrabajo Ofertas de Empleo 相似的应用
- InfoJobs - Job Search — InfoJobs 是 Adevinta 的西班牙招聘板:按省与远程筛选职位、用简历投递并跟踪申请。
- OCC: Job Search — OCCMundial 是墨西哥的分类招聘板:职位搜索、简历、投递与招聘方浏览界面。
- Bumeran — Bumeran 是 Jobint 面向西语拉美的分类招聘板,以阿根廷为本土市场。
- Vagas de Emprego: Catho — Catho 是巴西招聘板,含简历、排序分数与招聘方收件箱线程。
- Indeed Job Search — Indeed 是全球求职应用:关键词搜索、投递、申请状态与招聘方消息。
- LinkedIn: Community & Network — LinkedIn 是职业社交网络,与 Computrabajo 的候选人资料和招聘方收件箱重叠。
相关主题
- Computrabajo API
- Computrabajo 职位搜索
- Computrabajo 简历
- Computrabajo 投递
- Computrabajo 招聘方浏览
- DGNET 招聘 API
- 西语招聘 OpenID
- ofertas de empleo API
需要集成这个 App 的数据 API?
我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。
- 每个项目均签 NDA 与 SOW
- 3–7 天交付
- 验收通过后才付款
- 仅在授权范围内作业