LinkedIn领英三方插件使用教程
官方文档:https://learn.microsoft.com/en-us/linkedin/talent/job-postings/api/api-development-tools
官方生成child app文档:https://learn.microsoft.com/zh-tw/linkedin/talent/apply-with-linkedin/provisioning-api
官方用户应用和ATS迁移文档:https://learn.microsoft.com/zh-tw/linkedin/talent/job-postings/api/job-posting-customer-configuration
领英API示例:https://www.postman.com/linkedin-developer-apis/workspace/linkedin-talent-solutions/request/16069442-6e5e559b-ee34-4b11-a525-9b416962b0d4
一、领英三方插件
1、创建child app
首先,需要登陆获取Client ID and Client Secret
其次,通过post请求 https://api.linkedin.com/v2/provisionedApplications获得token
在这里插入图片描述
最后拿到上面token,通过 https://api.linkedin.com/v2/provisionedApplications 去申请child app
在这里插入图片描述
点击send得到生成的child app:
2、客户登录插件
Please add the host domain of widget under application settings on https://developer.linkedin.com/
● 在官方文档有这个注释,你把那个域名替换成你自己平台的域名即可
(或者,你使用的serve启动服务,域名是locolhost:5000,则把设置为"validJsSdkDomains": [“http://localhost:5000”])
只有validJsSdkDomains下的有效域名才可以加载领英集成插件。
起服务:
serve -s build
就可以使用test.html测试了。
注意域名,若不在那个域名则不会被加载;后面添加域名的方式:
https://api.linkedin.com/v2/provisionedApplications/urn:li:developerApplication:207***757
请求体:
{
“patch”: {
“$set”: {
“validJsSdkDomains”: [
“https://www.foo.js”,
“https://www.bar.js”,
“http://localhost:5500”,
“https://www.italent-inc.cn”
]
}
}
}
3、Update Customer Integrations更新客户集成的时机
当获得回调方法提供的参数后,就要同步客户集成
POST https://api.linkedin.com/v2/atsIntegrations?ids[0].integrationContext=urn:li:contract:(ContractID returned by widget) &ids[0].integrationType=PREMIUM_JOB_POSTING&ids[0].tenantType=JOBS&ids[0].dataProvider=ATS
4、立即调用LinkedIn的ATSIntegrations端点,以实现客户的高级职位发布集成。
POST https://api.linkedin.com/v2/atsIntegrations?ids[0].integrationContext=urn:li:contract:(ContractID returned by widget) &ids[0].integrationType=PREMIUM_JOB_POSTING&ids[0].tenantType=JOBS&ids[0].dataProvider=ATS
二、领英插件
三、平台与插件问题
1、领英页面与iframe父页面沟通传输数据合同号
- window.postmessage
function confirmJobPoster(integrations) {
//Your code here
let stringIntegrations = JSON.stringify(integrations);
window.parent.postMessage(stringIntegrations,'*');
console.log("integrations:", integrations,stringIntegrations);
}
- window.addEventListener
window.addEventListener('message', function (e) {
console.log('领英 获取三方插件返回的合同号 ', e)
var integrations = JSON.parse(e.data);
})
● integrationContext: “urn:li:contract:222***361”
integrationType: “PREMIUM_JOB_POSTING”
onboardingStatus: “REQUESTED”
tenantType: “JOBS”