- 設問セクション
schemaVersionscreenerQuestionsdemographicQuestions- JSON設問パラメーター
idtypequestiontextoptionsvaluelabelrequiredformatlimitminCharCountminmaxminSelectionCountmaxSelectionCountconditionhierarchicalOptionsqualification- 適性パラメーター
typematchrange- マッチパラメーター
typevalues- 範囲パラメーター
minmax- 設問タイプ
- textarea
- text
- select
- multiselect
- condition
- hierarchical
- date
- file
- information
- pagebreak
- スクリーニング設問の回答の自動入力
- 設問スキーマ
- 質問例(JSON)
- 質問スキーマ(OpenAPI YAML)
- ベストプラクティス
スクリーニング設問のJSON
JSONスクリーニング設問パラメーター。
- このAPIおよびそのドキュメントを使用し、統合を構築することで、追加のAPI利用規約およびガイドラインに同意したものとみなされます。
Indeed Apply応募フローでスクリーニング設問を表示するには、次のいずれかを行います。
-
JSONで設問を作成し、HTTPS URLでホストして、
<indeed-apply-data>要素配下の<indeed-apply-questions>パラメーターで各<job>に含めます。Indeed Applyスクリーニング設問を追加するをご覧ください。 -
Job Sync APIを呼び出して、スクリーニング設問付きの求人投稿を作成する。
スクリーニング設問JSONファイルの構文を検証するには、Indeed Apply設問ツールを使用します。
スクリーニング設問に電話番号やメールアドレスを含めないでください。デフォルトで、応募データにはメールアドレスが含まれます。電話番号を取得するには、Indeed Applyパラメーターを使用します。
設問セクション
schemaVersion
| 説明 | Indeed エントリーで使用されるスクリーナー質問のバージョン。
現在のバージョンは 統合を破綻させることなくマイナーアップグレードに対応するため、この値を柔軟に保ってください。 |
|---|---|
| 値 | バージョン番号 |
| 例 | |
screenerQuestions
| 説明 | スクリーナー質問は、職歴、スキル、資格など、対象となる求人に関連する一般的でよく整理された質問のリストです。民族、性別、障害に関する質問など、人口統計学的質問を含めるべきではありません。「保護クラス」の人々に関連する質問は、特定の司法管轄区域では規制されており、Indeedシステム(および場合によってはお客様のシステム)内で特別な方法で処理する必要があります。このスキーマでは、 |
|---|---|
| 値 | オブジェクト JSON質問パラメータを参照してください。 |
| 例 | |
demographicQuestions
| 説明 | 人口統計学的質問は、求職者の「保護クラス」、すなわち民族、性別、障害などに関連する特定のよく整理された質問のリストです。このような質問は特定の司法管轄区域で規制されており、Indeedシステム、および場合によってはお客様のシステムで特別な方法で処理する必要があります。 これらの質問はEEOコンプライアンスのため、米国ベースの求人に限定されています。 職歴、スキル、資格に関する一般的なスクリーナー質問をこのリストに混在させないでください。代わりに、
|
|---|---|
| 値 | オブジェクト JSON質問パラメータを参照してください。 |
| 例 | |
JSON設問パラメーター
id
| 説明 | この質問の一意のID。 |
|---|---|
| 値 | 任意の文字列 |
| 例 | |
type
| 説明 | 質問のタイプ。 許可される値ごとの説明を参照してください。 |
|---|---|
| 値 | |
| 例 | |
question
"type": "information""type": "pagebreak"| 説明 | 応募者に表示される質問テキスト。 |
|---|---|
| 値 | 任意の文字列 |
| 例 | |
text
| 説明 | 他のタイプではサポートされていません。応募者に表示されるテキスト。 |
|---|---|
| 値 | 任意の文字列 |
| 例 | |
options
| 説明 | 利用可能なオプションのリスト。 |
|---|---|
| 値 | JSON |
| 例 | |
value
| 説明 | 各オプションに対応する値。 |
|---|---|
| 値 | 任意の文字列 |
| 例 | |
label
| 説明 | メニューのオプション用テキスト。select および multiselect の質問では、同一の質問内でオプションの label は一意である必要があります。 |
|---|---|
| 値 | 任意の文字列 |
| 例 | |
required
| 説明 | trueに設定されている場合、質問は必須となり、空でないテキストフィールドまたは選択が生成されます。質問をオプションとして定義するには、このパラメータを省略します。質問がオプションで候補者が回答しない場合、Indeedは""の回答値を送信します。 |
|---|---|
| 値 | true |
| 例 | |
format
| 説明 | 入力の受け入れ形式。
|
|---|---|
| 値 | テキスト形式:
|
| 例 | integer, dd/MM/yyyy |
limit
| 説明 | "type": "text"および"type": "textarea"の場合、回答の文字数制限。 |
|---|---|
| 値 | 任意の整数 |
| 例 | |
minCharCount
| 説明 | "type": "text"および"type": "textarea"の場合、回答の文字数の下限を設定。minCharCountは数値以外の形式にのみ適用されます。 |
|---|---|
| 値 | 任意の整数 |
| 例 | |
min
| 説明 | "format": "integer"または"format": "decimal"の場合、回答の最小値。"type": "date"の場合、回答がその日付以降でなければならない日付。min は max に設定した値以下である必要があります。"type": "date" の場合、min は max に設定した日付と同じかそれより前である必要があります。min が max より大きい、または max より後の日付の場合、検証は失敗します。 |
|---|---|
| 値 |
|
| 例 | |
max
| 説明 | "format": "integer"または"format": "decimal"の場合、回答の最大値。"type": "date"の場合、回答がその日付以前でなければならない日付。max は min に設定した値以上である必要があります。"type": "date" の場合、max は min に設定した日付と同じかそれより後である必要があります。max が min より小さい、または min より前の日付の場合、検証は失敗します。 |
|---|---|
| 値 |
|
| 例 | |
minSelectionCount
| 説明 | "multi-select"の場合、選択する必要があるオプションの最小数。 |
|---|---|
| 値 | 任意の整数 |
| 例 | |
maxSelectionCount
| 説明 | "multi-select"の場合、選択できるオプションの最大数。 |
|---|---|
| 値 | 任意の整数 |
| 例 | |
condition
| 説明 | 以前のselect質問への回答に応じて、質問を条件付きとしてマークします。以前の質問のidと、この質問を有効化するオプションvalueを指定します。例えば、応募者が軍隊に従事したかどうかを尋ねることができます。「はい」と回答した場合、どの部隊に従事したかを尋ねる条件付き質問を表示します。 |
|---|---|
| 値 | JSON |
| 例 | |
hierarchicalOptions
| 説明 | 以前に選択された回答に基づいて追加の質問と回答を表示する質問。例えば、応募者に州を選択するよう求めることができます。その後、選択内容に応じて、その州内の都市のドロップダウンリストを提供できます。各階層質問は3レベルに制限されます。 |
|---|---|
| 値 | JSON |
| 例 | |
qualification
| 説明 | 応募者に求人に必要な可能性のある資格を尋ねる質問。これらの資格は、雇用主によって提供される条件を満たす必要があります。資格基準を満たしているかどうかにかかわらず、すべての応募が雇用主に配信されます。
サポートされている質問タイプは |
|---|---|
| 値 | オブジェクト 資格パラメータを参照してください。 |
| 例 | |
適性パラメーター
type
| 説明 | 資格のタイプを示します。
|
|---|---|
| 値 | enum: "non-blocking" "knockout" |
| 例 | |
match
| 説明 | この質問の評価方法がマッチであることを示します。サポートされている質問タイプはselectおよびmultiselectです。 |
|---|---|
| 値 | オブジェクト マッチパラメータを参照してください。 |
| 例 | |
range
| 説明 | この質問の評価方法が範囲であることを示します。つまり、ユーザーの回答は提供された
|
|---|---|
| 値 | JSON |
| 例 | |
マッチパラメーター
type
| 説明 | 応募者の回答が提供された値の「any」または「all」とマッチする必要があるかを示します。 |
|---|---|
| 値 | enum: "any" "all"
デフォルト: "any" |
| 例 | |
values
| 説明 | 応募者がマッチしなければならない値。 |
|---|---|
| 値 | 配列 |
| 例 | |
範囲パラメーター
min
| 説明 | 受け入れ範囲の最小値。 |
|---|---|
| 値 |
|
| 例 | |
max
| 説明 | 受け入れ範囲の最大値。 |
|---|---|
| 値 |
|
| 例 | |
設問タイプ
textarea
複数行のテキスト入力フィールドを表示する質問。長文の回答を要する質問に使用されます。
{ "id": "envirotext", "type": "textarea", "question": "Describe your ideal work environment:"}text
単一行のテキスト入力フィールドを表示する質問。短い回答を要する質問に使用されます。
テキスト質問で利用可能な異なる形式の詳細については、以下の例とJSONスクリーナー質問パラメータ表を参照してください。形式はinteger、decimal、numeric_textです。
形式指定なし
{ "id": "city", "type": "text", "question": "What city are you located in?", "required": true}整数
整数を表示します。小数点や先頭ゼロは許可されません。
{ "id": "age", "type": "text", "question": "Age?", "format": "integer", "min": "16", "max": "75"}数値テキスト
先頭ゼロ付きの数字を許可します。小数点は許可されません。
{ "id": "experience", "type": "text", "format": "numeric_text", "question": "How many years of experience do you have in this field?", "required": false}小数
小数点付きの数字を表示します。先頭 ゼロが許可されます。
{ "id": "gpa", "type": "text", "format": "decimal", "question": "What was your GPA?", "required": true}select
応募者が単一の回答を選択できるドロップダウンメニューを表示する質問。多肢選択回答の質問に使用されます。
1つから5つの回答オプションを含める場合、ラジオボタンで表示されます。6つ以上の回答オプションを含める場合、ドロップダウンメニューで表示されます。
{ "id": "gender", "type": "select", "question": "Gender?", "options": [{ "value": "0", "label": "Decline to answer" }, { "value": "1", "label": "Male" }, { "value": "2", "label": "Female" }]}multiselect
応募者が複数の回答を選択できるチェックボックスのリストを表示する質問。複数の回答を要する質問に使用されます。
{ "id": "favoritecolors", "type": "multiselect", "question": "Select your two favorite colors:", "options": [{ "value": "0", "label": "Maize" }, { "value": "1", "label": "Blue" }, { "value": "2", "label": "Green" }]}condition
以前の質問への回答に基づいて表示されるかされないかが決まる質問。例えば、応募者が18歳以上かどうかを尋ねることができます。noと回答した場合、必要な就労文書を提供できるかどうかを尋ねます。
[{ "id": "profile-atLeast18", "question": "Are you at least 18 years of age?", "required": true, "options": [{ "value": "1", "label": "Yes" }, { "value": "0", "label": "No" }], "type": "select"}, { "id": "profile-permit", "question": "Can you provide a work permit?", "required": true, "condition": { "id": "profile-atLeast18", "value": "0" }, "options": [{ "value": "1", "label": "Yes" }, { "value": "0", "label": "No" }], "type": "select"}]hierarchical
以前に選択された回答に基づいて追加の質問と回答を表示する質問。例えば、応募者に州を選択するよう求めることができます。その後、選択内容に応じて、その州内の都市のドロップダウンリストを提供できます。各階層質問は3レベルに制限されています。例:state/city/county。
階層質問は条件付き質問に似ています。ただし、階層質問は、初期選択が後続質問の潜在的回答を定義する特定の質問タイプにより適している場合があります。階層機能を使用することで、関連情報を取得するために必要な質問の総数を削減できます。
この質問タイプはdemographicQuestionsでサポートされていません。
[{ "id": "hierarchical", "type": "hierarchical", "question": "State", "required": true, "options": [{ "value": "0", "label": "California" }, { "value": "1", "label": "Texas" }, { "value": "2", "label": "New York" }], "hierarchicalOptions": [{ "id": "cali_cities", "options": [{ "value": "0", "label": "San Francisco" }, { "value": "1", "label": "Los Angeles" }], "condition": { "id": "hierarchical", "value": "0" } }, { "id": "texas_cities", "options": [{ "value": "0", "label": "San Antonio" }, { "value": "1", "label": "Austin" }], "condition": { "id": "hierarchical", "value": "1" } }, { "id": "sa_zipcodes", "options": [{ "value": "0", "label": "78212" }, { "value": "1", "label": "78209" }], "condition": { "id": "texas_cities", "value": "0" } }]}]date
日付入力のみを受け入れるテキストフィールドを表示する質問。日付で回答する必要がある質問に使用されます。
このスクリーナー質問タイプを使用する場合、形式は必須です。形式はdd/MM/yyyyまたは、Unicode CLDR書式に適合する他のロケール固有の形式でなければなりません。
IndeedはSimpleDateFormatを使用するため、月はMMとして書式設定する必要があります。mmを使用すると設定ミスが発生します。
type=dateの形式は、アプリケーションがATSに渡される方法と最小値および最大値の解析に影響します。求職者は指定された形式ではなく、自分のロケールに基づいて日付を入力し、検証エラーメッセージは自分のロケールの形式で表示されます。混乱を防ぐため、形式ではyyではなくyyyyを使用してください。
{ "id": "startdate", "required": true, "type": "date", "question": "Start date?", "format": "dd/MM/yyyy", "min": "01/06/2023", "max": "03/10/2023"}file
ファイルアップロードインターフェースを表示する質問。認定証、ポートフォリオ、作品例など、ファイルアップロードを回答として要求する質問に使用されます。応募データリファレンスで詳述されているように、JSON POSTリクエストで返される回答データには3つのフィールドが含まれます:contentType、data、fileName。
有効なファイルタイプは以下の通りです:
docdocxgifjfifjifjpejpegjpgpdfpngrtftiftifftxt
ファイルサイズ制限は5 MBです。履歴書ファイルを含む応募あたりの最大合計制限は15MBです。
履歴書を取得するためにこの質問タイプを使用しないでください。代わりに、Indeed エントリーのResume設定パラメータを使用してください。
この質問タイプはdemographicQuestionsでサポートされていません。
{ "id": "file2", "type": "file", "question": "Please attach a recent example of your work.", "required": true, "min": "1", "max": "3"}information
回答を必要としないテキスト表示。説明テキストの作成やセクション見出しの提供に使用されます。
テキストに以下のHTML要素を含めることができます:
<b><p><br><li><ul><ol><a href=" ">
URLではHTTPおよびHTTPSプロトコルのみが許可されています。リンクは新しいタブで開きます。
段落の後に改行を強制するために<br>を使用しないでください。Indeedは段落間に自動的に改行を挿入します。
condition JSON質問パラメータはinformation質問タイプでの使用はサポートされていません。JSONスクリーナー質問パラメータ表を参照してください。
[{ "id": "first_header", "type": "information", "text": "The next set of questions are <b>optional</b> and are for recording purposes only. Make sure to view the <a href = 'http://www.eeoc.gov/employers/upload/poster_screen_reader_optimized.pdf'> EEO is the Law </a> poster.", "fontsize": 8}]pagebreak
ページ上の質問をグループ化します。2つのページブレークタイプの間に含まれるすべての質問が同じページに表示されます。同じページに最大20の質問をグループ化できます。Indeedはデスクトップでは1ページあたり3つの質問をデフォルトとし、モバイルではすべての質問を単一ページにグループ化します。
[{ "id": "page1_open", "type": "pagebreak"}, { "id": "question_sample", "type": "text", "question": "Age?"}, { "id": "page1_close", "type": "pagebreak"}]スクリーニング設問の回答の自動入力
日本のみ。
求職者が前の応募で提供した、特定のスクリーニング設問の回答を自動的に事前入力する場合があります。
この機能は、設問テキストや設問タイプが特定のルールを満たす場合のみ適用されます。
| 項目カテゴリ | 推奨するQuestionサンプル |
|---|---|
| 姓フリガナ | 姓フリガナ、姓ふりがな |
| 名フリガナ | 名フリガナ、名ふりがな |
| 名前の読み方 | フリガナ、ふりがな |
| 生年月日(年) | 生年月日(年)、生年月日 年 |
| 生年月日(月) | 生年月日(月)、生年月日 月 |
| 生年月日(日) | 生年月日(日)、生年月日 日 |
| 生年月日 | 生年月日 |
| 性別 | 性別 |
| 都道府県 | 都道府県 |
| 最寄り駅 | 最寄り駅 |
| 職業 | 職業、現職 |
| 郵便番号 | 郵便番号 |
| 市区町村 | 市区町村、市区町村/町村 |
| 町名/番地 | 町名・番地、町名/番地 |
| 建物名/部屋番号 | 建物名、建物名/部屋番号、住所 |
| 婚姻状況 | 既婚、未婚 |
設問スキーマ
このスキーマは、ATSがホストし、Indeedがクエリするエンドポイントを表します。これは、Indeed Applyが管理する求人応募で雇用主が求職者に提示したい設問を表しています。
質問例(JSON)
{ "schemaVersion": "1.0", "screenerQuestions": { "questions": [{ "id": "favorite-widget-color", "type": "text", "question": "What is your favorite widget color?" }, { "id": "last-four-social-security", "type": "text", "question": "What are the last four digits of your social security number??", "format": "numeric_text" }, { "id": "org-annual-widget-volume", "type": "text", "question": "How many widgets can you craft in an hour?", "required": true, "format": "integer", "min": 0, "max": 100 }, { "id": "widget-passion", "type": "textarea", "question": "What makes you passionate about widget crafting?" }, { "id": "widget-crafting-license", "type": "select", "question": "Do you have a widget crafting license issued by the Widget Organization for Widgets?", "required": true, "options": [{ "label": "false", "value": "0" }, { "label": "true", "value": "1" }] }, { "id": "widget-crafting-license-certifications", "type": "multiselect", "question": "Please select all certifications on your widget crafting license.", "required": true, "options": [{ "label": "Wooden Widget Certification", "value": "0" }, { "label": "Plastic Widget Certification", "value": "1" }, { "label": "Quantum Foam Widget Certification", "value": "3" }], "condition": { "id": "widget-crafting-license", "value": "1" }, "qualification": { "type": "non-blocking", "match": { "type": "any", "values": ["1", "3"] } } }, { "id": "widget-crafting-state", "type": "hierarchical", "question": "What is the most recent US state, city, and zip code in which you've crafted widgets?", "options": [{ "label": "California", "value": "0" }, { "label": "Texas", "value": "1" }], "hierarchicalOptions": [{ "id": "cali-cities", "options": [{ "label": "SanFrancisco", "value": "0" }], "condition": { "id": "widget-crafting-state", "value": "0" } }, { "id": "texas-cities", "options": [{ "label": "San Antonio", "value": "0" }, { "label": "Austin", "value": "1" }], "condition": { "id": "widget-crafting-state", "value": "1" } }, { "id": "san-antonio-zips", "options": [{ "label": "78212", "value": "0" }, { "label": "78209", "value": "1" }], "condition": { "id": "texas-cities", "value": "0" } }] }, { "id": "widget-crafting-license-expiration", "type": "date", "question": "When does your widget crafting license expire?", "required": true, "format": "dd/MM/yyyy", "condition": { "id": "widget-crafting-license", "value": "1" } }, { "id": "favorite-widget-pic", "type": "file", "question": "Please upload a picture of your most handsomely crafted widget." }, { "id": "page-1", "type": "pagebreak" }, { "id": "strange-widget-disclosure", "type": "information", "text": "The widgets we produce are sometimes flavored strange. By applying to this job you agree that you are comfortable crafting strange flavored widgets." }] }, "demographicQuestions": { "questions": [{ "id": "disabilities", "type": "select", "question": "Do you have a disability?", "options": [{ "label": "false", "value": "0" }, { "label": "true", "value": "1" }], "required": false }] }}質問スキーマ(OpenAPI YAML)
openapi: "3.0.3"info: title: "Indeed Questions Schema" description: "This defines Indeed's Application Questions schema. As a client of\ \ Indeed who wishes to utilize Indeed Apply to administer job application questions\ \ to job seekers, you must host these this API on a server of your choice. The\ \ schema defines job application questions you or your customer would like to\ \ pose to job seekers via the Indeed Apply product." version: "1.0"servers:- url: "https://YourQuestionsEndpoint.com"tags:- name: "Job Application Question Fetching" description: "Question lists that Indeed will fetch from your configured **indeed-apply-questions**\ \ URL when rendering your job application for a job seeker\n\nCHANGE LOG for this\ \ version:\n* ***BREAKING!*** Root changed to object instead of array\n* Added\ \ root fields ```schmeaVersion```, ```screenerQuestions```, ```demographicQuestions```\n\ * Added ```qualification``` field/concept to numeric\ \ literal, date, select and multiselect question types\n*"paths: /questions: get: tags: - "job application question fetching" summary: "Fetch job application questions" description: "Returns all the questions Indeed needs to faithfully render your\ \ job application for a job seeker" responses: "200": description: "successful operation" content: application/json: schema: $ref: "#/components/schemas/QuestionsBody" example: schemaVersion: "1.0" screenerQuestions: questions: - id: "favorite-widget-color" type: "text" question: "What is your favorite widget color?" - id: "org-annual-widget-volume" type: "text" question: "What are the last four digits of your social security\ \ number??" format: "numeric_text" - id: "last-four-social-security" type: "text" question: "How many widgets can you craft in an hour?" required: true format: "integer" min: 0 max: 100 - id: "widget-passion" type: "textarea" question: "What makes you passionate about widget crafting?" - id: "widget-crafting-license" type: "select" question: "Do you have a widget crafting license issued by the\ \ Widget Organization for Widgets?" required: true options: - label: "false" value: "0" - label: "true" value: "1" - id: "widget-crafting-license-certifications" type: "multiselect" question: "Please select all certifications on your widget crafting\ \ license." required: true options: - label: "Wooden Widget Certification" value: "0" - label: "Plastic Widget Certification" value: "1" - label: "Quantum Foam Widget Certification" value: "3" condition: id: "widget-crafting-license" value: "1" qualification: type: "non-blocking" match: type: "any" values: - "1" - "2" - id: "widget-crafting-state" type: "hierarchical" question: "What is the most recent US state, city, and zip code\ \ in which you've crafted widgets?" options: - label: "California" value: "0" - label: "Texas" value: "1" hierarchicalOptions: - id: "cali-cities" options: - label: "SanFrancisco" value: "0" condition: id: "widget-crafting-state" value: "0" - id: "texas-cities" options: - label: "San Antonio" value: "0" - label: "Austin" value: "1" condition: id: "widget-crafting-state" value: "1" - id: "san-antonio-zips" options: - label: "78212" value: "0" - label: "78209" value: "1" condition: id: "texas-cities" value: "0" - id: "widget-crafting-license-expiration" type: "date" question: "When does your widget crafting license expire?" required: true format: "dd/MM/yyyy" condition: id: "widget-crafting-license" value: "1" - id: "favorite-widget-pic" type: "file" question: "Please upload a picture of your most handsomely crafted\ \ widget." - id: "page-1" type: "pagebreak" - id: "strange-widget-disclosure" type: "information" text: "The widgets we produce are sometimes flavored strange.\ \ By applying to this job you agree that you are comfortable\ \ crafting strange flavored widgets." demographicQuestions: questions: - id: "disabilities" type: "select" question: "Do you have a disability?" options: - label: "false" value: "0" - label: "true" value: "1" required: false "404": description: "Questions not found"components: schemas: QuestionsBody: title: "Questions Body" type: "object" required: - "schemaVersion" properties: schemaVersion: type: "string" description: "This is the [semantic version](https://semver.org) of the\ \ schema. (Or rather, the semantic-version-light. We do not use the 3rd\ \ (PATCH) element.)" screenerQuestions: type: "object" properties: questions: allOf: - $ref: "#/components/schemas/QuestionsList" - description: "The screener questions should be a list of general,\ \ well formatted questions pertaining to the underlying job such\ \ as work experience, skills, certifications, etc. It should ***NOT***\ \ contain demographic questions such as question about ethnicity,\ \ gender, or disability. Questions related to \"protected classes\"\ \ of people are regulated in certain jurisdictions meaning they\ \ must be handled in special ways inside Indeed systems (and potentially\ \ yours). This schema provides a separate list for demographic questions\ \ called \"demographicQuestions\" below." demographicQuestions: type: "object" properties: questions: allOf: - $ref: "#/components/schemas/QuestionsList" - description: "The demographics questions should be a list of specific,\ \ well formatted questions pertaining to the job applicant's \"\ protected class\" (e.g. ethnicity, gender, disability, etc). These\ \ sorts of questions are regulated in certain jurisdictions meaning\ \ they must be handled in special ways in Indeed systems (and potentially\ \ yours). Please do not mix general screener questions such as\ \ those pertaining to work experience, skills, or certifications\ \ into this list. Instead place them in the \"screenerQuestions\"\ \ list above." QuestionsList: title: "Questions List" type: "array" items: $ref: "#/components/schemas/Question" example: questionPlatform: questionSetId: "abc123" Question: type: "object" anyOf: - $ref: "#/components/schemas/TextQuestion" - $ref: "#/components/schemas/TextAreaQuestion" - $ref: "#/components/schemas/SelectQuestion" - $ref: "#/components/schemas/HierarchicalQuestion" - $ref: "#/components/schemas/DateQuestion" - $ref: "#/components/schemas/FileQuestion" - $ref: "#/components/schemas/InformationText" - $ref: "#/components/schemas/PagebreakFormating" discriminator: propertyName: "type" mapping: text: "#/components/schemas/TextQuestion" textarea: "#/components/schemas/TextAreaQuestion" select: "#/components/schemas/SelectQuestion" multiselect: "#/components/schemas/SelectQuestion" hierarchical: "#/components/schemas/HierarchicalQuestion" date: "#/components/schemas/DateQuestion" file: "#/components/schemas/FileQuestion" information: "#/components/schemas/InformationText" pagebreak: "#/components/schemas/PagebreakFormating" TextQuestion: title: "Text Question" type: "object" description: "Displays a single-line text entry field and is used for questions\ \ with shorter answers." anyOf: - $ref: "#/components/schemas/PureTextQuestionAddIn" - $ref: "#/components/schemas/NumericTextQuestionAddIn" - $ref: "#/components/schemas/NumericLiteralTextQuestionAddIn" example: id: "text-question-id" type: "text" question: "What short piece of info are you willing to provide?" required: true PureTextQuestionAddIn: title: "Pure Text Question Add-In" type: "object" example: id: "text-format-default-id" type: "text" question: "Can you provide some normal text?" required: true NumericTextQuestionAddIn: title: "Numeric Text Question Add-In" type: "object" description: "Allows for numbers with leading zeroes; does not allow for decimals." required: - "format" properties: format: type: "string" enum: - "numeric_text" example: id: "text-format-numeric-id" type: "text" question: "Can you provide some numeric text with leading zeros such as 01234?" required: false format: "numeric_text" NumericLiteralTextQuestionAddIn: title: "Numeric Literal Text Question Add In" anyOf: - $ref: "#/components/schemas/DecimalTextQuestionAddIn" - $ref: "#/components/schemas/IntegerTextQuestionAddIn" DecimalTextQuestionAddIn: title: "Decimal Text Question Add-In" type: "object" description: "Numbers with decimals; allows for leading zeroes." required: - "format" properties: format: type: "string" enum: - "decimal" min: type: "number" description: "The minimum value for the answer" max: type: "number" description: "The maximum value for the answer" qualification: $ref: "#/components/schemas/QualificationDecimal" example: id: "text-format-integer" type: "text" question: "Can you provide a decimal between 0.665 and 100.1 inclusive?" required: true format: "decimal" min: 0.665 max: 100.1 QualificationDecimal: title: "Qualification Decimal" allOf: - $ref: "#/components/schemas/QualificationBase" - type: "object" properties: range: type: "object" description: "Indicates the evaluation method for this question is range,\ \ meaning that the user's answers must fall within the range defined\ \ by the provided ```min``` and/or ```max``` values" anyOf: - required: - "min" properties: min: type: "number" max: type: "number" example: min: 4.5 - required: - "max" properties: min: type: "number" max: type: "number" example: min: 4.5 max: 60.33 QualificationBase: title: "Qualification Base" type: "object" description: "Indicates this question contains the need to\ \ assess if the given answer is correct.\n\nSupported for conditional schema.\ \ Not supported for hierarchical. \n\nQualification questions are marked as\ \ required for applicants to answer\n" required: - "type" properties: type: type: "string" enum: - "non-blocking" description: "Indicates the type of qualification in regards to the effect\ \ on the user's application in the indeed apply flow.\n * ```non-blocking```\ \ will allow the user to move to the next section\ \ in the apply flow even if the answer does not meet the specification\ \ defined in the qualification.\n" IntegerTextQuestionAddIn: title: "Integer Text Question Add-In" type: "object" description: "Whole numbers; does not allow for decimals or leading zeroes." properties: format: type: "string" enum: - "integer" min: type: "integer" description: "The minimum value for the answer" max: type: "integer" description: "The maximum value for the answer" qualification: $ref: "#/components/schemas/QualificationInteger" example: id: "text-format-integer" type: "text" question: "Can you provide an integer between 0 and 100 inclusive?" required: true format: "integer" min: 0 max: 100 QualificationInteger: title: "Qualification Integer" type: "object" description: "Indicates the evaluation method for this question is range, meaning\ \ that the user's answers must fall within the range defined by the provided\ \ ```min``` and/or ```max``` values" allOf: - $ref: "#/components/schemas/QualificationBase" - type: "object" properties: range: type: "object" anyOf: - required: - "min" properties: min: type: "integer" max: type: "integer" example: min: 4 max: 60 - required: - "max" properties: min: type: "integer" max: type: "integer" example: max: 60 TextAreaQuestion: title: "Text Area Question" type: "object" description: "Displays a multi-line text entry field and is used for questions\ \ with long-form answers." allOf: - $ref: "#/components/schemas/TextualQuestionBase" - type: "object" required: - "type" properties: type: type: "string" enum: - "textarea" example: id: "textarea-question-id" type: "text" question: "What deep concepts are you thinking about?" required: true TextualQuestionBase: title: "Textual Question Base" type: "object" allOf: - $ref: "#/components/schemas/QuestionBase" - type: "object" properties: limit: type: "integer" description: "The character limit for the answer" QuestionBase: title: "Question Base" type: "object" allOf: - $ref: "#/components/schemas/QuestionItemBase" - type: "object" required: - "question" properties: question: type: "string" description: "The question text that the applicants see." required: type: "boolean" description: "If set to true, the question is required, which produces\ \ a non-empty text field or selection. Omit this parameter to define\ \ questions as optional. If a question is optional and the candidate\ \ chooses not to answer, Indeed sends an answer value of \"\"." condition: type: "object" description: "Marks a question as conditional, depending on the answer\ \ to a previous select question. Specify the id of the previous question\ \ as well as the option value that activates this question. For example,\ \ you might ask the applicant if the have a pertinent license. If they\ \ answer yes, you display a conditional question that asks when it expires." properties: id: type: "string" description: "The unique question id on which the display of this\ \ question depends." value: type: "string" description: "The value that the dependent questions answer must match\ \ before this condition question is displayed." QuestionItemBase: title: "Question Item Base" type: "object" required: - "id" properties: id: type: "string" description: "Unique ID for this question." SelectQuestion: title: "Select Question" type: "object" description: "Types:\n- ***select*** - A question that displays a dropdown menu\ \ that allows the applicant to select a single answer. Used for questions\ \ with multiple choice answers.\n - Note: If you include from 1 to 5 answer\ \ options, they appear with radio buttons. If you include from 6 or more answer\ \ options, they appear in a dropdown menu.\n- ***multiselect*** - A question\ \ that displays a list of checkboxes that enables the applicant to select\ \ multiple answers. Used for questions with multiple answers.\n" allOf: - $ref: "#/components/schemas/QuestionBase" - type: "object" required: - "type" - "options" properties: type: type: "string" enum: - "select" - "multiselect" options: $ref: "#/components/schemas/SelectOptions" qualification: anyOf: - $ref: "#/components/schemas/QualificationSelect" - $ref: "#/components/schemas/QualificationMultiselect" discriminator: propertyName: "type" mapping: select: "#/components/schemas/QualificationSelect" multiselect: "#/components/schemas/QualificationMultiselect" example: id: "select-question-id" type: "select" question: "Please select an option below." required: true options: - label: "no" value: "0" - label: "yes" value: "1" SelectOptions: title: "Select Options" type: "array" items: type: "object" required: - "label" - "value" properties: label: type: "string" value: type: "string" QualificationSelect: title: "Qualification Select" allOf: - $ref: "#/components/schemas/QualificationBase" - type: "object" properties: match: type: "object" description: "Indicates the evaluation method for this question is match,\ \ meaning that the user's answers must match ```any``` of the provided\ \ values" required: - "values" properties: values: type: "array" items: type: "string" type: type: "string" enum: - "any" default: "any" QualificationMultiselect: title: "Qualification Multiselect" allOf: - $ref: "#/components/schemas/QualificationBase" - type: "object" properties: match: type: "object" description: "Indicates the evaluation method for this question is match,\ \ meaning that the user's answers must match ```any``` or ```all```\ \ of the provided values" required: - "values" properties: values: type: "array" items: type: "string" type: type: "string" enum: - "all" - "any" default: "any" HierarchicalQuestion: title: "Hierarchical Question" type: "object" description: "A question that displays additional questions and responses based\ \ on previously selected answers. For example, you might ask an applicant\ \ to choose a state. Then, depending on what they select, you could offer\ \ them a dropdown list of cities within that state. Additionally could ask\ \ for a zip code within the city they select. Each hierarchical question is\ \ limited to three levels. For example state -> city -> zip.\nNote: Hierarchical\ \ questions are similar to conditional questions. However, hierarchical questions\ \ may be better suited to certain question types where an initial selection\ \ defines potential answers for subsequent questions. Using the hierarchical\ \ functionality reduces the total number of questions needed to obtain related\ \ information.\n" allOf: - $ref: "#/components/schemas/QuestionBase" - type: "object" required: - "type" - "options" properties: type: type: "string" enum: - "hierarchical" options: $ref: "#/components/schemas/SelectOptions" hierarchicalOptions: type: "array" items: required: - "id" properties: id: type: "string" description: "The identifier of the hierarchical option" options: $ref: "#/components/schemas/SelectOptions" condition: type: "object" required: - "id" - "value" properties: id: type: "string" value: type: "string" example: id: "hierarchical-question-top-id" type: "hierarchical" question: "Can you navigate this nested hierarchy?" options: - label: "Top-level A" value: "0" - label: "Top-level B" value: "1" - label: "Top-level C" value: "2" hierarchicalOptions: - id: "top-level-a-mids-id" options: - label: "Top-level A -> Mid-level 1" value: "0" - label: "Top-level A -> Mid-level 2" value: "1" condition: id: "hierarchical-question-top-id" value: "0" - id: "top-level-b-mids-id" options: - label: "Top-level B -> Mid-level 1" value: "0" - label: "Top-level B -> Mid-level 2" value: "1" condition: id: "hierarchical-question-top-id" value: "1" - id: "top-level-b-mid-1-lows-id" options: - label: "78212" value: "0" - label: "78209" value: "1" condition: id: "top-level-b-mids-id" value: "0" DateQuestion: title: "Date Question" type: "object" description: "A question that displays a text field that only accepts date entry.\ \ Used for questions that must be answered with a date.\nNote: Format is required\ \ when using this screener question type. The format must be dd/MM/yyyy or\ \ another locale specific format that meets Unicode CLDR formatting.\n Indeed\ \ uses the SimpleDateFormat, so month must be formatted as MM. Using mm results\ \ in misconfiguration.\n The format of type=date impacts how the application\ \ is passed to the ATS and the parsing of minimum and maximum values. The\ \ job seeker still enters the date based on their locale, not the specified\ \ format, and validation error messages are in their locale's format. Use\ \ yyyy instead of yy in the format to prevent confusion.\n" allOf: - $ref: "#/components/schemas/QuestionBase" - type: "object" required: - "type" - "format" properties: type: type: "string" enum: - "date" format: type: "string" enum: - "dd/MM/yyyy" - "integer" min: type: "string" max: type: "string" qualification: $ref: "#/components/schemas/QualificationDate" example: id: "date-question-id" type: "date" question: "Do you have a favorite date?" required: true format: "dd/MM/yyyy" condition: id: "select-question-id" value: "1" QualificationDate: title: "Qualification Date" type: "object" description: "Indicates the evaluation method for this question is range, meaning\ \ that the user's answers must fall within the range defined by the provided\ \ ```min``` and/or ```max``` values" allOf: - $ref: "#/components/schemas/QualificationBase" - type: "object" properties: range: type: "object" anyOf: - required: - "min" properties: min: anyOf: - type: "string" - type: "integer" max: anyOf: - type: "string" - type: "integer" example: min: 1693586842725 - required: - "max" properties: min: anyOf: - type: "string" - type: "integer" max: anyOf: - type: "string" - type: "integer" example: min: "01/01/2020" max: "12/31/2020" FileQuestion: title: "File Question" type: "object" description: "A question that displays a file upload interface. Used for questions\ \ that require a file upload as an answer, such as certifications, portfolios,\ \ or example work. As detailed in Application data reference, the answer data\ \ returned in the JSON POST request contains three fields: contentType, data,\ \ and fileName.\n\nValid file types are:\n * doc\n * docx\n * gif\n *\ \ jfif\n * jif\n * jpe\n * jpeg\n * jpg\n * pdf\n * png\n * rtf\n \ \ * tif\n * tiff\n * txt\n\n File size limit is 5 MB. The maximum combined\ \ limit per application is 15MB, including resume file.\n" allOf: - $ref: "#/components/schemas/QuestionBase" - type: "object" required: - "type" properties: type: type: "string" enum: - "file" min: type: "string" max: type: "string" example: id: "file-question-id" type: "file" question: "Please upload a file." required: false InformationText: title: "Information Text" type: "object" description: "A text display that does not require a response. Creates explanatory\ \ text or provide section headings.\n\nYou can include the following HTML\ \ elements in the text:\n\n* <b>\n* <p>\n* <br>\n* <li>\n\ * <ul>\n* <ol>\n* <a href=" ">\n\nOnly HTTP and\ \ HTTPS protocols are allowed in URLs. Links open in a new tab.\n\nNote: Do\ \ not use <br> to force line breaks after paragraphs. Indeed automatically\ \ inserts line breaks between paragraphs.\n" allOf: - $ref: "#/components/schemas/QuestionItemBase" - type: "object" required: - "type" - "text" properties: type: type: "string" enum: - "information" text: type: "string" example: id: "information-text-id" type: "information" text: "Here is some information for you to consume: Roses are red" PagebreakFormating: title: "Pagebreak Formating" description: "Groups questions on a page. All questions included between two\ \ pagebreak types appear on the same page. You can group up to 20 questions\ \ on the same page. Indeed defaults to 3 questions per page on desktop and\ \ groups all questions onto a single page for mobile." allOf: - $ref: "#/components/schemas/QuestionItemBase" - type: "object" required: - "type" properties: type: type: "string" enum: - "pagebrake" example: id: "page-1" type: "pagebrake"ベストプラクティス
応募を論理的なセクションに分割するには、pagebreak設問タイプを使用します。デフォルトでは、JSONにページ区切りが含まれていない場合、Indeedがページ区切りを挿入しますが、意図しない方法で応募が分割される可能性があります。Indeedはモバイルとデスクトップの両方で、各ページに最大10問の設問を表示します。
回答に特定の形式が必要な場合は、求職者にガイダンスを提供してください。IndeedはSimpleDateFormatを使用するため、月はMMとして書式設定する必要があります。mmを使用すると設定ミスとなります。