Position opening operations require a partner token.Our data model provides further context on position openings and their relation to position profiles.The following sample mutations are provided for demonstration purposes only;
they are not executable in the Playground environment.
You should use your live partner credentials to post a job ad under your unsearchable SEEK test hirer for end-to-end testing.The The After an opening has been created you can use separate mutations to create nested The The The
createPositionOpening mutation creates an empty position opening.
The postingRequester indicates the SEEK hirer and the contact details of the opening’s owner.MutationVariablesResult
CopyGraphQL Explorer
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.MutationVariablesResult
CopyGraphQL Explorer
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.MutationVariablesResult
CopyGraphQL Explorer
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.QueryVariablesResult
CopyGraphQL Explorer
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.QueryVariables
CopyGraphQL Explorer
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:- Unposted position profiles can be deleted using the
deleteUnpostedPositionProfilemutation. - The position profiles of job ads cannot be explicitly deleted; they will be automatically deleted 180 days after the job ad closes.
- Created through the
postPositionmutation - Referenced in a
postPositionProfileForOpeningmutation
Closed.
You can then filter on Active position openings when using the positionOpenings query.MutationVariablesResult
CopyGraphQL Explorer
mutation ($input: DeletePositionOpeningInput!) {
deletePositionOpening(input: $input) {
positionOpening {
documentId {
value
}
}
}
}