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 をテストするには、simulated GraphQL environment を使用します。
Indeed が API アクセスを有効にすると、ソース名を割り当ててパートナーに共有します。すべてのテスト求人で、割り当てられたソース名だけを
SourcedJobPostingJobSourceInput.sourceNameで使用してください。テスト求人で別の文字列を使用すると、Indeed はそれらの求人を検証できません。その場合、実際の求人を送信する前に、それらの求人を期限切れにする必要があります。
テスト求人は実際の求人のように作成してください。たとえば、Fake test job のようなタイトルは使用せず、実際の求人説明を含めてください。サンドボックスソースで送信した求人は求職者に表示されません。
サンドボックス求人に Indeed Apply を追加すると、その求人を直接開いて応募することで、Indeed Apply をエンドツーエンドでテストできます。テストにはスクリーナー質問も含めてください。
テスト求人のエラーがなくなったら、サンドボックス求人を確認します。Indeed の Employer ページで、アプリ登録に使用したアカウントにサインインし、Jobs タブを選択します。
Indeed がテスト求人を検証した後、既存のバッチ求人と本番の求人更新をレビュー用に送信できることを通知します。
連携を検証してテストする前に、すべての非テスト求人で、その求人を所有する組織を識別する
sourceNameを使用する必要があります。本番求人では、Indeed から提供された
<sourceName>のテスト値を使用しないでください。テスト中に、Indeed チームから、貴社の求人に関連する組織の
sourceName値一覧が共有されることがあります。本番求人を送信するときは、それらの組織の求人にその値を使用してください。そうしないと、クライアントが Indeed 上で自社の求人を見つけられず、サポートリクエストが増えることがあります。詳しくは、求人掲載で雇用主をどのように区別すればよいですか? をご覧ください。
6. 連携を検証してテストする
連携を検証してテストするには、次の手順を行います。
現在の求人一覧を送信したときに、一般的な GraphQL エラーコード を受信しないことを確認します。
descriptionフィールド内の HTML が HTML エスケープされていないことを確認します。求人にすべての会社を含めます。
Indeed にはすでに多くの求人一覧があるため、会社が欠けていると本番公開が遅れることがあります。
クライアントの採用サイトで公開されているすべての求人を含めていることを確認します。
これには、親会社のサブブランドや子会社の求人も含まれます。採用サイトと API フィードで求人件数に差があると、連携経由の求人の表示順位が下がることがあります。
各求人は
urlフィールドに一意の URL を持つ必要があります。給与、勤務地、その他のメタデータが、採用サイト上の求人と一致していることを確認します。
各求人の
jobRequisitionIdが、採用サイト上のリクイジション ID と一致していることを確認します。利用できる場合は、採用責任者またはリクルーターのメールアドレスを提供します。
開発中に作成したすべてのテスト求人を期限切れにします。
クライアントのウェブサイトに表示されるすべてのデータと一致するように、求人を更新し続けてく ださい。
多くのパートナーは、採用サイトに雇用形態、求人カテゴリ、完全な住所を含めています。
Indeed は Job Sync API フィードを本番公開する前に、API データと採用サイトを比較して、フィードに利用可能なすべてのデータが含まれていることを確認します。採用サイトと同じデータが API から送信されるまで、本番公開は遅れます。
レビューの一環として、Indeed は貴社の連携を採用サイトと比較します。採用サイト上のすべてのデータを連携を通じて送信してください。
Indeed から共有される Indeed Apply のチェックリストを完了します。
さまざまな HTTP エラーのシナリオをテストするには、チェックリストの HTTP codes / Security for post requests の行をご覧ください。
スクリーナー質問の形式を検証し、
postUrlを確認するには、Indeed Apply Integration Tools: Test Indeed Apply Questions を使用してください。
7. 連携を確認する
連携がこれらの要件を満たしたら、次の内容が分かるスクリーンショット付きの資料を提出してください。
- 雇用主向け連携メニューにおける Indeed のブランディングと配置
- 雇用主が Indeed Apply 付き求人を送信する方法
- Indeed 応募者のソーストラッキングを、雇用主向け求人分析でどのように表示するか
- 雇用主が求 人の Indeed Apply を無効にする方法
Indeed が資料を受領し、連携をレビューして承認すると、メール通知が届きます。
8. 連携の正常性を監視する
Indeed Apply と連携する場合は、次の内容を確認する監視を設定してください。
- 求人応募が正常に配信されている。
- 質問ファイルが有効で、一貫して利用可能である。
Indeed も、ATS パートナーへの配信成功やその他の連携正常性指標を監視しています。問題が発生した場合、Indeed から連絡することがあります。場合によっては、問題を解決するまで、フィード内の一部またはすべての求人で Indeed Apply を無効にすることがあります。
Indeed は未配信の応募を失いません。配信に失敗した場合、元の送信後に一定間隔で自動的に再試行します。それでも配信できない場合、Indeed は応募を 60 日間保持します。追加の再試行は Integrations Delivery Team に依頼できます。
連携でスクリーナー質問をサポートしている場合は、それらのファイルをホストするページが引き続き利用可能で、リダイレクトせず、正しい形式を使用していることを確認してください。
9. 応募者ステータスデータを Indeed に送信する
応募者ステータスデータ は、ATS 内の応募に対する更新を表します。
更新には、リクルーターのワークフロー変更や、候補者の応募後にリクルーターまたは候補者が行う操作が含まれます。たとえば、候補者が採用される場合があります。
応募者ステータスデータを Indeed に送信すると、クライアントは時間の経過とともに、より質の高い応募を受け取れるようになります。
応募者ステータス連携API ガイド をご覧ください。