Send Candidates APIガイド
候補者の応募をIndeedと同期します。
By using this API and its documentation and building an integration, you agree to the Additional API Terms and Guidelines.
Send Candidates APIワークフロー
- 1.Send Candidates APIの概要: Send Candidates APIが候補者の応募をIndeedとどのように同期するかを確認します。
- 2.認証。
- 3.雇用主の登録: 雇用主を登録し、登録に関する情報を返します。
- 4.応募の初期化と添付ファイルのアップロード: Indeedで応募バージョンをステージングし、添付ファイルのアップロードURLを生成して、そのURLにファイルをアップロードします。
- 5.応募の送信: 応募バージョンをIndeedに送信します。バージョンは送信順に非同期で公開されます。
- 6.応募ステータスの追跡: 応募ステータスと処理エラーを追跡します。
- 7.応募の削除: 応募とそのすべてのバージョンをIndeedから完全に削除します。
- 8.GraphQL エラーのトラブルシューティング: GraphQLエラーを解決します。
Send Candidates APIリファレンス
registerEmployer: 雇用主を登録し、登録に関する情報を返します。application.initialize: Indeedで応募バージョンをステージングし、添付ファイルをアップロードするURLを生成します。application.submit: 応募を送信します。findStatuses: 応募ステータスと処理エラーを追跡します。application.delete: 応募を削除します。
Send Candidates APIの概要
Send Candidates APIは、候補者の応募を送信して追跡するための完全なワークフローを提供します。応募の送信には、初期化、添付ファイルのアップロード、送信という 3 つの手順が必要です。
初期化では、Indeedで応募バージョンをステージングし、添付ファイルをアップロードするURLを生成します。初期化のたびに、一意の applicationVersionId を持つバージョンが作成されます。初期化後は、5 分以内に添付ファイルをアップロードして送信します。
この API は、データを階層構造で整理します。applicationIdentifier オブジェクトには、応募を一意に識別する次のフィールドが含まれます。
| フィールド | 必須 | 説明 |
|---|---|---|
indeedRegistrationId | ✅ | Indeedの雇用主とパートナーの雇用主を関連付ける一意のIDです。登録時に提供されます。 |
atsCandidateId | ⬜ | 1件以上のATS応募に関連付けられた候補者プロフィールのIDです。 |
atsApplicationId | ✅ | ATS内の応募の一意のIDです。 |
job.sourcedPostingId | ✅ | 求人掲載IDです。createSourcedJobPostingsが返します。 |
この組み合わせは、1 件の論理的な応募を定義します。同じ applicationIdentifier で initialize を呼び出すたびに、その応募の新しいバージョ ンが作成されます。
任意のフィールドを含め、すべてのフィールドが一意性に影響します。たとえば、atsCandidateId を含む応募は、ほかのすべてのフィールドが同じでも、atsCandidateId を含まない応募とは別の応募です。
添付ファイルをアップロードするときは、次の点に従ってください。
- すべての添付ファイルは、ウイルスと有害なコンテンツのスキャンを実行します。安全でないファイルは削除されます。
- すべての添付ファイルの合計サイズは15 MB(15,728,640バイト)を超えてはいけません。
- 個々のファイルサイズは6 MB(6,291,456バイト)を超えてはいけません。
- MD5ハッシュに基づき、重複した添付ファイルは許可されません。
RESUMEとCOVER_LETTERの添付ファイルは、それぞれ最大1つまで含められます。追加のファイルにはOTHER_RESUMEまたはOTHER_COVER_LETTERを使用します。- すべての添付ファイルには、有効なBase64エンコード済みMD5チェックサムが必要です。
人種、性別、年齢、障害の有無など、保護対象の人口統計情報に関する質問への回答はIndeedに公開されません。
応募を削除すると、その応募とすべてのバージョンがIndeedから完全に削除されます。削除した応募を再初期化することはできません。
同じ応募に対してミューテーション(initialize、submit、delete)を同時に実行しないでください。短時間に続けて実行すると、競合状態、予期しないデータ状態、どのバージョンが公開されたかについての混乱が発生する可能性があります。
認証
When you become an Indeed partner, Indeed sets up an app for your integration. Sign in to Partner Console to view your app and OAuth credentials (client ID, secret, and authorization code for 3-legged OAuth). Exchange credentials for an access token to authenticate API calls.
Candidate Sync API の各オペレーションには OAuth トークンが必要です。
| API とオペレーション | OAuth トークン種別 |
|---|---|
| 雇用主を表す 3-legged OAuth トークン を使用し、 |
| 2-legged OAuth トークン. で認証します。アプリケーションは、ユーザー操作なしで Indeed の認可サーバーに直接認証します。 |
アクセストークンは ATS 内に安全に保存し、ユーザー間で共有しないでください。Indeed は、お客 様のシステムが求人の信頼できる情報源であることを前提としています。あるユーザーが投稿した求人に別のユーザーのアクセストークンを使うと、Indeed 上でそのユーザーに別のユーザーの求人へのアクセスを付与する可能性があります。
アクセストークンを取得したら、クエリまたはミューテーションにこのトークンを含めます。最新の求人ステータスを確認するたびにユーザーへサインインを求めることがないよう、アクセストークンは有効期限が切れる前に更新することを推奨します。
Indeed と連携して API を呼び出す と スコープをご覧ください。
雇用主の登録
Employer Registration APIを使用すると、雇用主を登録できます。
リクエスト – Register employer
雇用主を登録し、登録情報を返すには、registerEmployer を呼び出します。
雇用主を表す 3-legged OAuth トークン を使用し、employer.ats_candidate.sync スコープで認証します。このトークンは雇用主の Indeed アカウントと ATS アカウントを関連付けます。Indeed の管理者またはオーナーが作成する必要があります。registerEmployer がスコープ不足のエラーを返す場合、このトークンが雇用主に関連付けられていない可能性があります。
RegisterEmployerInput では、次の入力フィールドを指定します。
| フィールド | 必須 | 説明 |
|---|---|---|
型: | ✅ | 雇用主を一意に識別するために指定する ID です。 1 つの |
型: | ✅ | 雇用主に対して指定する名称です。Indeed 上では、この名称が雇用主に表示されます。 |
レスポンス – Register employer
API は EmployerRegistration を返します。後続の Candidate Sync API 呼び出しで使用するために id を保存するか、partnerEmployerId を指定して findRegisteredEmployers でもう一度取得します。
応募の初期化と添付ファイルのアップロード
Indeedで応募バージョンをステージングし、添付ファイルのアップロードURLを生成して、そのURLにファイルをアップロードします。
リクエスト – 応募の初期化
応募を初期化するには、initializeを呼び出します。このオペレーションは、Indeedで応募バージョンをステージングし、添付ファイルをアップロードするURLを生成します。
2-legged OAuth トークン. で認証します。アプリケーションは、ユーザー操作なしで Indeed の認可サーバーに直接認証します。
-
雇用主の登録:
Indeed 上の雇用主を識別するには、
indeedRegistrationIdに、registerEmployerがEmployerRegistrationで返すidを設定します。雇用主では、
sendApplications機能が有効になっている必要があります。
次の入力フィールドを指定します。
| フィールド | 必須 | 説明 |
|---|---|---|
| ✅ | Indeed上の応募の一意のIDです。 | |
| ✅ | 完全な応募者詳細です。 | |
型: [AtsSyncCandidateSyncApplicationQuestionAndAnswerInput!]! | ⬜ | スクリーナー質問と応募者の回答です。どちらもプレーンテキスト文字列として指定します。 |
| ✅ | 現在の応募者ステータスです。ステータスマッピングの例については、Indeed Standard Disposition Statusesをご覧ください。 | |
|
型: | ✅ | 貴社システム内の応募への直接リンクです。 |
|
型: | ⬜ | 貴社システム内の候補者プロフィールへの直接リンクです。 |
mutation InitializeApplication($input: InitializeAtsSyncCandidateSyncApplicationInput!) { atsSyncCandidateSync { application { initialize(input: $input) { applicationVersionId attachments { fileType fileName contentType contentLength fileChecksum { checksum } url } } } }}レスポンス – 応募の初期化
| フィールド | 説明 |
|---|---|
|
型: | 新しい応募バージョンです。送信時に使用します。 |
| 添付した各ファイルのファイルデータをアップロードします。 |
initializeレスポンスで返される各添付ファイルについて、urlにPUTリクエストでファイルデータをアップロードします。initializeミューテーションのapplicant.attachmentsの値に一致する、次のヘッダーを含めます。
| ヘッダー | 値のソース | 説明 |
|---|---|---|
Content-Type | contentType | ファイル添付の元のメディアタイプです。 |
Content-Length | contentLength | ファイルサイズ(バイト単位)です。 |
Content-MD5 | fileChecksum.checksum | MD5 ハッシュです。 重要
|
応募の送信
2-legged OAuth トークン. で認証します。アプリケーションは、ユーザー操作なしで Indeed の認可サーバーに直接認証します。
応募バージョンをIndeedに送信します。バージョンは送信順に非同期で公開されます。
-
雇用主の登録:
Indeed 上の雇用主を識別するには、
indeedRegistrationIdを指定します。雇用主では、sendApplications機能が有効になっている必要があります。これらの ID の管理については、Employer Registration APIをご覧ください。
リクエスト – 応募の送信
応募を送信するには、application.submitミューテーションを呼び出します。
次の入力フィールドを指定します。
| フィールド | 必須 | 説明 |
|---|---|---|
|
型: | ✅ | Indeedの雇用主アカウントにリンクします。 |
|
|