Post a job
Posts a job with its own page and application form on the careers page.
$0.01 a call
From your agent’s balance. A call that fails costs nothing.
An example
Post a job for a bike mechanic in our Portland workshop, full time, $24 to $30 an hour, and ask how many years they've worked in a shop.
Your agent callshiring_create_job$0.01 a call
The example business is Halverson Cycle & Repair, a bike shop with a repair workshop in Portland, Oregon. The reply is the one the tool really gives.
{
"title": "Bike mechanic",
"department": "Workshop",
"location": "Portland, OR",
"workplace": "on_site",
"employment_type": "full_time",
"description": "We build, tune and repair city, gravel and cargo bikes in our Portland workshop. You work the stand with two other mechanics: tune-ups, brake bleeds, wheel builds and e-bike checks.\n\n**You have** two years or more in a bike shop, and your own basic tools.\n\n**We offer** paid time off, health insurance and a staff discount on bikes and parts.",
"salary": {
"min": 24,
"max": 30,
"currency": "USD",
"period": "hour"
},
"questions": [
{
"label": "How many years have you worked as a bike mechanic?",
"type": "number",
"required": true
},
{
"label": "Can you lift 50 lb?",
"type": "yes_no",
"required_answer": true
}
],
"criteria": [
{
"text": "Two years as a mechanic in a bike shop",
"required": true
},
{
"text": "Has built wheels",
"required": false
}
],
"open": true
}Use it when
The business is hiring for a role.
What it does
A job with its own page and application form on the careers page (cncto.co/j/<name>/<job>): name, email, phone, links, a résumé (PDF or Word), a cover letter and your questions. A draft unless open is true. Each application costs $0.50; posting is $0.01.
What comes back
job: its slug, title, status, page URL, salary text, questions, criteria, filter, stages and applicant counts; and the careers page URL. Every reply also carries cost_usd and balance_usd.
Inputs
| Name | Type | What it is |
|---|---|---|
titleRequired | string | e.g. "Bike mechanic". 2 to 160 characters. |
descriptionRequired | string | Markdown: the role, what they will do, what you look for, what you offer. 20 to 20,000 characters. |
department | string | Up to 80 characters. |
location | string | e.g. "Portland, OR". Up to 160 characters. |
workplace | string | One of: on_site,hybrid,remote. |
employment_type | string | One of: full_time,part_time,contract,internship,temporary. |
salary | object | {"min": 52000, "max": 60000, "currency": "USD", "period": "year"} (period: hour, month or year). |
questions | array of objects | Extra questions on the application form: [{"label", "type", "required", "help"}]. type: short_text, long_text, yes_no, choice, multi_choice (both with "options": ["...", "..."]), number, date or url. A yes_no question can set "required_answer": true or false; any other answer flags the applicant (never an automatic no). A date question can take include_time (a time too), range (a first and a last day), and earliest and latest ("2026-11-01", or "today", "today+7", "today-30"). Up to 10 items. |
criteria | array of objects | What a screening checks: [{"text": "Three years in customer support", "required": true, "weight": 3}]. weight, 1 to 5, is how much it counts in the match score; a required one a screening does not find is named. Give a criterion's id (from hiring_list_jobs) when rewording it, so past screenings stay attached. Used by hiring_screen_queue and hiring_record_screening. Up to 10 items. |
stages | array of strings | The steps between Applied and Hired/Rejected; default Screen, Interview, Offer. Up to 8 items. |
filter | object or null | Who the hiring team hears about: {"min_match": 70, "required": true, "max_risk": "minor"} (the lowest match score, every required criterion shown, the most risk the checks may find). With a filter, the team is told about a candidate once your screening (hiring_record_screening) passes it, in your words: by email to the careers page's notify address and as the event hiring.candidate_passed; not about every application as it arrives. null: no filter. |
filter.min_match | integer | 0 to 100. |
filter.required | boolean | |
filter.max_risk | string | One of: none,minor,high. |
open | boolean | Take applications now. Default: false. |
The call
Over MCP, call hiring_create_job on https://api.conecto.chat/mcp/hiring. Over REST:
curl -X POST https://api.conecto.chat/v1/tools/hiring_create_job \
-H "Authorization: Bearer $CONECTO_KEY" \
-H "Content-Type: application/json" \
-d '{"title":"Bike mechanic","department":"Workshop","location":"Portland, OR","workplace":"on_site","employment_type":"full_time","description":"We build, tune and repair city, gravel and cargo bikes in our Portland workshop. You work the stand with two other mechanics: tune-ups, brake bleeds, wheel builds and e-bike checks.\n\n**You have** two years or more in a bike shop, and your own basic tools.\n\n**We offer** paid time off, health insurance and a staff discount on bikes and parts.","salary":{"min":24,"max":30,"currency":"USD","period":"hour"},"questions":[{"label":"How many years have you worked as a bike mechanic?","type":"number","required":true},{"label":"Can you lift 50 lb?","type":"yes_no","required_answer":true}],"criteria":[{"text":"Two years as a mechanic in a bike shop","required":true},{"text":"Has built wheels","required":false}],"open":true}'When it refuses
A refused call costs nothing and says what to do next.
| Code | When | What to do |
|---|---|---|
not_set_up404 | The business has no careers page yet. | Run hiring_setup_careers first. |
invalid_input400 | A question, criterion, filter or salary is not valid. | Fix what the message names. |
conflict409 | A job with that title exists already. | Change it with hiring_update_job. |
More Hiring tools
All 25 tools- Set up the careers page
hiring_setup_careersSets up the careers page at cncto.co/j/<name>: its name, intro, website, reply-to address and who hears about applications.$0.001 a call - Design the job pages
hiring_design_careersGives the careers and job pages the business's own look: colours, a font, corners, a cover, a headline and its own CSS.$0.001 a call - Change a job
hiring_update_jobChanges a job's details, its criteria and filter, or opens or closes it.$0.01 a call - List jobs
hiring_list_jobsThe business's jobs with their status, page and applicants per stage.Free* - List applicants
hiring_list_applicantsApplicants, newest or best match first: for one job or all, by stage, screening, risk, name or email, or the ones kept as spam.Free* - Read an application
hiring_get_applicantOne application in full: answers, résumé link, screening and match score, the checks on who sent it, notes and history.Free* - Applications to screen
hiring_screen_queueThe next applications nobody has screened, with the job's criteria and the résumé as text, blind by default.Free* - Save a screening
hiring_record_screeningSaves a review of one application: strong, partial or weak, a summary, and each criterion with its evidence.$0.01 a call
Give this to your agent.
Set up Conecto from https://conecto.chat/SKILL.md