2026-03-03
Updated the GraphQL schema and the GraphQL API Reference with these changes:
Job Sync API
Documentation(56)
Documentation
- Object type
ConditionConstraintInputhas description[added: Input for conditional questions.] - Changed the description of type
CreateSourcedJobPostingResultIntermediary type. A null `jobPosting` indicates a creation error. The GraphQL `errors` object shows the problem[removed: for each `null` value ]by index. - Object type
CreateSourcedJobPostingsPayloadhas description[added: Response for `createSourcedJobPostings` mutation.] - Changed the description of field
CreateSourcedJobPostingsPayload.resultsReturn type for each job posting in[removed: the ]`createSourcedJobPostings`[removed: mutation]. Array values cannot be[removed: `null`][added: null], but `jobPosting` can be[removed: `null`][added: null] if rejected.[removed: For details, see][added: See] the[removed: `Error`][added: `errors`] object[added: for details]. - Object type
DateQuestionInputhas description[added: Input for date question.] - Object type
DateQuestionQualificationInputhas description[added: Input for date-question qualification.] - Object type
DateScreenerQuestionInputhas description[added: Input for date screener question.] - Object type
DecimalTextQuestionInputhas description[added: Input for decimal text question.] - Object type
DecimalTextScreenerQuestionInputhas description[added: Input for decimal text screener question.] - Object type
DemographicQuestionsBodyInputhas description[added: Questions about the applicants protected class (ethnicity, gender, disability). Some jurisdictions regulate these questions, requiring special handling by Indeed and your systems. Demographic questions are limited to U.S.-based jobs for EEO compliance. Do not mix general screener questions here. Place work experience, skills, or certification questions in [`ScreenerQuestionBodyInput`](/api/job/objects/ScreenerQuestionBodyInput).`screenerQuestions` field.] - Object type
ExpireSourcedJobResulthas description[added: Response from `expireSourcedJobsBySourcedPostingId` mutation.] - Changed the description of field
ExpireSourcedJobResult.inputDataInput values for this result.[removed: `null` ][added: Is null ]on error. - Object type
ExpireSourcedJobResultInfohas description[added: Union for `inputData` field of `ExpireSourcedJobResult` type.] - Object type
ExpireSourcedJobsBySourcedPostingIdPayloadhas description[added: Response from `expireSourcedJobsBySourcedPostingId` mutation.] - Object type
FileQuestionInputhas description[added: Input for file question.] - Object type
FreeformTextQuestionInputhas description[added: Input for free-form text question.] - Object type
HierarchicalOptionInputhas description[added: Input for hierarchical option.] - Object type
HierarchicalQuestionInputhas description[added: Input for hierarchical question.] - Object type
IndeedApplyNameFormatTypehas description[added: Enum for Indeed Apply name format.] - Object type
IndeedApplyQuestionsDetailsInputhas description[added: Input for Indeed Apply question details.] - Object type
IndeedApplyScreenerQuestionsDefinitionInputhas description[added: Input for Indeed Apply screener questions.] - Object type
InformationQuestionInputhas description[added: Input for information question.] - Object type
IntegerTextScreenerQuestionInputhas description[added: Input for integer text screener question.] - Changed the description of field
JobsIngestMutations.createSourcedJobPostingsSubmits a job posting to Indeed. Success indicates Indeed received the job. Jobs are indexed within minutes to hours after spam and fraud detection. Rejected jobs have[removed: `null`][added: null] `aggregationId` with an error in the GraphQL[removed: errors][added: `errors`] object. - Changed the description of field
JobsIngestMutations.expireSourcedJobsBySourcedPostingIdExpires a job posting by `sourcedPostingId`. Always returns `ACCEPTED` without verifying the job exists. - Object type
MatchStrategyhas description[added: Enum for match strategy.] - Object type
MultiSelectQualificationQuestionInputhas description[added: Input for multi-select qualification question.] - Object type
MultiselectScreenerQuestionInputhas description[added: Input for multi-select screener question.] - Object type
PageBreakQuestionInputhas description[added: Input for page-break question.] - Object type
QualificationDateRangeConfigurationInputhas description[added: Input for qualification date range configuration.] - Object type
QualificationDecimalRangeConfigurationInputhas description[added: Input for qualification decimal range configuration.] - Object type
QualificationIntegerRangeConfigurationInputhas description[added: Input for qualification integer range configuration.] - Object type
QualificationMatchAnyTextConfigurationInputhas description[added: Input for qualification match-any-text configuration.] - Object type
QualificationMultiValueTextMatchConfigurationInputhas description[added: Input for qualification multi-value text match configuration.] - Object type
QuestionQualificationImplicationTypehas description[added: Enum for question qualification implication type.] - Object type
ScreenerQuestionBodyInputhas description[added: Questions about work experience, skills, or certifications. Do not include demographic questions (ethnicity, gender, disability) here. Some jurisdictions regulate protected class questions, requiring special handling. Place demographic questions in the [`demographicQuestions`](/api/job/objects/DemographicQuestionsBodyInput) field.] - Object type
SelectOptionInputhas description[added: Input for select option.] - Object type
SelectQualificationQuestionInputhas description[added: Input for select qualification question.] - Object type
SelectScreenerQuestionInputhas description[added: Input for select screener question.] - Changed the description of type
SourcedJobPostingReturn type for an accepted job posting. Accepted jobs are[removed: complete and ]queued for indexing. Jobs[removed: that violate Indeed][added: violating] [Job Posting Standards](https://indeedinc.my.site.com/employerSupport1/s/article/115005915763) might not appear on Indeed. - Changed the description of field
SourcedJobPosting.employerJobIdThe `EmployerJob` entity ID[removed: for the sourced job posting][added: in base64-encoded [IRI](/getstarted/iris) format]. Equivalent to `sourcedPostingId`[removed: but in Base64-encoded IRI format]. Use[removed: this ID ]to query the posting as an `EmployerJob` through `node` and `nodes` queries. - Changed the description of
inputfieldSourcedJobPostingBodyInput.descriptionJob description. Maximum 65,000 bytes (ASCII: 1 byte, other characters: 2-3 bytes). Content must match the details in `SourcedJobPostingMetadataInput.url`. Requires HTML formatting. For supported elements, see[removed: [Enterprise ATS Integration with Indeed][added: [XML feed reference]: Formatting guidelines](https:[removed: //developer][added: //docs].indeed.[removed: com/docs/indeed-apply/enterprise-ats/#formatting_guidelines][added: com/job-sync-xml/xml-feed#formatting-guidelines]). - Changed the description of
inputfieldSourcedJobPostingBodyInput.descriptionFormattingDescription format. Use `RICH_FORMATTING` for HTML. HTML[removed: descriptions have][added: has] constraints on attributes and element order. - Changed the description of
inputfieldSourcedJobPostingBodyInput.titleJob title only.[removed: Do not include][added: Omit] employment type, location, descriptions,[removed: or][added: and] other[removed: information][added: details]. - Changed the description of
inputfieldSourcedJobPostingFineGrainedJobSalaryInput.fixedOvertimePaySet to `true`[removed: if][added: when] base salary includes overtime[removed: hours without additional][added: with no extra] pay. US:[removed: Jobs meeting certain requirements can be overtime exempt. See [US Department of ][added: Some jobs are overtime-exempt. See [Fact Sheet #17A: Exemption for Executive, Administrative, Professional, Computer & Outside Sales Employees Under the Fair ]Labor[removed: website]][added: Standards Act ]([added: FLSA)](]https://www.dol.gov/agencies/whd/fact-sheets/17a-overtime). Japan: Fixed overtime means overtime pay is included in salary. See [What is Fixed Overtime Pay?](https://www.nsasia.co.jp/jsj/jobseeker/knowledge/what-is-fixed-overtime-pay). - Changed the description of
inputfieldSourcedJobPostingFineGrainedJobSalaryInput.statutoryOvertimeHoursStatutory overtime hours[removed: for the specified][added: per] period. Accepts fractions. - Changed the description of
inputfieldSourcedJobPostingFineGrainedJobSalaryInput.totalOvertimeHoursMaximum overtime hours[removed: for the specified][added: per] period. - Changed the description of
inputfieldSourcedJobPostingMetadataInput.numberOfHiresNumber of positions to fill. Leave[removed: `null`][added: null] if unknown. Set to `-1` if undecided, to be determined later. - Changed the description of type
SourcedJobPostingSalaryInputStructured salary information[removed: . Use][added: in] minor currency units (cents for US, yen for Japan). Use `maximumMinor` and `minimumMinor` for a range[removed: . Set][added: , set] both to the same value for fixed salary[removed: . Set ][added: , or set ]only `minimumMinor` for minimum-only salary. `currency`: [ISO-4217 codes](https://en.wikipedia.org/wiki/ISO_4217#Active_codes_(List_One)) ([removed: that is, ]USD, JPY). `salaryFrequency`: hour, day, week, month, mile, or year. - Changed the description of
inputfieldSourcedJobPostingSalaryInput.periodPay period.[removed: This value applies][added: Applies] to other fields in this input, such as working hours in `fineGrainedSalaryInformation`.[removed: Recommended values][added: Values]: `DAY`, `HOUR`, `MILE`, `MONTH`, `WEEK`, `YEAR`, `TASK`, `SHIFT`. If `TASK`[removed: is selected], provide `taskBasedSalaryInformation`. - Changed the description of type
SourcedJobPostingTaskBasedSalaryInput[removed: Task information for the job][added: Job task information]. - Changed the description of
inputfieldSourcedJobPostingTaskBasedSalaryInput.taskDescriptionTask description.[removed: Maximum][added: Max] 65,000 bytes ([removed: ASCII: ]1 byte[removed: , other characters: 2-3 ][added: per ASCII character; 2–3 ]bytes[added: per other character]). - Changed the description of
inputfieldSourcedJobPostingTaxonomyInput.remoteTypeLocation flexibility: - `Fully Remote` - Remote only, no on-site work - `Hybrid Remote` - Mix of on-site and remote work This field does not determine job location. :::note For non-remote and non-hybrid jobs, leave blank or set to[removed: `null`][added: null]. ::: - Object type
TextDecimalQualificationQuestionInputhas description[added: Input for text decimal qualification question.] - Object type
TextIntegerQualificationQuestionInputhas description[added: Input for text integer qualification question.] - Object type
TextScreenerQuestionInputhas description[added: Input for text screener question.]