求人更新APIガイド
Indeed 上の求人の更新、更新のクリア、詳細の取得、一覧表示を行います。
このAPIとそのドキュメントを使用して連携を構築すると、APIに関する追加の利用規約およびガイドラインに同意したことになります。
APIの概要
求人更新APIを使用して、Indeed 上の求人の更新、更新のクリア、求人の詳細の取得、求人の一覧表示を行います。これらの呼び出しは無料で、Sponsored Jobs API 使用ポリシー の上限にはカウントされません。
求人の作成と期限切れは ATS が管理します。
APIの手順
1. 認証する
Indeed パートナーになると、Indeed が連携用のアプリを作成します。Partner Console (新しいウィンドウで開きます) にサインインして、アプリと OAuth 認証情報(クライアント ID、シークレット、および 3-legged OAuth の認可コード)を確認します。これらの認証情報をアクセストークンと交換し、API 呼び出しを認証します。
findEmployerJobsPartner、node、nodes の各クエリには、次のいずれかの OAuth トークンタイプが必要です。
| トークンタイプ | 説明 |
|---|---|
| 広告主を指定する 2‑legged OAuth トークン | すでにスポンサー求人APIを client credentials grant type (2-legged OAuth) で使用している場合は、このトークンタイプをすでにお持ちの可能性があります。 |
| 3-legged OAuth トークン | すでに 3-legged OAuth トークンをお持ちの場合は、それを使用できます。 |
アクセストークンには、employer_access スコープと employer.hosted_job スコープが必要です。詳細については、スコープ をご覧ください。
アクセストークンを取得したら、クエリにそのトークンを含めます。
更新後の求人ステータスを表示するたびにユーザーがサインインしなくて済むよう、Indeed ではアクセストークンの有効期限が切れる前に更新することを推奨しています。
2. 求人を更新する
遅延公開を使用している場合、更新が成功すると保留された求人も公開されます。
- 自社がIndeedに送信した求人は、upsertします。
- 別のパートナーが送信した求人は、updateします。updateは主に広告代理店向けです。
日本のみ:広告代理店およびIndeed PLUSパブリッシャーネットワークのパートナーを除き、すべてのパートナーが求人をupdateできます。
関連項目:
広告代理店がIndeedおよびIndeed PLUS上で求人のフィールドを更新できるようにします。
クライアントから認可された求人のみを更新してください。認可されていない更新を行うと、クライアントがその求人で他のIndeedツールを使用できなくなることがあります。ATSにない勤務地を追加する場合は、自社のXMLまたはAPI連携を使用してください。
Indeed に送信していない求人を更新するには、次の手順に従います。
-
追加するクライアントを選択する: Indeed にお問い合わせください。
-
findEmployerJobsPartnerを呼び出し、JobPostSurfaceStatus.isRejectedがfalseの求人を探します。これらの求人は Indeed で検索できます。次の手順で使用するため、EmployerJob.idを保存します。求人が拒否されている場合は、その理由をstatusCommunicationで確認します。 -
updateSourcedJobPostingsを呼び出し、保存したEmployerJob.idをsourcedPostingIdとして指定します。トラッキング URL や求人 URL などのフィールドを更新できます。すべてのフィールドについては、UpdateSourcedJobPostingMetadataInputとUpdateSourcedJobPostingBodyInputをご覧ください。フィールドを更新すると、そのフィールドに対する以降の ATS 側の変更は求職者に表示されなくなります。 -
更新内容を確認する
次のいずれかのクエリを使用します。
findEmployerJobsPartner: 呼び出しは、アクセストークンごとに 1 時間に 1 回までにしてください。更新は通常 30 秒以内に反映されますが、Indeed はタイミングを保証しません。node:EmployerJob.idで 1 件の求人を取得します。nodes: 複数のEmployerJob.idの値を指定して、1 回の呼び出しで複数の求人を取得します。
キャンペーンのスポンサー求人を一覧表示するには、
campaignCategoriesにad_campaign_category:{category}を設定します。たとえば、ad_campaign_category:fooはfooキャンペーンのスポンサー求人を返します。
この呼び出しのレート制限については、レート制限 をご覧ください。
リクエスト – 求人を更新する
求人の一部のフィールドを更新するには、jobsIngest.updateSourcedJobPostings ミューテーションを呼び出します。
この操作には、employer_access スコープと employer.hosted_job スコープを持つ、広告主を表すアクセストークンが必要です。採用企業を表すアクセストークンを取得する をご覧ください。その際、採用企業 ID ではなく広告主 ID をトークンに関連付けます。
更新したいフィールドのみを指定します。フィールドを変更しない場合は、省略するか null を設定します。
次の例では、updateSourcedJobPostings ミューテーションを呼び出して、求人の複数のフィールドを更新します。
mutation UpdateSourcedJobPostings { jobsIngest { updateSourcedJobPostings( input: { updates: [ { sourcedPostingId: "<SOURCED POSTING ID OF JOB POSTING>" metadata: { url: "https://www.example.com/jobs/123" campaignCategories: ["springCampaign"] trackingUrl: "https://www.example.com/jobs/123?utm_source=indeed" } body: { title: "Software Developer" description: "Come build the future with us!" jobLocation: { general: { cityRegionPostal: "Phoenix, AZ 85003" streetAddress: "1234 Sunny Lane, Phoenix, AZ 85003" } } salary: { currency: "USD" maximumMinor: 1000 minimumMinor: 1000 period: "HOUR" } } } ] } ) { results { jobPosting { sourcedPostingId employerJobId } } } }}mutation UpdateSourcedJobPostings { jobsIngest { updateSourcedJobPostings(input: { updates: [{ sourcedPostingId: "<SOURCED POSTING ID OF JOB POSTING>" body: { description: "<h2>About the role</h2><p>Join our team as a software engineer. You design and build scalable backend services.</p><ul><li>Competitive salary</li><li>Remote-friendly</li><li>Health and dental benefits</li></ul>" descriptionFormatting: HTML } }] }) { results { jobPosting { sourcedPostingId employerJobId } } } }}updateSourcedJobPostings は、UpdateSourcedJobPostingsInput 型の input という 1 つの引数を取ります。
input には updates という 1 つのフィールドがあり、これは UpdateSourcedJobPostingInput オブジェクトの配列です。各オブジェクトは、1 件の求人に対する更新内容を定義します。
各 UpdateSourcedJobPostingInput オブジェクトは、次のフィールドをサポートします。
| フィールド | タイプ | 説明 |
|---|---|---|
sourcedPostingId | ID! | 必須。求人ごとに、次のいずれかの値を指定します。
|
metadata.url | WebUrl | Indeed エントリーを利用できない場合に、求職者が応募できる広告代理店の URL です。 |
metadata.campaignCategories | [String!] | キャンペーン選択のために関連する求人をグループ化するカテゴリータグです。指定した値については、ad_campaign_category:{category} でスポンサー求人APIにクエリを実行します。 |
metadata.trackingUrl | WebUrl | 求人のトラッキング URL です。求職者が Indeed 上でその求人を表示すると、Indeed はこの URL に HTTP リクエストを送信します。 |
body.title | String | 求人のタイトルです。 |
body.description | String | 求人の説明です。
|
body.descriptionFormatting | DescriptionFormatting | 求人の説明の形式です。HTML 形式を有効にするには、このフィールドに HTML を設定します。デフォルトは TEXT です。 |
body.jobLocation .general.cityRegionPostal | String! | 勤務地を更新する場合は必須。求人の市区町村、都道府県、州、郡などの 行政区分、および郵便番号です。 リモート求人にこのフィールドを設定すると、Indeed はその求人を地域限定のリモート求人として扱います。 |
body.jobLocation .general.streetAddress | String | 求人の主な勤務地の番地です。Indeed が勤務地のマッチングを改善し、求職者に住所を表示できるよう、完全な住所を指定してください。 |
body.salary.currency | CurrencyCode | ISO 4217 形式の給与の通貨コードです。 |
body.salary.maximumMinor | Int64 | 現地通貨の補助単位で表した給与の上限です。USD の場合、1000 は 10 ドルを表します。現在の値をクリアするには、このフィールドを省略するか null を設定します。 |
body.salary.minimumMinor | Int64 | 現地通貨の補助単位で表した給与の下限です。USD の場合、1000 は 10 ドルを表します。現在の値をクリアするには、このフィールドを省略するか null を設定します。 |
body.salary.period | JobSalaryPeriod! | 給与を更新する場合は必須。時給、日給、週給など、給与の計算に使用する単位です。 |
body.companyName | String | 求人の会社名を更新します。変更しない場合は、このフィールドを省略するか null を設定します。最大長は 200 文字です。 |
詳細については、API リファレンス をご覧ください。
更新内容を確認する
updateSourcedJobPostings のレスポンスには求人 IRI が含まれます。変更を確認するには、返された IRI を指定して node クエリを使用します。
ID で求人ステータスを取得する をご覧ください。