curviate core recruiter job create

Create a Recruiter job posting draft, opening a brand-new hiring project.

Usage

curviate core recruiter job create --project-name <project-name> [flags]

Requires:

  • Each job field from its flag or from --file: --job-title-id with --job-title, --company-id or --company-name, --workplace-type, --location, --employment-status, --seniority-level, --description, --industry, --job-function, --apply-method.

Examples

curviate core recruiter job create --project-name "Staff Engineer 2026" --file job.json
curviate core recruiter job create --project-name "Staff Engineer 2026" --file - <<'EOF'
{"job_title": {"id": "9", "name": "Staff Engineer"}, "company": {"name": "Acme"},
 "workplace_type": "REMOTE", "location": "106967730", "employment_status": "FULL_TIME", "seniority_level": "MID_SENIOR_LEVEL",
 "description": "Acme is hiring a staff engineer to build the agent infrastructure our customers run in production: queues, schedulers, observability and the APIs on top. You will own design reviews, mentor two engineers and ship weekly.",
 "industry": ["4"], "job_function": ["8"], "apply_method": {"method": "external", "website_url": "https://acme.example/jobs/1"}}
EOF

Flags

FlagTypeRequiredDescription
--filestringnoThe job document: a path to a JSON file, or - to read it from stdin. Named flags merge over it.
--job-title-idstringnoResolved job-title parameter id (merged with --job-title into job_title:{id,name}).
--job-titlestringnoJob title display name (merged with --job-title-id into job_title:{id,name}).
--company-idstringnoResolved company id (or use --company-name for free text).
--company-namestringnoCompany as free text (used when no resolved id is available).
--workplace-typestringnoWorkplace arrangement: ON_SITE|HYBRID|REMOTE.
--locationstringnoA resolved LOCATION parameter id.
--employment-statusstringnoEmployment type: FULL_TIME|PART_TIME|CONTRACT|TEMPORARY|OTHER|VOLUNTEER|INTERNSHIP.
--seniority-levelstringnoSeniority level: INTERNSHIP|ENTRY_LEVEL|ASSOCIATE|MID_SENIOR_LEVEL|DIRECTOR|EXECUTIVE|NOT_APPLICABLE.
--descriptionstringnoFull job description (min 200 chars; merged over the JSON).
--industrystringnoIndustry parameter ids, 1-3 (comma-separated).
--job-functionstringnoJob-function parameter ids, 1-3 (comma-separated).
--apply-methodstringnoHow candidates apply: linkedin|external.
--notification-emailstringnoEmail notified of new applicants (used when --apply-method is linkedin).
--website-urlstringnoExternal apply URL (used when --apply-method is external).
--project-namestringyesName for the new hiring project this job opens (required).

Also accepts these global flags: --api-key, --profile, --account, --base-url, --timeout, --json, --preview, --verbose, --beta.

Exit codes: the exit code table. More commands: Recruiter.