2026-08-17
GraphQL schema change log: 2026-08-17
📘 Documentation: Updated the GraphQL schema and the GraphQL API Reference with these changes:
-
Changed the description of type
AddSeatBodyInputfrom:Seat body for adding a seat.To:
Body data for a new seat. -
Changed the description of input field
AddSeatBodyInput.locationfrom:Location for the seat.To:
Seat location. -
Changed the description of input field
AddSeatBodyInput.salaryfrom:Salary for the seat.To:
Seat salary. -
Changed the description of type
AddSeatInputfrom:One seat add operation.To:
One seat to add. -
Changed the description of input field
AddSeatInput.bodyfrom:Seat body data.To:
Seat body. -
Changed the description of input field
AddSeatInput.seatPostingIdfrom:Agency-provided identifier for the seat. Must be unique across all seats on the job. Use it in later `updateSeats` and `clearSeats` requests.To:
Agency-provided seat ID. Must be unique across all seats on the job. -
Changed the description of type
AddSeatMetadataInputfrom:Seat metadata for adding a seat.To:
Metadata for a new seat. -
Changed the description of input field
AddSeatMetadataInput.taxonomyClassificationfrom:Taxonomy classification for the seat.To:
Taxonomy classification. -
Changed the description of input field
AddSeatMetadataInput.trackingUrlfrom:Tracking URL for the seat.To:
Tracking URL. -
Changed the description of input field
AddSeatMetadataInput.urlfrom:Job URL for the seat.To:
Job URL. -
Changed the description of type
AddSeatResultfrom:Result for one seat add operation.To:
Result for one seat add. -
Changed the description of field
AddSeatResult.employerJobIdfrom:Base64-encoded IRI of the employer job.To:
Employer job ID as a base64-encoded IRI. -
Changed the description of field
AddSeatResult.jobKeyfrom:Encrypted `aggJobId` for the seat. Pass it to `SeatIdentifierInput.jobKey` in `updateSeats` or `clearSeats`.`null` if the seat add failed.To:
Encrypted `aggJobId` for the seat returned by [`addSeats`](/api/job/mutations/jobsIngest/addSeats).Pass it to `SeatIdentifierInput.jobKey` in [`updateSeats`](/api/job/mutations/jobsIngest/updateSeats) or [`clearSeats`](/api/job/mutations/jobsIngest/clearSeats).If the seat add failed, the value is null. -
Changed the description of field
AddSeatResult.seatPostingIdfrom:Agency-provided seat identifier.To:
Agency-provided seat ID. -
Changed the description of field
AddSeatResult.sourcedPostingIdfrom:UUID form of the employer job ID.To:
Employer job ID as a UUID. -
Changed the description of type
AddSeatsInputfrom:`addSeats` input.To:
Input for `addSeats`. -
Changed the description of input field
AddSeatsInput.seatAdditionsfrom:Seat additions to process. Accepts one item.To:
Seat additions to process. -
Changed the description of type
AddSeatsPayloadfrom:`addSeats` return type.To:
Payload for `addSeats`. -
Changed the description of type
ClearSeatInputfrom:One seat clear operation.To:
One seat to remove. -
Changed the description of input field
ClearSeatInput.seatIdentifierfrom:Seat to remove. Provide one field.To:
Seat to remove.Provide one field. -
Changed the description of type
ClearSeatResultfrom:Result for one seat clear operation.To:
Result for one seat clear. -
Changed the description of field
ClearSeatResult.employerJobIdfrom:Base64-encoded IRI of the employer job.To:
Employer job ID as a base64-encoded IRI. -
Changed the description of field
ClearSeatResult.jobKeyfrom:Encrypted `aggJobId` for the seat.To:
Encrypted `aggJobId` for the seat returned by [`addSeats`](/api/job/mutations/jobsIngest/addSeats).Pass it to `SeatIdentifierInput.jobKey` in [`updateSeats`](/api/job/mutations/jobsIngest/updateSeats) or [`clearSeats`](/api/job/mutations/jobsIngest/clearSeats).If the seat add failed, the value is null. -
Changed the description of field
ClearSeatResult.seatPostingIdfrom:Agency-provided seat identifier.To:
Agency-provided seat ID. -
Changed the description of field
ClearSeatResult.sourcedPostingIdfrom:UUID form of the employer job ID.To:
Employer job ID as a UUID. -
Changed the description of type
ClearSeatsInputfrom:`clearSeats` input.To:
Input for `clearSeats`. -
Changed the description of input field
ClearSeatsInput.seatRemovalsfrom:Seat removals to process. Accepts one item.To:
Seat removals to process.Accepts one item. -
Changed the description of type
ClearSeatsPayloadfrom:`clearSeats` return type.To:
Payload for `clearSeats`. -
Changed the description of type
ClearSourcedJobPostingUpdateInputfrom:Clears updates from `updateSourcedJobPostings`.Not atomic. Errors can partially clear updates.To:
One job posting with updates from `updateSourcedJobPostings` to clear.Not atomic. Errors can partially clear updates. -
Changed the description of input field
ClearSourcedJobPostingUpdateInput.sourcedPostingIdfrom:Job post UUID from `createSourcedJobPostings`, or employer job ID as a UUID or base64-encoded [`EmployerJob`](/api/job/objects/EmployerJob) [IRI](/getstarted/iris).To:
Job post UUID from `createSourcedJobPostings`.Also accepts an employer job ID as a UUID or a base64-encoded [`EmployerJob`](/api/job/objects/EmployerJob) [IRI](/integration-basics/graphql-at-indeed/iris). -
Changed the description of type
ClearSourcedJobPostingUpdateResultfrom:Return type for each `clearJobPostingUpdates` result.To:
Result for one `clearSourcedJobPostingUpdates` operation. -
Changed the description of field
ClearSourcedJobPostingUpdateResult.jobPostingfrom:The cleared job posting, or null if nothing was cleared.To:
Cleared job posting. If nothing was cleared, null. -
Changed the description of type
ClearSourcedJobPostingUpdatesInputfrom:`clearSourcedJobPostingUpdates` input.To:
Input for `clearSourcedJobPostingUpdates`. -
Changed the description of type
ClearSourcedJobPostingUpdatesPayloadfrom:Return type for `clearSourcedJobPostingUpdates`.To:
Payload for `clearSourcedJobPostingUpdates`. -
Changed the description of field
ClearSourcedJobPostingUpdatesPayload.resultsfrom:Results for each clear operation.Array items are never null, but `jobPosting` can be null if nothing was cleared.To:
Results for each clear. Array items are never null.If nothing was cleared, `jobPosting` can be null. -
Changed the description of type
DateTimefrom:Date with time (isoformat)To:
Datetime as [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). -
Changed the description of type
EmployerJobIdentifierInputfrom:Identifies the employer job. Provide exactly one field: `sourcedPostingId` as a UUID, or `employerJobId` as a base64-encoded IRI.To:
Identifies the employer job.Provide exactly one field: `sourcedPostingId` as a UUID, or `employerJobId` as a base64-encoded IRI. -
Changed the description of input field
EmployerJobIdentifierInput.employerJobIdfrom:Base64-encoded IRI from `EmployerJob`. Accepts values from `createSourcedJobPostings` or `EmployerJob`.To:
Base64-encoded IRI from `EmployerJob`.Accepts values from `createSourcedJobPostings` or `EmployerJob`. -
Object type
JobsIngestMutationshas description:Job ingest mutations. -
Changed the description of argument
inputon fieldJobsIngestMutations.addSeatsfrom:nullTo:
Seat-add input. -
Changed the description of field
JobsIngestMutations.clearSeatsfrom:Clears or expires seats from a job.To:
Clears or expires seats on a job. -
Changed the description of argument
inputon fieldJobsIngestMutations.clearSeatsfrom:nullTo:
Seat-clear input. -
Changed the description of argument
inputon fieldJobsIngestMutations.clearSourcedJobPostingUpdatesfrom:nullTo:
Clear-updates input. -
Changed the description of argument
inputon fieldJobsIngestMutations.updateSeatsfrom:nullTo:
Seat-update input. -
Changed the description of field
JobsIngestMutations.updateSourcedJobPostingsfrom:Updates a sourced job. You must claim the job source before calling this mutation. Only one update is allowed per call.To:
Updates a sourced job.Claim the job source before calling this mutation.One update per call. -
Changed the description of argument
inputon fieldJobsIngestMutations.updateSourcedJobPostingsfrom:nullTo:
Job posting update input. -
Changed the description of input field
SeatIdentifierInput.jobKeyfrom:Encrypted `jobPostId` for the seats `JobPost`. Returned by `addSeats` and also available on `EmployerJobSeatMetaData`.To:
Encrypted `aggJobId` for the seat returned by [`addSeats`](/api/job/mutations/jobsIngest/addSeats).Pass it to `SeatIdentifierInput.jobKey` in [`updateSeats`](/api/job/mutations/jobsIngest/updateSeats) or [`clearSeats`](/api/job/mutations/jobsIngest/clearSeats).If the seat add failed, the value is null. -
Changed the description of type
SeatJobPostingSalaryInputfrom:Salary for a seat. Use `maximumMinor` and `minimumMinor` for a range. For a fixed salary, set both fields to the same value.To:
Salary for a seat.Use `maximumMinor` and `minimumMinor` for a range.For a fixed salary, set both to the same value. -
Changed the description of input field
SeatLocationInput.countryfrom:Country code. See [Supported language codes, country codes, and locales](https://docs.indeed.com/api/job/objects/CreateSourcedJobPostingInput#language-codes-and-locales).To:
Country code.See [Supported language codes, country codes, and locales](https://docs.indeed.com/api/job/objects/CreateSourcedJobPostingInput#language-codes-and-locales). -
Changed the description of input field
SeatLocationInput.latitudefrom:Latitude for the job location.To:
Latitude. -
Changed the description of input field
SeatLocationInput.longitudefrom:Longitude for the job location.To:
Longitude. -
Changed the description of input field
SeatLocationInput.streetAddressfrom:Street address. Example: `1600 Pennsylvania Ave`.To:
Street address.Example: `1600 Pennsylvania Ave`. -
Changed the description of input field
SeatTaxonomyInput.attributesfrom:Taxonomy attributes as [SUIDs](https://docs.indeed.com/getstarted/understanding-suids/#suid-format) or strings. Maximum 100 per seat.To:
Taxonomy attributes as [SUIDs](https://docs.indeed.com/getstarted/understanding-suids/#suid-format) or strings.Maximum 100 per seat. -
Changed the description of input field
SeatTaxonomyInput.remoteTypefrom:Location flexibility. Omit this field or set it to `null` for non-remote jobs.Values: `Fully Remote`, `Hybrid Remote`.To:
Location flexibility.Omit or set to null for non-remote jobs.Values: `Fully Remote`, `Hybrid Remote`. -
Changed the description of type
SourcedJobPostingUpdatefrom:Return type for an accepted job update. Changes might not appear right away.To:
Accepted job update.Changes might not appear right away. -
Changed the description of field
SourcedJobPostingUpdate.employerJobIdfrom:Employer job ID, base64-encoded as an [IRI](/getstarted/iris).To:
Employer job ID as a base64-encoded [IRI](/integration-basics/graphql-at-indeed/iris). -
Changed the description of type
UpdateSeatBodyInputfrom:Seat body for updating a seat. All fields are optional. Provide only changed fields.To:
Body data for a seat update.All fields are optional.Provide only changed fields. -
Changed the description of input field
UpdateSeatBodyInput.locationfrom:Updated location. Omit or set to `null` for no change.To:
Updated location. To leave the value unchanged, omit this field or set it to null. -
Changed the description of input field
UpdateSeatBodyInput.salaryfrom:Updated salary. Omit or set to `null` for no change.To:
Updated salary. To leave the value unchanged, omit this field or set it to null. -
Changed the description of type
UpdateSeatInputfrom:One seat update operation.To:
One seat to update. -
Changed the description of input field
UpdateSeatInput.bodyfrom:Seat body data. Omit fields for no change.To:
Seat body. To leave the value unchanged, omit this field or set it to null. -
Changed the description of input field
UpdateSeatInput.metadatafrom:Seat metadata. Omit fields for no change.To:
Seat metadata. To leave the value unchanged, omit this field or set it to null. -
Changed the description of type
UpdateSeatMetadataInputfrom:Seat metadata for updating a seat.To:
Metadata for a seat update. -
Changed the description of input field
UpdateSeatMetadataInput.taxonomyClassificationfrom:Taxonomy classification for the seat.To:
Taxonomy classification. -
Changed the description of input field
UpdateSeatMetadataInput.trackingUrlfrom:Tracking URL for the seat. Omit or set to `null` for no change.To:
Tracking URL.To leave the value unchanged, omit this field or set it to null. -
Changed the description of input field
UpdateSeatMetadataInput.urlfrom:Job URL for the seat. Omit or set to `null` for no change.To:
Job URL.To leave the value unchanged, omit this field or set it to null. -
Changed the description of field
UpdateSeatResult.employerJobIdfrom:Base64-encoded IRI of the employer job.To:
Employer job ID as a base64-encoded IRI. -
Changed the description of field
UpdateSeatResult.jobKeyfrom:Encrypted `aggJobId` for the seat.To:
Encrypted `aggJobId` for the seat returned by [`addSeats`](/api/job/mutations/jobsIngest/addSeats).Pass it to `SeatIdentifierInput.jobKey` in [`updateSeats`](/api/job/mutations/jobsIngest/updateSeats) or [`clearSeats`](/api/job/mutations/jobsIngest/clearSeats).If the seat add failed, the value is null. -
Changed the description of field
UpdateSeatResult.sourcedPostingIdfrom:UUID form of the employer job ID.To:
Employer job ID as a UUID. -
Changed the description of type
UpdateSeatsInputfrom:`updateSeats` input.To:
Input for `updateSeats`. -
Changed the description of type
UpdateSeatsPayloadfrom:Return type for `updateSeats`.To:
Payload for `updateSeats`. -
Changed the description of type
UpdateSourcedJobPostingBodyInputfrom:Updated job body. See [`UpdateSourcedJobPostingInput.body`](https://docs.indeed.com/api/job/objects/UpdateSourcedJobPostingInput).To:
Updated job body.See [`UpdateSourcedJobPostingInput.body`](https://docs.indeed.com/api/job/objects/UpdateSourcedJobPostingInput). -
Changed the description of input field
UpdateSourcedJobPostingBodyInput.companyNamefrom:Company name. Maximum 200 characters. Omit or set to `null` for no change.To:
Company name. Maximum 200 characters. To leave the value unchanged, omit this field or set it to null. -
Changed the description of input field
UpdateSourcedJobPostingBodyInput.descriptionfrom:Job description. 30 to 20,000 characters. Omit or set to `null` for no change.To:
Job description shown to job seekers.* Plain text (`TEXT`): 30 to 20,000 characters.* HTML (`HTML`): at least 30 characters, at most 65,000 [UTF-8](https://www.rfc-editor.org/info/rfc3629/) bytes. Multibyte characters count toward the byte limit.To leave the value unchanged, omit this field or set it to null.Must match the job at [`SourcedJobPostingMetadataInput.url`](/api/job/objects/SourcedJobPostingMetadataInput).If the client uses HTML on job list or details pages, Indeed requires HTML for XML and API jobs unless there is a good reason not to. To send HTML, set `descriptionFormatting` to `RICH_FORMATTING`. See [Job description formatting](/job-sync-api/reference/job-description-formatting). -
Changed the description of input field
UpdateSourcedJobPostingBodyInput.descriptionFormattingfrom:Description format. Omit to use the default `TEXT`.To:
Job description format. To send HTML, set this field to `RICH_FORMATTING`.See [Job description formatting](/job-sync-api/reference/job-description-formatting). -
Changed the description of input field
UpdateSourcedJobPostingBodyInput.jobLocationfrom:Job location. Omit or set to `null` for no change.To:
Job location. To leave the value unchanged, omit this field or set it to null. -
Changed the description of input field
UpdateSourcedJobPostingBodyInput.salaryfrom:Job salary. Omit or set to `null` for no change.To:
Job salary. To leave the value unchanged, omit this field or set it to null.Every non-null `salary` object must include `period`, including when `maximumMinor` or `minimumMinor` is set to null to clear a value. -
Changed the description of input field
UpdateSourcedJobPostingBodyInput.titlefrom:Job title. Maximum 75 characters. Omit or set to `null` for no change.To:
Job title. Maximum 75 characters. To leave the value unchanged, omit this field or set it to null. -
Object type
UpdateSourcedJobPostingGeneralLocationInputhas description:City, region, postal code, and optional street address. -
Changed the description of input field
UpdateSourcedJobPostingGeneralLocationInput.streetAddressfrom:Street address of the job location.Example: `1600 Pennsylvania Ave`.To:
Street address.Example: `1600 Pennsylvania Ave`. -
Changed the description of type
UpdateSourcedJobPostingInputfrom:Job posting update input.To:
One job posting update. -
Changed the description of input field
UpdateSourcedJobPostingInput.sourcedPostingIdfrom:Employer job UUID from `createSourcedJobPostings`. Also accepts a base64-encoded IRI from `EmployerJob`.To:
Employer job UUID from `createSourcedJobPostings`.Also accepts a base64-encoded [IRI](/integration-basics/graphql-at-indeed/iris) from `EmployerJob`. -
Changed the description of type
UpdateSourcedJobPostingLocationInputfrom:Job location update. Provide one field or the API returns an error.To:
Job location update.Provide one field or the API returns an error. -
Changed the description of input field
UpdateSourcedJobPostingLocationInput.generalfrom:General location input. Accepts values from `cityRegionPostal` to specific addresses.To:
General location, from `cityRegionPostal` to a specific address. -
Changed the description of type
UpdateSourcedJobPostingMetadataInputfrom:Job metadata to update. Provide at least one field.Not atomic. Errors can cause partial updates.To:
Job metadata to update. Not atomic. Errors can cause partial updates. -
Changed the description of input field
UpdateSourcedJobPostingMetadataInput.trackingUrlfrom:Job tracking URL.To:
Tracking URL. -
Changed the description of type
UpdateSourcedJobPostingResultfrom:Return type for each `updateSourcedJobPostings` result.To:
Result for one `updateSourcedJobPostings` operation. -
Changed the description of field
UpdateSourcedJobPostingResult.jobPostingfrom:Updated job posting, or null if the update was not accepted.To:
Updated job posting. Null if the update was not accepted. -
Object type
UpdateSourcedJobPostingSalaryInputhas description:Salary update. -
Changed the description of input field
UpdateSourcedJobPostingSalaryInput.currencyfrom:Salary currency in ISO 4217 format, such as `USD`. Omit or set to `null` for no change.To:
Salary currency in ISO 4217 format, such as `USD`.To leave the value unchanged, omit this field or set it to null. -
Changed the description of input field
UpdateSourcedJobPostingSalaryInput.maximumMinorfrom:Maximum amount in local minor currency. Omit or set to `null` to clear.To:
Maximum amount in local minor currency.To clear, omit this field or set it to null.Every non-null `salary` object must include `period`, including when `maximumMinor` is set to null to clear a value. -
Changed the description of input field
UpdateSourcedJobPostingSalaryInput.minimumMinorfrom:Minimum amount in local minor currency. Omit or set to `null` to clear.To:
Minimum amount in local minor currency.To clear, omit this field or set it to null.Every non-null `salary` object must include `period`, including when `minimumMinor` is set to null to clear a value. -
Changed the description of input field
UpdateSourcedJobPostingSalaryInput.periodfrom:Salary period.To:
Salary period.Every non-null `salary` object must include `period`, including when `maximumMinor` or `minimumMinor` is set to null to clear a value. -
Changed the description of type
UpdateSourcedJobPostingsInputfrom:`updateSourcedJobPostings` input.To:
Input for `updateSourcedJobPostings`. -
Changed the description of type
UpdateSourcedJobPostingsPayloadfrom:Return type for `updateSourcedJobPostings`.To:
Payload for `updateSourcedJobPostings`. -
Changed the description of field
UpdateSourcedJobPostingsPayload.resultsfrom:Results for each update. Array items are never null, but `jobPosting` is null if the update was not accepted.To:
Results for each update. Array items are never null.`jobPosting` is null if the update was not accepted. -
Changed the description of type
WebUrlfrom:Well-formed URL. Specification: [RFC 2396/2732](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier)To:
A well-formed URL ([RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986)).