Job Sync APIと連携する
Job Sync APIを連携するためのエンドツーエンドガイドです。
このAPIとそのドキュメントを使用して連携を構築すると、APIに関する追加の利用規約およびガイドラインに同意したことになります。
Job Sync APIを使用して、IndeedとIndeed PLUSで求人を作成および管理します。
数百のパートナーとの連携実績から、この連携には通常約6週間かかります。この期間には、設定、テスト、Indeedとのレビュー、およびクライアント利 用に向けたデプロイが含まれます。
-
jobRequisitionIdはスキーマ上では任意ですが、jobPostingIdと異なる場合、Indeed では必須です。日本の求人の場合: ID または
jobPostingIdと同じ値を設定します。 -
SourcedJobPostingJobContactInputの hiring manager と recruiter の値は、スキーマ上では任意ですが、取得できる場合は Indeed で必須です。
関連項目:
SourcedJobPostingMetadataInputのjobRequisitionIdとjobPostingIdSourcedJobPostingJobContactInput
連携ロードマップ
連携をIndeedにレビュー依頼する前に、次の手順を完了してください。
| # | 手順 |
|---|---|
| 1. | 連携の前提条件を満たす。 |
| 2. | 求人のIndeed Applyを設定する。 |
| 3. | Indeed Applyのスクリーナー質問を追加する。 |
| 4. | Indeedから応募データを受信する。 |
| 5. | 連携を実装する。 |
| 6. | 連携を検証してテストする。 |
| 7. | 連携を確認する。 |
| 8. | 連携の正常性を監視する。 |
| 9. | 応募者ステータスデータをIndeedに送信する。 |
1. 連携の前提条件を満たす
連携を開始する前に、次の手順を完了してください。
| # | 手順 | 備考 |
|---|---|---|
| 1. | クライアント名を収集してIndeedに送信します。 | Indeedは既存のクライアント名の確認を支援します。 後で、それらの名称を |
| 2. | 貴社とIndeedの間でDeveloper Agreementを締結し、Become an Indeed partnerから正式な連携リクエストを送信します。 | Indeedがアカウントを承認すると、アクセスを有効にし、次の内容を確認するアンケートを送信します。
|
| 3. | 各求人に公開求人詳細ページのURLを含めて送信します。 | IndeedはこのURLをクロールして、送信された求人と一致することを確認します。省略すると、連携レビューが遅れることがあります。 |
| 4. | 連携の問題が発生したときに、完全なリクエストとレスポンスをログに記録します。 | トラブルシューティングのために、これらのログをIndeedに提供します。 |
Job Sync API連携は包括的である必要があります。クライアントごとに、公開されているすべての求人、またはクライアントの採用ページに表示されるすべての求人を送信してください。クライアントはオプトアウトできますが、その場合はそのクライアントのすべての求人を期限切れにし、送信を停止する必要があります。
クライアントの採用サイトで新規、更新、または期限切れの求人が公開されたら、変更 をすぐに送信してください。Indeedが15分以内に更新を受信しない場合、求人の可視性が低下することがあります。既存求人を初めてAPI経由で送信するときは、100件未満のバッチで送信してください。
2. 求人のIndeed Applyを設定する
ATSをIndeedと連携すると、クライアントは求人掲載でかんたん応募を有効にし、応募者データをATSに送信できます。Indeed Applyは求職者体験を改善し、クライアントの採用を迅速化できます。
ソフトウェア内でIndeed Applyをエンドツーエンドでテストするには、サンドボックス求人の1件にIndeed Applyを追加してください。サンドボックス求人とは、Indeedが提供するサンドボックスソースに送信する求人です。その後、その求人を直接開いて応募します。テストにはスクリーナー質問も含めてください。
Indeed Applyを設定するには、次の手順を行います。
-
SourcedJobPostingIndeedApplyInputにIndeed Applyのフィールドを設定します。Indeedから応募データを受信するには、
postUrlを、Indeedが応募データを送信するURLに設定します。 -
システムが応募データを解析して処理できることを確認します。
関連項目:
3. Indeed Applyのスクリーナー質問を追加する
スクリーナー質問は、雇用主が応募者が基準を満たしているかどうかをすばやく判断するのに役立ちます。雇用主がスクリーナー質問を使うと、適格な候補者とのやり取りにより多くの時間を使えます。Indeedはスクリーナー質問をホストしません。システムがスクリーナー質問をサポートしている場合は、Indeedが連携を承認するために実装が必要です。
Indeed Applyの応募フローでスクリーナー質問を表示するには、スクリーナー質問付きの求人を作成するをご覧ください。
4. Indeedから応募データを受信する
Indeedから応募データを受信するには、各求人にURLを指定します。IndeedはそのURLに、該当する求人の候補者情報をJSONとして送信します。
応募をプログラムで処理するには、次の手順を行います。
-
postUrlに設定したHTTPS URLで応募データを受信します。例:
"postUrl": "https://www.example.com/jobs" -
システムが正常に受信したすべての応募に対して、HTTP
2XXステータスコードを返します。Indeedは、それ以外のHTTPステータスコード、POSTタイムアウト、または接続タイムアウトをエラーとして扱います。Indeedが接続タイムアウト、
POSTタイムアウト、または無効なHTTPレスポンスによりHTTP2XXを受信しない場合、指数バックオフで応募を再試行します。最後の再試行後も失敗した場合、Indeedはその応募を最終失敗として扱います。POST中に応募内容を検証しないでください。内容を検証して応募者を不適格にする場合は、POSTの後で行ってください。パートナー側の検証エラーによって、Indeedが連携を無効にすることがあります。POSTリクエストを301や302などで別のURLにリダイレクトしないでください。Indeedはリダイレクトをサポートしていません。HTTPステータスコードをご覧ください。
重複する応募
応募を重複として扱うのは、次の両方に当てはまる場合だけです。
- 同じ求人IDを使用している。
- 過去120日以内のIndeedからの応募と同じ求職者メールアドレスを使用している。
Indeedからの応募が重複かどうかを判断するときに、別ソースから送信された応募 を使用しないでください。同じ会社であっても、異なる求人IDで同じ求職者メールアドレスから送信された応募を重複として扱わないでください。
応募データ
Indeedは応募データをHTTP POSTリクエストの生のボディで送信するため、通常のフォーム送信のようには処理できません。リクエストボディにはJSONドキュメントが含まれており、読み込んで解析する必要があります。Indeedは毎回すべてのJSONフィールドを送信するわけではないため、欠落したフィールドを空として扱い、未知のフィールドを無視する堅牢なJSONパーサーを使用してください。
JSONペイロードに最大サイズはありません。
POSTボディはUTF-8でエンコードされており、Indeedが応募を送信したことを検証するための真正性ヘッダーが含まれます。
Applicantフィールドのファイル部分には、contentType、data、fileNameが含まれます。
- Indeedは
contentTypeをfileNameから判定します。 dataには、Base64エンコードされた履歴書ファイルの生データが含まれます。- サードパーティシステムは、
.txt、.pdf、.doc、.docx、.rtfに対応する必要があります。
詳細は、応募データリファレンスをご覧ください。
POSTリクエストの認証
Indeed Applyは、リクエストが正当かどうかを確認するために使用できるHTTPヘッダーを含めて、postUrlにPOSTリクエストを送信します。
Indeedは、Indeed Applyの認証情報タイプに対応する共有APIシークレットを使用し、HMAC-SHA1アルゴリズムでメッセージシグネチャを計算します。そのシグネチャはHTTP X-Indeed-Signatureヘッダーで送信されます。
シグネチャの生成には、中括弧({})を含む完全で未変更のJSONペイロードと共有シークレットを使用します。
コード例については、メッセージシグネチャ生成リファレンスをご覧ください。
サポートされているSSL証明書
サポートされている証明書については、信頼済みルートSSL証明書をご覧ください。
証明書が一覧にない場合は、Integrations Delivery Teamに連絡してください。
関連項目:
SourcedJobPostingIndeedApplyInput.postUrl- HTTPステータスコード
- 応募の配信
- 重複する応募
- 応募データ
- POSTリクエストの認証
- サポートされているSSL証明書
5. 連携を実装する
連携を実装するには、次の手順を行います。
本番環境を使わずにJob Sync APIをテストするには、シミュレートされたGraphQL環境を使用します。
IndeedがAPIアクセスを有効にすると、ソース名を割り当ててパートナーに共有します。すべてのテスト求人で、割り当てられたソース名だけを
SourcedJobPostingJobSourceInput.sourceNameで使用してください。テスト求人で別の文字列を使用すると、Indeedはそれらの求人を検証できません。その場合、実際の求人を送信する前に、それらの求人を期限切れにする必要があります。
テスト求人は実際の求人のように作成してください。たとえば、Fake test jobのようなタイトルは使用せず、実際の求人説明を含めてください。サンドボックスソースで送信した求人は求職者に表示されません。
サンドボックス求人にIndeed Applyを追加すると、その求人を直接開い て応募することで、Indeed Applyをエンドツーエンドでテストできます。テストにはスクリーナー質問も含めてください。
テスト求人のエラーがなくなったら、サンドボックス求人を確認します。IndeedのEmployerページで、アプリ登録に使用したアカウントにサインインし、Jobsタブを選択します。
Indeedがテスト求人を検証した後、既存のバッチ求人と本番の求人更新をレビュー用に送信できることを通知します。
連携を検証してテストする前に、すべての非テスト求人で、その求人を所有する組織を識別する
sourceNameを使用する必要があります。本番求人では、Indeedから提供された
<sourceName>のテスト値を使用しないでください。テスト中に、Indeedチームから、貴社の求人に関連する組織の
sourceName値一覧が共有されることがあります。本番求人を送信するときは、それらの組織の求人にその値を使用してください。そうしないと、クライアントがIndeed上で自社の求人を見つけられず、サポートリクエストが増えることがあります。詳しくは、求人掲載で雇用主をどのように区別すればよいですか?をご覧ください。