publish_job_posting
Publish a job posting
All MCP toolsWrite
Put a job posting live (published_at set; no version bump — visibility is not posting content). Passes under the connection's scopes — the same act as the publish button on the employer app. The statutory publish gate stands: an incomplete posting refuses (not_publishable), naming the unmet items. Publishing an already-published posting is a no-op returning the existing timestamp. Publishing is the legally binding act (Japan's Employment Security Act Art. 5-3): the publishReadiness items name exactly which statutory disclosure items are still missing — all must be met to publish. Use the version returned by get_job_posting / list_job_postings as expectedVersion — a stale value refuses with a version conflict naming the expected and latest versions; re-read and retry.
Input schema
{
"type": "object",
"properties": {
"jobId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The job to publish (jobs.id)."
},
"expectedVersion": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The version you loaded — publish does NOT increment it."
}
},
"required": [
"jobId",
"expectedVersion"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Output schema
{
"type": "object",
"properties": {
"jobId": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
},
"publishedAt": {
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$",
"description": "When the posting went (or already was) live (ISO 8601, UTC)."
}
},
"required": [
"jobId",
"publishedAt"
],
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false
}