Job Sync API と連携する
Job Sync API を連携するためのエンドツーエンドガイドです。
このAPIとそのドキュメントを使用して連携を構築すると、APIに関する追加の利用規約およびガイドラインに同意したことになります。
Job Sync API を使用して、Indeed と Indeed PLUS で求人を作成および管理します。
数百の連携パートナーとの実績から、このプロセスには通常約 6 週間かかります。これには、設定、テスト、Indeed とのレビュー、およびクライアン ト導入に向けたデプロイが含まれます。
-
jobRequisitionIdはスキーマ上では任意ですが、jobPostingIdと異なる場合、Indeedでは必須です。日本の求人の場合:IDまたは
jobPostingIdと同じ値を設定します。 -
SourcedJobPostingJobContactInputの採用マネージャーと採用担当者の値は、スキーマ上では任意ですが、入手可能な場合、Indeedでは必須です。
関連項目:
連携ロードマップ
連携を Indeed にレビュー用として提出するには、次の手順を完了します。
| # | 手順 |
|---|---|
1. 連携の前提条件を満たす
連携する前に、次の手順を完了してください。
| # | 手順 | 備考 |
|---|---|---|
| 1. | クライアント名を収集して Indeed に送信する。 | Indeed は既存のクライアント名のレビューを支援します。 後で、これらの名称を |
| 2. | 貴社と Indeed の間で Developer Agreement を締結して署名し、Become an Indeed partner から正式な連携リクエストを送信する。 | Indeed がアカウントを承認すると、アクセスを有効にし、次の内容を確認するアンケートを送信します。
|
| 3. | 各求人に、その公開求人詳細ページの URL を含めて送信する。 | Indeed はこの URL をクロールして、送信された求人と一致することを確認します。この URL を省略すると、連携が遅れることがあります。 |
| 4. | 連携で問題が発生したときに、完全なリクエストとレスポンスをログに記録する。 | エラーをトラブルシューティングするため、これらのログを Indeed に提供します。 |
Indeed は、Job Sync API が 包括的な 連携であることを求めます。クライアントごとに、公開されている すべての求人、またはクライアントの採用ページに表示されるすべての求人を送信する必要があります。クライアントはオプトアウトできますが、オプトアウトした場合は、そのクライアントのすべての求人を期限切れにし、送信を停止する必要があります。
クライアントの採用サイトで新規、更新、または期限切れの求人が公開されたら、それらの変更を直ちに送信してください。Indeed が求人の更新を 15 分以内に受信しない場合、その求人の表示順位が下がることがあります。API を通じて初めて求人を送信する際は、既存の求人が多数ある場合があります。これらの求人を送信する際は、100 件未満のバッチで送信してください。
2. 求人の Indeed Apply を設定する
ATS を Indeed と連携すると、クライアントは求人掲載で かんたん応募 を有効にし、応募者情報を ATS に送信できます。Indeed Apply は求職者体験を改善し、クライアントの採用を迅速化します。
Indeed が提供するサンドボックスソース に送信するサンドボックス求人の 1 つに Indeed Apply を追加すると、その求人に直接アクセスして応募することで、ソフトウェア内で Indeed Apply をエンドツーエンドでテストできます。テストにはスクリーナー質問も含めてください。
求人の Indeed Apply を設定するには、次の手順を行います。
-
各求人について、
SourcedJobPostingIndeedApplyInputオブジェクトフィールドで Indeed Apply 情報を設定します。Indeed から応募データを受信するには、
SourcedJobPostingIndeedApplyInput.postUrlを、Indeed が応募データを送信する URL に設定します。 -
システムが応募データを解析して処理できることを確認します。
関連項目:
3. Indeed Apply のスクリーナー質問を追加する
スクリーナー質問は、雇用主が応募者が基準を満たしているかどうかをすばやく判断するのに役立ちます。雇用主がスクリーナー質問を追加すると、候補者とのやり取りにより多くの時間を使えます。Indeed はスクリーナー質問をホストしません。システムがスクリーナー質問をサポートしている場合は、Indeed が連携を承認するために実装が必要です。
Indeed Apply の応募フローでスクリーナー質 問を表示するには、Create job posting with screener questions をご覧ください。
4. Indeed から応募データを受信する
Indeed から応募データを受信するには、各求人に URL を指定します。この URL は、その求人の候補者情報を JSON ドキュメントとして受信します。
応募をプログラムで処理するには、次の手順を行います。
-
SourcedJobPostingIndeedApplyInput.postUrlフィールドで定義した HTTPS URL で、Indeed から応募データを受信します。例:
"postUrl": "https://www.example.com/jobs" -
正常に受信したすべての応募に対して、システムが HTTP
2XXステータスコードを返すことを確認します。Indeed は、それ以外の HTTP ステータスコード、POSTタイムアウト、または接続タイムアウトをエラー と見なします。Indeed が接続タイムアウト、
POSTタイムアウト、または無効な HTTP レスポンスによって HTTP2XXステータスコードを受信しない場合、Indeed は応募を再試行します。自動再試行には指数バックオフを使用します。最後の再試行後も配信に失敗した場合、Indeed はその応募を最終的な失敗として扱います。POST中に応募内容を検証しないでください。内容を検証して応募者を不適格にする場合は、POSTの後で行ってください。求職者データに対するパートナー側の検証エラーによって、Indeed が連携を無効にすることがあります。POSTリクエストを301または302レスポンスなどで別の URL にリダイレクトしないでください。Indeed はリダイレクトをサポートしていません。HTTP status codes をご覧ください。
重複する応募
POST に応答するときは、次の両方の条件に一致する場合にのみ、応募を重複として扱います。
- 同じ求人 ID を使用している。
- 過去 120 日以内の 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の各ファイル形式に対応する必要があります。
応募データの詳細は、Application data reference をご覧ください。
POST リクエストの認証
Indeed Apply は、POST の正当性を検証するために使用できる HTTP ヘッダーを含めて、postUrl に POST リクエストを送信します。
Indeed は、Indeed Apply の認証情報タイプに対応する共有 API シークレットを使用し、HMAC-SHA1 アルゴリズムでメッセージシグネチャを計算します。このシグネチャは HTTP X-Indeed-Signature ヘッダーで送信されます。
シグネチャを生成するために、Indeed Apply は中括弧({})を含む完全で未変更の JSON ペイロードと共有シークレットを使用します。
メッセージシグネチャの生成方法を示すコード例については、Message signature generation reference をご覧ください。
サポートされている SSL 証明書
サポートされている証明書については、Trusted root SSL certificates をご覧ください。
証明書が一覧にない場合は、Integrations Delivery Team に連絡してください。
関連項目:
SourcedJobPostingIndeedApplyInput.postUrlフィールド- HTTP status codes
- Application delivery
- Duplicate applications
- Application data
- Authentication of the POST request
- Supported SSL certificates
5. 連携を実装する
連携を実装するには、次の手順を行います。
- 本番環境を使用せずに Job Sync API をテストするには、simulated GraphQL environment を使用します。
Indeed が API アクセスを有効にすると、いくつかの
sourceNameを割り当ててパートナーに共有します。すべてのテスト求人で、割り当てられたsourceNameのみをSourcedJobPostingJobSourceInput.sourceNameフィールドで使用してください。テスト求人の
sourceNameフィールドで別の文字列を使用すると、Indeed はそれらの求人を検証できません。その場合、実際の求人を送信する前に、それらの求人を期限切れにする必要があります。テスト求人は実際の求人に一致するように作成してください。たとえば、Fake test job のようなタイトルは使用せず、実際の求人説明を含めてください。求人がサンドボックスソースを使用している場合、Indeed はその求人を求職者に表示しません。
Indeed が提供するサンドボックスソースに送信するサンドボックス求人に Indeed Apply を追加すると、その求人に直接アクセスして応募することで、ソフトウェア内で Indeed Apply をエンドツーエンドでテストできます。テストにはスクリーナー質問も含めてください。
テスト求人にエラーがなくなったら、サンドボックス求人を確認します。Indeed の Employer ページで、アプリの登録に使用したアカウントにサインインし、Jobs タブを選択します。
Indeed がテスト求人を検証した後、既存のバッチ求人と本番の求人更新をレビュー用に送信できることを通知します。
連携を検証してテストする前に、すべての非テスト求人で、その求人を所有する組織を識別する
sourceNameの値を使用する必要があります。本番の求人では、Indeed から提供された
<sourceName>のテスト値を使用しないでください。テスト中に、Indeed チームから、貴社の求人に関連する組織を表す
sourceName値の一覧が共有されることがあ ります。本番求人を送信するときは、それらの組織の求人に対して、そのsourceName値を使用してください。使用しない場合、クライアントが Indeed 上で自社の求人を見つけられないことがあり、サポートリクエストが増える可能性があります。sourceNameの使用に関する具体的なガイダンスについては、How do I distinguish employers in job postings? をご覧ください。
6. 連携を検証してテストする
連携を検証してテストするには、次の手順を行います。
現在の求人一覧を送信したときに、common GraphQL error codes を受信しないことを確認します。
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 内の応募に対する更新を表します。
更新には、リクルーターのワークフローの変更や、候補者の応募後にリクルーターまたは候補者が行う操作が含まれます。たとえば、候補者が採用されることも更新の 1 つです。
応募者ステータスデータを Indeed に送信すると、クライアントは時間の経過とともに、より質の高い応募を受け取れます。
Disposition Sync API Guide をご覧ください。