createPositionOpening mutation creates an empty position opening.
The postingRequester indicates the SEEK hirer and the contact details of the opening’s owner.mutation ($input: CreatePositionOpeningInput!) {
createPositionOpening(input: $input) {
positionOpening {
documentId {
value
}
}
}
}updatePositionOpeningStatus mutation updates the status of the position opening.A position opening’s status is intended to help hirers manage their position openings;
it isn’t used directly by the SEEK API.
For example, you can filter on a particular status when paginating position openings.mutation ($input: UpdatePositionOpeningStatusInput!) {
updatePositionOpeningStatus(input: $input) {
positionOpening {
statusCode
}
}
}PositionProfiles.
For example, the postPositionProfileForOpening mutation will create a job ad within the opening.The updatePositionOpeningPersonContacts mutation updates the postingRequester contact details of the position opening.mutation ($input: UpdatePositionOpeningPersonContactsInput!) {
updatePositionOpeningPersonContacts(input: $input) {
positionOpening {
documentId {
value
}
}
}
}positionOpening query returns information about an existing position opening.
You can select fields from its nested PositionOpening.paginatedPositionProfiles to retrieve information about a subset of its job ads.query ($id: String!) {
positionOpening(id: $id) {
documentId {
value
}
statusCode
paginatedPositionProfiles {
edges {
node {
profileId {
value
}
positionTitle
}
}
pageInfo {
hasNextPage
endCursor
}
}
postingRequester {
id {
value
}
}
seekPartnerMetadata
}
}positionOpenings query returns a paginated list of position openings for a given hirer.
Only position openings created by the SEEK API will appear in the paginated list.You can optionally use a statusCode filter to only return position openings with the desired status.query ($hirerId: String!, $statusCode: String) {
positionOpenings(hirerId: $hirerId, filter: { statusCode: $statusCode }) {
edges {
node {
paginatedPositionProfiles {
edges {
node {
profileId {
value
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}deletePositionOpening mutation deletes an empty position opening.Because every position profile must be nested inside an opening, you must delete all nested position profiles first:deleteUnpostedPositionProfile mutation.postPosition mutationpostPositionProfileForOpening mutationClosed.
You can then filter on Active position openings when using the positionOpenings query.mutation ($input: DeletePositionOpeningInput!) {
deletePositionOpening(input: $input) {
positionOpening {
documentId {
value
}
}
}
}