Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign job_status_id from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass include=job_status_changes to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.
Comma-separated extra sections. Value: job_status_changes. Embeds the recorded status history on the job, oldest first. Omit to leave status history off the response. Pipeline stages, custom fields, client contacts, share links, linked deals, and fees are always returned on GET /v1/jobs/{id} and on the create response.
Salary range as a single number ("120000") or a dash-separated range ("80000-120000"). Parsed into the same structured range as salary_min/salary_max. Cannot be combined with salary_min or salary_max in the same request.
Deal UUIDs to link to this job on creation via the deal_jobs join table. Each deal must belong to the same team; otherwise the request is rejected with a validation error. Resolve IDs via POST /v1/deals/search. Max 50 deals per request.
Client contact UUIDs to assign to this job as client contacts. Each contact must already exist in your workspace, otherwise the request is rejected. Resolve IDs via GET /v1/client-contacts, or create contacts with POST /v1/client-contacts. Max 50 per request.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Stardex Help Docs","description":"AI native ATS \u0026 CRM for search firms","colors":{"primary":"#5853f7","light":"#5853f7","dark":"#EDF3F9"},"logo":{"light":"https://mintcdn.com/stardex/Unebva7RlCeyAgPy/logo/light.svg?fit=max\u0026auto=format\u0026n=Unebva7RlCeyAgPy\u0026q=85\u0026s=6a32bc87265a1562f0ee3793cb4c66e7","dark":"https://mintcdn.com/stardex/Unebva7RlCeyAgPy/logo/dark.svg?fit=max\u0026auto=format\u0026n=Unebva7RlCeyAgPy\u0026q=85\u0026s=000def45485b23628fc81f156a6306cd"},"favicon":"https://mintcdn.com/stardex/Unebva7RlCeyAgPy/favicon.svg?fit=max\u0026auto=format\u0026n=Unebva7RlCeyAgPy\u0026q=85\u0026s=dbebacabd3552482bc8b3f787e61888d","api":{"mdx":{"auth":{"method":"bearer","name":"Authorization"},"server":"https://api.stardex.ai"}},"navbar":{"links":[{"href":"mailto:support@stardex.ai","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://stardex.com/jobs"}},"footer":{"socials":{"x":"https://x.com/stardexhq","linkedin":"https://linkedin.com/company/stardexhq"}},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Home page","icon":"book-open-cover","href":"https://www.stardex.com"},{"anchor":"Blog","icon":"newspaper","href":"https://www.stardex.com/blog"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"stardex","hasAudioNarration":false,"actualSubdomain":"stardex","customDomains":["docs.stardex.com"],"gitSource":{"type":"github","owner":"dotshq","repo":"ats-plus","deployBranch":"main","contentDirectory":"apps/docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae66f02e7a853c3110a3701","collectionId":"fb3cee1b-bb22-46e6-8462-defa0373305d","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae66f02e7a853c3110a3701"},"feedback":{"thumbs":true,"edits":true,"issues":true},"entitlements":{},"buildId":"6ae8f0317f07b925ab851864","clientVersion":"0.0.4045","searchFilterCounts":[{"language":"default","tag":"API Reference","count":180},{"language":"default","tag":"Help Center","count":86},{"language":"default","tag":"Core Features","count":35},{"language":"default","tag":"Settings \u0026 Customization","count":27},{"language":"default","tag":"Campaigns","count":23},{"language":"default","tag":"Persons","count":23},{"language":"default","tag":"Jobs","count":21},{"language":"default","tag":"Integrations","count":16},{"language":"default","tag":"Retainer Packs","count":12},{"language":"default","tag":"Email \u0026 other integrations","count":10}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/jobs/create-job","slug":"/api-reference/jobs/create-job","pageMetadata":{"title":"Create job","description":"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign `job_status_id` from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass `include=job_status_changes` to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/jobs","href":"/api-reference/jobs/create-job","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign \", _jsx(_components.code, {\n children: \"job_status_id\"\n }), \" from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass \", _jsx(_components.code, {\n children: \"include=job_status_changes\"\n }), \" to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create job","description":"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign `job_status_id` from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass `include=job_status_changes` to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/jobs","href":"/api-reference/jobs/create-job","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"createJob","summary":"Create job","description":"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign `job_status_id` from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass `include=job_status_changes` to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.","tags":["Jobs"],"parameters":["7ed4107b-27c4-4e42-9827-26902e0a1679"],"requestBody":"36990601-e718-44a5-9b1c-daa977bd3471","responses":{"201":"451b48ac-7bfe-4c60-aa2e-0e5b1fc43923","400":"e96c505d-a7da-4030-b3aa-81b1f29cbeb8","404":"b493adc6-63f6-4b58-a676-860a53fd8c91","500":"c0cb187b-4981-4c81-a3ae-839fde58d32b"},"method":"post","type":"path","servers":["0f55f676-b9db-4dbe-b3e2-3132b8bc1690"],"security":["1a522db3-1c95-4503-bd27-0e07c9bb550d"],"path":"/v1/jobs","baseUrlOptions":["https://api.stardex.ai"],"title":"Create job","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"7ed4107b-27c4-4e42-9827-26902e0a1679":{"schema":{"type":"string","description":"Comma-separated extra sections. Value: job_status_changes. Embeds the recorded status history on the job, oldest first. Omit to leave status history off the response. Pipeline stages, custom fields, client contacts, share links, linked deals, and fees are always returned on GET /v1/jobs/{id} and on the create response.","isRequired":false,"uniqueKey":"","typeLabel":"string"},"required":false,"name":"include","in":"query"}},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"title":{"type":"string","minLength":1,"description":"Job title (required). E.g. \"Senior Software Engineer\".","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"company_name":{"type":"string","description":"Client company name. At least one of company_name, company_domain, or company_linkedin_url required.","uniqueKey":"company_name","typeLabel":"string"},"company_domain":{"type":"string","description":"Client company website domain (e.g. \"acme.com\"). Used for matching or creating the company.","uniqueKey":"company_domain","typeLabel":"string"},"company_linkedin_url":{"type":"string","format":"uri","description":"Client company LinkedIn URL. Used for matching or creating the company.","uniqueKey":"company_linkedin_url","typeLabel":"string\u003curi>"},"pipeline_template_name":{"type":"string","description":"Pipeline template name to use. Defaults to \"Default Template\" if omitted.","uniqueKey":"pipeline_template_name","typeLabel":"string"},"team_members":{"type":"array","items":{"type":"object","properties":{"team_member_id":{"type":"string","format":"uuid","description":"Team member UUID. Get from GET /v1/team-members. Falls back to team_member_email if not found.","uniqueKey":"team_members.items.[INDEX].team_member_id","typeLabel":"string\u003cuuid>"},"team_member_email":{"type":"string","description":"Team member email. Used when team_member_id is not provided or not found.","uniqueKey":"team_members.items.[INDEX].team_member_email","typeLabel":"string"},"role_id":{"type":"string","format":"uuid","description":"Role UUID. Get from GET /v1/jobs/team-member-roles. Falls back to role_name if not found.","uniqueKey":"team_members.items.[INDEX].role_id","typeLabel":"string\u003cuuid>"},"role_name":{"type":"string","description":"Role name (e.g. \"Team Lead\"). Used when role_id is not provided or not found.","uniqueKey":"team_members.items.[INDEX].role_name","typeLabel":"string"}},"uniqueKey":"team_members.items.[INDEX]","typeLabel":"object"},"description":"Team members to assign with their roles.","uniqueKey":"team_members","typeLabel":"object[]"},"job_description":{"type":"string","description":"Plain-text job description. Returned as description in job detail, list, and search responses.","uniqueKey":"job_description","typeLabel":"string"},"location":{"type":"string","description":"Job location (e.g. \"San Francisco, CA\").","uniqueKey":"location","typeLabel":"string"},"primary_url":{"type":"string","format":"uri","description":"Primary job posting URL.","uniqueKey":"primary_url","typeLabel":"string\u003curi>"},"currency_code":{"type":"string","pattern":"^[A-Z]{3}$","description":"ISO 4217 currency code (e.g. \"USD\", \"EUR\", \"GBP\").","uniqueKey":"currency_code","typeLabel":"string"},"job_function":{"type":"string","description":"Department or function (e.g. \"Engineering\", \"Marketing\").","uniqueKey":"job_function","typeLabel":"string"},"open_date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Job opening date (YYYY-MM-DD).","uniqueKey":"open_date","typeLabel":"string"},"end_date":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Target close date (YYYY-MM-DD).","uniqueKey":"end_date","typeLabel":"string"},"salary_min":{"type":"integer","minimum":0,"description":"Minimum annual salary.","uniqueKey":"salary_min","typeLabel":"integer"},"salary_max":{"type":"integer","minimum":0,"description":"Maximum annual salary.","uniqueKey":"salary_max","typeLabel":"integer"},"salary_range":{"type":"string","maxLength":50,"description":"Salary range as a single number (\"120000\") or a dash-separated range (\"80000-120000\"). Parsed into the same structured range as salary_min/salary_max. Cannot be combined with salary_min or salary_max in the same request.","uniqueKey":"salary_range","typeLabel":"string"},"salary_details":{"type":"string","maxLength":500,"description":"Free-text salary details that complement the structured range (e.g. \"+ 0.5% equity, signing bonus negotiable\"). Max 500 characters.","uniqueKey":"salary_details","typeLabel":"string"},"fee":{"type":"number","minimum":0,"description":"Placement fee amount.","uniqueKey":"fee","typeLabel":"number"},"billing_contact_name":{"type":"string","maxLength":255,"description":"Name of the client-side billing contact for this job (max 255 characters).","uniqueKey":"billing_contact_name","typeLabel":"string"},"billing_contact_email":{"type":"string","maxLength":255,"format":"email","description":"Email of the client-side billing contact for this job. Must be a valid email.","uniqueKey":"billing_contact_email","typeLabel":"string\u003cemail>"},"firm_commission_percent":{"type":"number","minimum":0,"maximum":100,"description":"Firm commission percentage of the placement fee (0–100).","uniqueKey":"firm_commission_percent","typeLabel":"number"},"deal_ids":{"type":"array","items":{"type":"string","format":"uuid","uniqueKey":"deal_ids.items.[INDEX]","typeLabel":"string\u003cuuid>"},"maxItems":50,"description":"Deal UUIDs to link to this job on creation via the deal_jobs join table. Each deal must belong to the same team; otherwise the request is rejected with a validation error. Resolve IDs via POST /v1/deals/search. Max 50 deals per request.","uniqueKey":"deal_ids","typeLabel":"string\u003cuuid>[]"},"client_contact_ids":{"type":"array","items":{"type":"string","format":"uuid","uniqueKey":"client_contact_ids.items.[INDEX]","typeLabel":"string\u003cuuid>"},"maxItems":50,"description":"Client contact UUIDs to assign to this job as client contacts. Each contact must already exist in your workspace, otherwise the request is rejected. Resolve IDs via GET /v1/client-contacts, or create contacts with POST /v1/client-contacts. Max 50 per request.","uniqueKey":"client_contact_ids","typeLabel":"string\u003cuuid>[]"},"job_status_id":{"type":"string","format":"uuid","description":"Job status UUID to assign on creation. Get valid IDs from GET /v1/jobs/statuses. Defaults to the team default status when omitted.","uniqueKey":"job_status_id","typeLabel":"string\u003cuuid>"}},"required":["title"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"title":"\u003cstring>","company_name":"\u003cstring>","company_domain":"\u003cstring>","company_linkedin_url":"\u003cstring>","pipeline_template_name":"\u003cstring>","team_members":[{"team_member_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","team_member_email":"\u003cstring>","role_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","role_name":"\u003cstring>"}],"job_description":"\u003cstring>","location":"\u003cstring>","primary_url":"\u003cstring>","currency_code":"\u003cstring>","job_function":"\u003cstring>","open_date":"\u003cstring>","end_date":"\u003cstring>","salary_min":1,"salary_max":1,"salary_range":"\u003cstring>","salary_details":"\u003cstring>","fee":1,"billing_contact_name":"\u003cstring>","billing_contact_email":"jsmith@example.com","firm_commission_percent":50,"deal_ids":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"client_contact_ids":["3c90c3cc-0d44-4b50-8888-8dd25736052a"],"job_status_id":"3c90c3cc-0d44-4b50-8888-8dd25736052a"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"451b48ac-7bfe-4c60-aa2e-0e5b1fc43923":{"description":"Job created","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","enum":[true],"isRequired":true,"uniqueKey":"success","typeLabel":"enum\u003cboolean>"},"data":{"type":"object","required":["pipeline_stages","id","name","created_at","is_archived","client_company_name","client_company_id","client_company_domain","client_company_linkedin_url","job_status_name","job_status_id","job_status_type","candidate_count","location","primary_url","job_function","open_date","end_date","currency_code","salary_range","salary_min","salary_max","salary_details","billing_contact_name","billing_contact_email","fee","description","team_members"],"properties":{"id":{"type":"string","description":"Unique job UUID. Use in GET /v1/jobs/{id} for full details with pipeline stages.","isRequired":true,"uniqueKey":"data.id","typeLabel":"string"},"name":{"type":"string","description":"Job title.","isRequired":true,"uniqueKey":"data.name","typeLabel":"string"},"created_at":{"type":"string","description":"ISO 8601 creation timestamp.","isRequired":true,"uniqueKey":"data.created_at","typeLabel":"string"},"is_archived":{"type":"boolean","description":"True if the job has been archived.","isRequired":true,"uniqueKey":"data.is_archived","typeLabel":"boolean"},"client_company_name":{"oneOf":[{"type":"string","description":"Client company name.","isRequired":true,"uniqueKey":"data.client_company_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Client company name.","isRequired":true,"uniqueKey":"data.client_company_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.client_company_name","typeLabel":"string | null"},"client_company_id":{"oneOf":[{"type":"string","description":"Client company UUID. Matches IDs from GET /v1/companies.","isRequired":true,"uniqueKey":"data.client_company_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Client company UUID. Matches IDs from GET /v1/companies.","isRequired":true,"uniqueKey":"data.client_company_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.client_company_id","typeLabel":"string | null"},"client_company_domain":{"oneOf":[{"type":"string","description":"Client company website domain (e.g. \"acme.com\").","isRequired":true,"uniqueKey":"data.client_company_domain.oneOf.0","typeLabel":"string"},{"type":"null","description":"Client company website domain (e.g. \"acme.com\").","isRequired":true,"uniqueKey":"data.client_company_domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.client_company_domain","typeLabel":"string | null"},"client_company_linkedin_url":{"oneOf":[{"type":"string","description":"Client company LinkedIn URL.","isRequired":true,"uniqueKey":"data.client_company_linkedin_url.oneOf.0","typeLabel":"string"},{"type":"null","description":"Client company LinkedIn URL.","isRequired":true,"uniqueKey":"data.client_company_linkedin_url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.client_company_linkedin_url","typeLabel":"string | null"},"job_status_name":{"oneOf":[{"type":"string","description":"Current job status label (e.g. \"Active\", \"On Hold\", \"Closed\").","isRequired":true,"uniqueKey":"data.job_status_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Current job status label (e.g. \"Active\", \"On Hold\", \"Closed\").","isRequired":true,"uniqueKey":"data.job_status_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_status_name","typeLabel":"string | null"},"job_status_id":{"oneOf":[{"type":"string","description":"Job status UUID. Use in job_status_ids_included/excluded filters in POST /v1/jobs/search.","isRequired":true,"uniqueKey":"data.job_status_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Job status UUID. Use in job_status_ids_included/excluded filters in POST /v1/jobs/search.","isRequired":true,"uniqueKey":"data.job_status_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_status_id","typeLabel":"string | null"},"job_status_type":{"oneOf":[{"type":"string","enum":["not_started","in_progress","closed_won","closed_lost"],"description":"Lifecycle category of the current job status: not_started, in_progress, closed_won, or closed_lost. Independent of the custom status name. Null when the job has no status.","isRequired":true,"uniqueKey":"data.job_status_type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["not_started","in_progress","closed_won","closed_lost"],"description":"Lifecycle category of the current job status: not_started, in_progress, closed_won, or closed_lost. Independent of the custom status name. Null when the job has no status.","isRequired":true,"uniqueKey":"data.job_status_type.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_status_type","typeLabel":"enum\u003cstring> | null"},"candidate_count":{"type":"number","description":"Total number of active candidates in this job. Excludes archived candidacies and candidates whose person is archived.","isRequired":true,"uniqueKey":"data.candidate_count","typeLabel":"number"},"location":{"oneOf":[{"type":"string","description":"Job location (e.g. \"New York, NY\" or \"Remote\").","isRequired":true,"uniqueKey":"data.location.oneOf.0","typeLabel":"string"},{"type":"null","description":"Job location (e.g. \"New York, NY\" or \"Remote\").","isRequired":true,"uniqueKey":"data.location.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.location","typeLabel":"string | null"},"primary_url":{"oneOf":[{"type":"string","description":"Primary job posting URL.","isRequired":true,"uniqueKey":"data.primary_url.oneOf.0","typeLabel":"string"},{"type":"null","description":"Primary job posting URL.","isRequired":true,"uniqueKey":"data.primary_url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.primary_url","typeLabel":"string | null"},"job_function":{"oneOf":[{"type":"string","description":"Department or function (e.g. \"Engineering\", \"Sales\", \"Marketing\").","isRequired":true,"uniqueKey":"data.job_function.oneOf.0","typeLabel":"string"},{"type":"null","description":"Department or function (e.g. \"Engineering\", \"Sales\", \"Marketing\").","isRequired":true,"uniqueKey":"data.job_function.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_function","typeLabel":"string | null"},"open_date":{"oneOf":[{"type":"string","description":"Date job opened (YYYY-MM-DD).","isRequired":true,"uniqueKey":"data.open_date.oneOf.0","typeLabel":"string"},{"type":"null","description":"Date job opened (YYYY-MM-DD).","isRequired":true,"uniqueKey":"data.open_date.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.open_date","typeLabel":"string | null"},"end_date":{"oneOf":[{"type":"string","description":"Target close date (YYYY-MM-DD). Null if open-ended.","isRequired":true,"uniqueKey":"data.end_date.oneOf.0","typeLabel":"string"},{"type":"null","description":"Target close date (YYYY-MM-DD). Null if open-ended.","isRequired":true,"uniqueKey":"data.end_date.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.end_date","typeLabel":"string | null"},"currency_code":{"oneOf":[{"type":"string","description":"ISO 4217 currency code (e.g. \"USD\", \"EUR\").","isRequired":true,"uniqueKey":"data.currency_code.oneOf.0","typeLabel":"string"},{"type":"null","description":"ISO 4217 currency code (e.g. \"USD\", \"EUR\").","isRequired":true,"uniqueKey":"data.currency_code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.currency_code","typeLabel":"string | null"},"salary_range":{"oneOf":[{"type":"string","description":"Raw salary range with an exclusive upper bound — \"[150000,200001)\" means 150,000 to 200,000. Prefer salary_min and salary_max, which give the same bounds as plain inclusive numbers.","isRequired":true,"uniqueKey":"data.salary_range.oneOf.0","typeLabel":"string"},{"type":"null","description":"Raw salary range with an exclusive upper bound — \"[150000,200001)\" means 150,000 to 200,000. Prefer salary_min and salary_max, which give the same bounds as plain inclusive numbers.","isRequired":true,"uniqueKey":"data.salary_range.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.salary_range","typeLabel":"string | null"},"salary_min":{"oneOf":[{"type":"integer","description":"Minimum annual salary parsed from salary_range. Null when no range is set.","isRequired":true,"uniqueKey":"data.salary_min.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Minimum annual salary parsed from salary_range. Null when no range is set.","isRequired":true,"uniqueKey":"data.salary_min.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.salary_min","typeLabel":"integer | null"},"salary_max":{"oneOf":[{"type":"integer","description":"Maximum annual salary parsed from salary_range. Null when no range is set.","isRequired":true,"uniqueKey":"data.salary_max.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Maximum annual salary parsed from salary_range. Null when no range is set.","isRequired":true,"uniqueKey":"data.salary_max.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.salary_max","typeLabel":"integer | null"},"salary_details":{"oneOf":[{"type":"string","description":"Free-text salary details that complement the structured range (e.g. \"+ 0.5% equity, signing bonus negotiable\").","isRequired":true,"uniqueKey":"data.salary_details.oneOf.0","typeLabel":"string"},{"type":"null","description":"Free-text salary details that complement the structured range (e.g. \"+ 0.5% equity, signing bonus negotiable\").","isRequired":true,"uniqueKey":"data.salary_details.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.salary_details","typeLabel":"string | null"},"billing_contact_name":{"oneOf":[{"type":"string","description":"Name of the client-side billing contact for this job (used on invoices).","isRequired":true,"uniqueKey":"data.billing_contact_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Name of the client-side billing contact for this job (used on invoices).","isRequired":true,"uniqueKey":"data.billing_contact_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.billing_contact_name","typeLabel":"string | null"},"billing_contact_email":{"oneOf":[{"type":"string","description":"Email of the client-side billing contact for this job. Validated as an email on write.","isRequired":true,"uniqueKey":"data.billing_contact_email.oneOf.0","typeLabel":"string"},{"type":"null","description":"Email of the client-side billing contact for this job. Validated as an email on write.","isRequired":true,"uniqueKey":"data.billing_contact_email.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.billing_contact_email","typeLabel":"string | null"},"fee":{"oneOf":[{"type":"number","description":"Manually entered forecasting fee stored on the job (used for pipeline/BD forecasting). This is NOT the fee tracked in the \"Fees and Placements\" section — for that, use the \"fees\" section (see fees.total_placement_fee).","isRequired":true,"uniqueKey":"data.fee.oneOf.0","typeLabel":"number"},{"type":"null","description":"Manually entered forecasting fee stored on the job (used for pipeline/BD forecasting). This is NOT the fee tracked in the \"Fees and Placements\" section — for that, use the \"fees\" section (see fees.total_placement_fee).","isRequired":true,"uniqueKey":"data.fee.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fee","typeLabel":"number | null"},"description":{"oneOf":[{"type":"string","description":"Plain-text job description.","isRequired":true,"uniqueKey":"data.description.oneOf.0","typeLabel":"string"},{"type":"null","description":"Plain-text job description.","isRequired":true,"uniqueKey":"data.description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.description","typeLabel":"string | null"},"team_members":{"type":"array","items":{"type":"object","properties":{"team_member_id":{"type":"string","description":"Team member UUID. Matches IDs from GET /v1/team-members.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].team_member_id","typeLabel":"string"},"email":{"oneOf":[{"type":"string","description":"Team member email address.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].email.oneOf.0","typeLabel":"string"},{"type":"null","description":"Team member email address.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].email.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].email","typeLabel":"string | null"},"first_name":{"oneOf":[{"type":"string","description":"First name.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].first_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"First name.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].first_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].first_name","typeLabel":"string | null"},"last_name":{"oneOf":[{"type":"string","description":"Last name.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].last_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Last name.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].last_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].last_name","typeLabel":"string | null"},"role_id":{"oneOf":[{"type":"string","description":"Job team member role UUID. Get available roles from GET /v1/jobs/team-member-roles.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].role_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"Job team member role UUID. Get available roles from GET /v1/jobs/team-member-roles.","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].role_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].role_id","typeLabel":"string | null"},"role_name":{"oneOf":[{"type":"string","description":"Role display name (e.g. \"Team Lead\", \"Executive Sponsor\").","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].role_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Role display name (e.g. \"Team Lead\", \"Executive Sponsor\").","isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].role_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.team_members.items.[INDEX].role_name","typeLabel":"string | null"}},"required":["team_member_id","email","first_name","last_name","role_id","role_name"],"uniqueKey":"data.team_members.items.[INDEX]","typeLabel":"object"},"description":"Team members assigned to this job with their roles.","isRequired":true,"uniqueKey":"data.team_members","typeLabel":"object[]"},"pipeline_stages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","description":"Pipeline stage UUID, the same on every job and in GET /v1/jobs/pipeline-stages. Use in pipeline_stage_ids_included/excluded filters in POST /v1/persons/search, or as stage_id in POST /v1/candidates/update-stage.","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].id","typeLabel":"string"},"name":{"type":"string","description":"Stage display name (e.g. \"Application Review\", \"Technical Interview\").","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].name","typeLabel":"string"},"stage_order":{"type":"number","description":"Sort key for this job's stages. Sort ascending to get the pipeline order. Values can be negative or decimal and are not consecutive, so use them only for sorting.","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].stage_order","typeLabel":"number"},"is_archived":{"type":"boolean","description":"True if the stage is archived on this job or was deleted from the team's stages. Candidates already in it stay there, but POST /v1/candidates/update-stage rejects moving anyone into it (400 STAGE_ARCHIVED).","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].is_archived","typeLabel":"boolean"},"is_rejection_stage":{"type":"boolean","description":"True if this stage represents rejection/disqualification.","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].is_rejection_stage","typeLabel":"boolean"},"is_interviewing_stage":{"type":"boolean","description":"True if this stage represents an interview round.","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].is_interviewing_stage","typeLabel":"boolean"},"is_offer_stage":{"type":"boolean","description":"True if this stage represents an offer.","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].is_offer_stage","typeLabel":"boolean"},"is_placement_stage":{"type":"boolean","description":"True if this stage represents a placement (candidate hired).","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].is_placement_stage","typeLabel":"boolean"},"job_pipeline_stage_id":{"type":"string","description":"This job's copy of the stage. Matches current_job_pipeline_stage_id in candidate webhooks and previous_stage_id / new_stage_id in POST /v1/candidates/update-stage responses.","isRequired":true,"uniqueKey":"data.pipeline_stages.items.[INDEX].job_pipeline_stage_id","typeLabel":"string"}},"required":["id","name","stage_order","is_archived","is_rejection_stage","is_interviewing_stage","is_offer_stage","is_placement_stage","job_pipeline_stage_id"],"uniqueKey":"data.pipeline_stages.items.[INDEX]","typeLabel":"object"},"description":"This job's own pipeline stages ordered by stage_order, archived ones included. Use stage IDs for filtering candidates or moving them between stages.","isRequired":true,"uniqueKey":"data.pipeline_stages","typeLabel":"object[]"},"client_contacts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique ID of this contact's assignment to the job.","isRequired":true,"uniqueKey":"data.client_contacts.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"client_contact_id":{"type":"string","format":"uuid","description":"Client contact UUID. Pass these in client_contact_ids when creating or updating a job.","isRequired":true,"uniqueKey":"data.client_contacts.items.[INDEX].client_contact_id","typeLabel":"string\u003cuuid>"},"person_id":{"oneOf":[{"type":"string","format":"uuid","description":"UUID of the person this contact represents. Use GET /v1/persons/{id} for their email, phone, and title.","isRequired":true,"uniqueKey":"data.client_contacts.items.[INDEX].person_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","description":"UUID of the person this contact represents. Use GET /v1/persons/{id} for their email, phone, and title.","isRequired":true,"uniqueKey":"data.client_contacts.items.[INDEX].person_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.client_contacts.items.[INDEX].person_id","typeLabel":"string\u003cuuid> | null"},"name":{"oneOf":[{"type":"string","description":"Contact's full name.","isRequired":true,"uniqueKey":"data.client_contacts.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Contact's full name.","isRequired":true,"uniqueKey":"data.client_contacts.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.client_contacts.items.[INDEX].name","typeLabel":"string | null"}},"required":["id","client_contact_id","person_id","name"],"uniqueKey":"data.client_contacts.items.[INDEX]","typeLabel":"object"},"description":"Client-side contacts assigned to this job (the \"Client Contacts\" field on the job). Always returned by GET /v1/jobs/{id}; on list and search, request it with \"client_contacts\" in the include parameter.","uniqueKey":"data.client_contacts","typeLabel":"object[]"},"share_links":{"type":"array","items":{"type":"object","required":["id","url","title","created_at","requires_email_verification","keep_active_when_job_closed"],"properties":{"id":{"type":"string","description":"Share link ID used in the public URL path. This is a slug, not a UUID.","isRequired":true,"uniqueKey":"data.share_links.items.[INDEX].id","typeLabel":"string"},"url":{"type":"string","description":"Public client-pipeline URL for this share link (https://stardex.com/share/{orgSlug}/{id}).","format":"uri","isRequired":true,"uniqueKey":"data.share_links.items.[INDEX].url","typeLabel":"string\u003curi>"},"title":{"type":"string","description":"Share link display title.","isRequired":true,"uniqueKey":"data.share_links.items.[INDEX].title","typeLabel":"string"},"created_at":{"type":"string","description":"ISO 8601 creation timestamp.","isRequired":true,"uniqueKey":"data.share_links.items.[INDEX].created_at","typeLabel":"string"},"requires_email_verification":{"type":"boolean","description":"True if viewers must verify their email before opening the pipeline.","isRequired":true,"uniqueKey":"data.share_links.items.[INDEX].requires_email_verification","typeLabel":"boolean"},"keep_active_when_job_closed":{"type":"boolean","description":"True if this link stays publicly accessible after the job is closed. Closed-job links without this flag are omitted because they are expired.","isRequired":true,"uniqueKey":"data.share_links.items.[INDEX].keep_active_when_job_closed","typeLabel":"boolean"}},"uniqueKey":"data.share_links.items.[INDEX]","typeLabel":"object"},"description":"Active client-pipeline share links for this job (always included in detail view). Expired closed-job links are omitted.","default":[],"uniqueKey":"data.share_links","typeLabel":"object[]"},"linked_deals":{"type":"array","items":{"type":"object","required":["deal_id","deal_job_id","name","amount","currency_code","deal_status_id","deal_status_name","deal_status_color"],"properties":{"deal_id":{"type":"string","description":"Deal UUID. Matches IDs from GET /v1/deals/{id} or POST /v1/deals/search.","format":"uuid","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_id","typeLabel":"string\u003cuuid>"},"deal_job_id":{"type":"string","description":"UUID of the join row in the deal_jobs table linking this job to the deal.","format":"uuid","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_job_id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","description":"Deal name.","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].name","typeLabel":"string"},"amount":{"oneOf":[{"type":"number","description":"Deal amount (fee invoiced to the client). Null if unset.","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].amount.oneOf.0","typeLabel":"number"},{"type":"null","description":"Deal amount (fee invoiced to the client). Null if unset.","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].amount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].amount","typeLabel":"number | null"},"currency_code":{"oneOf":[{"type":"string","description":"ISO 4217 currency code for the deal amount (e.g. \"USD\").","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].currency_code.oneOf.0","typeLabel":"string"},{"type":"null","description":"ISO 4217 currency code for the deal amount (e.g. \"USD\").","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].currency_code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].currency_code","typeLabel":"string | null"},"deal_status_id":{"oneOf":[{"type":"string","description":"Current deal status UUID, if any.","format":"uuid","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"Current deal status UUID, if any.","format":"uuid","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_id","typeLabel":"string\u003cuuid> | null"},"deal_status_name":{"oneOf":[{"type":"string","description":"Current deal status display name (e.g. \"Qualified\", \"Won\", \"Lost\").","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Current deal status display name (e.g. \"Qualified\", \"Won\", \"Lost\").","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_name","typeLabel":"string | null"},"deal_status_color":{"oneOf":[{"type":"string","description":"Hex color of the deal status badge (e.g. \"#10B981\").","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_color.oneOf.0","typeLabel":"string"},{"type":"null","description":"Hex color of the deal status badge (e.g. \"#10B981\").","isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_color.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.linked_deals.items.[INDEX].deal_status_color","typeLabel":"string | null"}},"uniqueKey":"data.linked_deals.items.[INDEX]","typeLabel":"object"},"description":"CRM deals linked to this job via the deal_jobs join table (separate from the Fees and Placements section). Omitted for API-key callers without deals:read.","uniqueKey":"data.linked_deals","typeLabel":"object[]"},"fees":{"type":"object","description":"Fee and placement data from the \"Fees and Placements\" section (retainer structure, billing events, and total placement fee). Omitted for API-key callers without compensation:read.","required":["retainer","fee_events","total_placement_fee"],"properties":{"retainer":{"type":"object","description":"Retainer fee structure for this job, or null if the job is not a retained engagement.","required":["id","fee_type","fee_base","fee_percentage","projected_fee","estimated_compensation","installment_count","final_payment_type","currency_code"],"properties":{"id":{"type":"string","description":"Retainer UUID.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.retainer.id","typeLabel":"string\u003cuuid>"},"fee_type":{"type":"string","description":"How the projected fee is calculated (\"percentage\", \"fixed\").","isRequired":true,"uniqueKey":"data.fees.retainer.fee_type","typeLabel":"string"},"fee_base":{"oneOf":[{"type":"string","description":"Basis the percentage applies to (e.g. \"first_year_salary\").","isRequired":true,"uniqueKey":"data.fees.retainer.fee_base.oneOf.0","typeLabel":"string"},{"type":"null","description":"Basis the percentage applies to (e.g. \"first_year_salary\").","isRequired":true,"uniqueKey":"data.fees.retainer.fee_base.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.retainer.fee_base","typeLabel":"string | null"},"fee_percentage":{"oneOf":[{"type":"number","description":"Fee percentage used when fee_type is percentage-based.","isRequired":true,"uniqueKey":"data.fees.retainer.fee_percentage.oneOf.0","typeLabel":"number"},{"type":"null","description":"Fee percentage used when fee_type is percentage-based.","isRequired":true,"uniqueKey":"data.fees.retainer.fee_percentage.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.retainer.fee_percentage","typeLabel":"number | null"},"projected_fee":{"type":"number","description":"Total projected engagement value for the retainer.","isRequired":true,"uniqueKey":"data.fees.retainer.projected_fee","typeLabel":"number"},"estimated_compensation":{"oneOf":[{"type":"number","description":"Estimated candidate compensation the fee is based on.","isRequired":true,"uniqueKey":"data.fees.retainer.estimated_compensation.oneOf.0","typeLabel":"number"},{"type":"null","description":"Estimated candidate compensation the fee is based on.","isRequired":true,"uniqueKey":"data.fees.retainer.estimated_compensation.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.retainer.estimated_compensation","typeLabel":"number | null"},"installment_count":{"type":"number","description":"Number of installments the retainer is split into.","isRequired":true,"uniqueKey":"data.fees.retainer.installment_count","typeLabel":"number"},"final_payment_type":{"type":"string","description":"How the final payment is handled (e.g. \"on_placement\").","isRequired":true,"uniqueKey":"data.fees.retainer.final_payment_type","typeLabel":"string"},"currency_code":{"oneOf":[{"type":"string","description":"ISO 4217 currency code for the retainer.","isRequired":true,"uniqueKey":"data.fees.retainer.currency_code.oneOf.0","typeLabel":"string"},{"type":"null","description":"ISO 4217 currency code for the retainer.","isRequired":true,"uniqueKey":"data.fees.retainer.currency_code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.retainer.currency_code","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"data.fees.retainer","typeLabel":"object"},"fee_events":{"type":"array","items":{"type":"object","required":["id","type","label","amount","total_fee","currency_code","fee_type","fee_percentage","compensation","firm_commission_percent","is_placeholder","sequence","start_date","expected_date","actual_payment_date","candidate_id","offer_id","retainer_id","fee_status_id","fee_status_name","fee_status_color","fee_status_type","linked_retainer_pack_id","claimed_pack_retainer_id","pack_retainer_amount"],"properties":{"id":{"type":"string","description":"Fee event UUID.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"type":{"type":"string","description":"Fee event type. \"placement\" is a completed placement fee; \"retainer\" and \"milestone\" are retained-search billing events.","enum":["retainer","milestone","placement"],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"label":{"oneOf":[{"type":"string","description":"Optional label for the fee event.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].label.oneOf.0","typeLabel":"string"},{"type":"null","description":"Optional label for the fee event.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].label.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].label","typeLabel":"string | null"},"amount":{"oneOf":[{"type":"number","description":"Billable amount for this fee event. For placements, the full fee minus the retainers deducted from it: retainers billed on this job and, when the placement claimed one, a retainer pack retainer (see pack_retainer_amount). Never below 0. Null if unset.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].amount.oneOf.0","typeLabel":"number"},{"type":"null","description":"Billable amount for this fee event. For placements, the full fee minus the retainers deducted from it: retainers billed on this job and, when the placement claimed one, a retainer pack retainer (see pack_retainer_amount). Never below 0. Null if unset.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].amount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].amount","typeLabel":"number | null"},"total_fee":{"oneOf":[{"type":"number","description":"Full fee for the event (for placements, the commission base before splits). Null if unset.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].total_fee.oneOf.0","typeLabel":"number"},{"type":"null","description":"Full fee for the event (for placements, the commission base before splits). Null if unset.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].total_fee.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].total_fee","typeLabel":"number | null"},"currency_code":{"oneOf":[{"type":"string","description":"ISO 4217 currency code for the fee amounts (e.g. \"USD\"). Null if unset.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].currency_code.oneOf.0","typeLabel":"string"},{"type":"null","description":"ISO 4217 currency code for the fee amounts (e.g. \"USD\"). Null if unset.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].currency_code.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].currency_code","typeLabel":"string | null"},"fee_type":{"oneOf":[{"type":"string","description":"How the fee is calculated (e.g. \"percentage\", \"fixed\").","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_type.oneOf.0","typeLabel":"string"},{"type":"null","description":"How the fee is calculated (e.g. \"percentage\", \"fixed\").","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_type.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_type","typeLabel":"string | null"},"fee_percentage":{"oneOf":[{"type":"number","description":"Fee percentage used when fee_type is percentage-based.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_percentage.oneOf.0","typeLabel":"number"},{"type":"null","description":"Fee percentage used when fee_type is percentage-based.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_percentage.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_percentage","typeLabel":"number | null"},"compensation":{"oneOf":[{"type":"number","description":"Candidate compensation the fee percentage is applied to.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].compensation.oneOf.0","typeLabel":"number"},{"type":"null","description":"Candidate compensation the fee percentage is applied to.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].compensation.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].compensation","typeLabel":"number | null"},"firm_commission_percent":{"oneOf":[{"type":"number","description":"Firm's commission percentage for this event (0–100).","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].firm_commission_percent.oneOf.0","typeLabel":"number"},{"type":"null","description":"Firm's commission percentage for this event (0–100).","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].firm_commission_percent.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].firm_commission_percent","typeLabel":"number | null"},"is_placeholder":{"type":"boolean","description":"True if this is a projected/placeholder event rather than a confirmed one.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].is_placeholder","typeLabel":"boolean"},"sequence":{"oneOf":[{"type":"number","description":"Ordering position within the fee schedule.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].sequence.oneOf.0","typeLabel":"number"},{"type":"null","description":"Ordering position within the fee schedule.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].sequence.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].sequence","typeLabel":"number | null"},"start_date":{"oneOf":[{"type":"string","description":"Start date (YYYY-MM-DD), if any.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].start_date.oneOf.0","typeLabel":"string"},{"type":"null","description":"Start date (YYYY-MM-DD), if any.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].start_date.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].start_date","typeLabel":"string | null"},"expected_date":{"oneOf":[{"type":"string","description":"Expected billing/payment date (YYYY-MM-DD).","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].expected_date.oneOf.0","typeLabel":"string"},{"type":"null","description":"Expected billing/payment date (YYYY-MM-DD).","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].expected_date.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].expected_date","typeLabel":"string | null"},"actual_payment_date":{"oneOf":[{"type":"string","description":"Actual payment date (YYYY-MM-DD), once paid.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].actual_payment_date.oneOf.0","typeLabel":"string"},{"type":"null","description":"Actual payment date (YYYY-MM-DD), once paid.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].actual_payment_date.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].actual_payment_date","typeLabel":"string | null"},"candidate_id":{"oneOf":[{"type":"string","description":"Placed candidate UUID for placement events. Matches IDs from GET /v1/candidates/{id}.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].candidate_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"Placed candidate UUID for placement events. Matches IDs from GET /v1/candidates/{id}.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].candidate_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].candidate_id","typeLabel":"string\u003cuuid> | null"},"offer_id":{"oneOf":[{"type":"string","description":"Associated job offer UUID, if any.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].offer_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"Associated job offer UUID, if any.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].offer_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].offer_id","typeLabel":"string\u003cuuid> | null"},"retainer_id":{"oneOf":[{"type":"string","description":"Parent retainer UUID for retainer installment events, if any.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].retainer_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"Parent retainer UUID for retainer installment events, if any.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].retainer_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].retainer_id","typeLabel":"string\u003cuuid> | null"},"fee_status_id":{"oneOf":[{"type":"string","description":"Fee status UUID, if any.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"Fee status UUID, if any.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_id","typeLabel":"string\u003cuuid> | null"},"fee_status_name":{"oneOf":[{"type":"string","description":"Fee status display name (e.g. \"Invoiced\", \"Paid\").","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Fee status display name (e.g. \"Invoiced\", \"Paid\").","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_name","typeLabel":"string | null"},"fee_status_color":{"oneOf":[{"type":"string","description":"Hex color of the fee status badge.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_color.oneOf.0","typeLabel":"string"},{"type":"null","description":"Hex color of the fee status badge.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_color.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_color","typeLabel":"string | null"},"fee_status_type":{"oneOf":[{"type":"string","description":"Underlying fee status category.","enum":["pending","invoiced","paid","cancelled"],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Underlying fee status category.","enum":["pending","invoiced","paid","cancelled"],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_type.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].fee_status_type","typeLabel":"enum\u003cstring> | null"},"linked_retainer_pack_id":{"oneOf":[{"type":"string","description":"Retainer pack UUID this placement is part of, from the client company's retainer packs. Null for other events and for placements outside any pack.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].linked_retainer_pack_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"Retainer pack UUID this placement is part of, from the client company's retainer packs. Null for other events and for placements outside any pack.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].linked_retainer_pack_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].linked_retainer_pack_id","typeLabel":"string\u003cuuid> | null"},"claimed_pack_retainer_id":{"oneOf":[{"type":"string","description":"UUID of the retainer pack retainer this placement used. Null when the placement claimed none, including extra hires linked to the pack at no retainer.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].claimed_pack_retainer_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"UUID of the retainer pack retainer this placement used. Null when the placement claimed none, including extra hires linked to the pack at no retainer.","format":"uuid","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].claimed_pack_retainer_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].claimed_pack_retainer_id","typeLabel":"string\u003cuuid> | null"},"pack_retainer_amount":{"oneOf":[{"type":"number","description":"Amount of the claimed retainer pack retainer, deducted from this placement amount. Null when no pack retainer was claimed.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].pack_retainer_amount.oneOf.0","typeLabel":"number"},{"type":"null","description":"Amount of the claimed retainer pack retainer, deducted from this placement amount. Null when no pack retainer was claimed.","isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].pack_retainer_amount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.fee_events.items.[INDEX].pack_retainer_amount","typeLabel":"number | null"}},"uniqueKey":"data.fees.fee_events.items.[INDEX]","typeLabel":"object"},"description":"All billing events for this job — placements plus retainer installments/milestones. Filter by the \"type\" field.","isRequired":true,"uniqueKey":"data.fees.fee_events","typeLabel":"object[]"},"total_placement_fee":{"oneOf":[{"type":"number","description":"Sum of total_fee across all non-placeholder, non-cancelled placement events. Null when there are no such placements. This reflects the fees entered in the \"Fees and Placements\" section, unlike the top-level \"fee\" field which is a manually entered forecasting value on the job.","isRequired":true,"uniqueKey":"data.fees.total_placement_fee.oneOf.0","typeLabel":"number"},{"type":"null","description":"Sum of total_fee across all non-placeholder, non-cancelled placement events. Null when there are no such placements. This reflects the fees entered in the \"Fees and Placements\" section, unlike the top-level \"fee\" field which is a manually entered forecasting value on the job.","isRequired":true,"uniqueKey":"data.fees.total_placement_fee.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.fees.total_placement_fee","typeLabel":"number | null"}},"uniqueKey":"data.fees","typeLabel":"object"},"custom_fields":{"type":"array","items":{"type":"object","required":["attribute_id","attribute_name","data_type","job_id","list_id","value","tag","team_member","company"],"properties":{"attribute_id":{"type":"string","description":"Attribute definition UUID. Get definitions from GET /v1/custom-fields/{entity}.","format":"uuid","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].attribute_id","typeLabel":"string\u003cuuid>"},"attribute_name":{"type":"string","description":"Attribute display name.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].attribute_name","typeLabel":"string"},"data_type":{"type":"string","description":"Attribute data type. Determines which value field contains the data.","enum":["string","integer","decimal","multi-select","single-select","boolean","date","multi-team-member","multi-company","url"],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].data_type","typeLabel":"enum\u003cstring>"},"job_id":{"oneOf":[{"type":"string","description":"Job UUID this attribute is scoped to. Null for global person-level attributes. Present when this custom field is specific to a job (candidate-level field).","format":"uuid","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].job_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"Job UUID this attribute is scoped to. Null for global person-level attributes. Present when this custom field is specific to a job (candidate-level field).","format":"uuid","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].job_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].job_id","typeLabel":"string\u003cuuid> | null"},"list_id":{"oneOf":[{"type":"string","description":"List UUID this attribute is scoped to. Null for global person-level attributes.","format":"uuid","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].list_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"List UUID this attribute is scoped to. Null for global person-level attributes.","format":"uuid","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].list_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].list_id","typeLabel":"string\u003cuuid> | null"},"value":{"oneOf":[{"type":"string","description":"Scalar value for string, integer, decimal, date, url, boolean types. Null for select/team-member/company types.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].value.oneOf.0","typeLabel":"string"},{"type":"number","description":"Scalar value for string, integer, decimal, date, url, boolean types. Null for select/team-member/company types.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].value.oneOf.1","typeLabel":"number"},{"type":"boolean","description":"Scalar value for string, integer, decimal, date, url, boolean types. Null for select/team-member/company types.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].value.oneOf.2","typeLabel":"boolean"},{"type":"null","description":"Scalar value for string, integer, decimal, date, url, boolean types. Null for select/team-member/company types.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].value.oneOf.3","typeLabel":"null"},{"type":"null","description":"Scalar value for string, integer, decimal, date, url, boolean types. Null for select/team-member/company types.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].value.oneOf.4","typeLabel":"null"},{"type":"null","description":"Scalar value for string, integer, decimal, date, url, boolean types. Null for select/team-member/company types.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].value.oneOf.5","typeLabel":"null"},{"type":"null","description":"Scalar value for string, integer, decimal, date, url, boolean types. Null for select/team-member/company types.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].value.oneOf.6","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].value","typeLabel":"string · number · boolean · null · null · null · null"},"tag":{"oneOf":[{"type":"object","description":"Tag value for single-select and multi-select types. Null for other types. For multi-select, one CustomFieldValue row per tag.","required":["id","name"],"properties":{"id":{"type":"string","description":"Tag option UUID.","format":"uuid","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].tag.oneOf.0.id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","description":"Tag display name.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].tag.oneOf.0.name","typeLabel":"string"}},"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].tag.oneOf.0","typeLabel":"object"},{"type":"null","description":"Tag value for single-select and multi-select types. Null for other types. For multi-select, one CustomFieldValue row per tag.","required":["id","name"],"properties":{"id":{"type":"string","description":"Tag option UUID.","format":"uuid"},"name":{"type":"string","description":"Tag display name."}},"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].tag.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].tag","typeLabel":"object | null"},"team_member":{"oneOf":[{"type":"object","description":"Team member value for multi-team-member type. Null for other types. One CustomFieldValue row per team member.","required":["id","name"],"properties":{"id":{"type":"string","description":"Team member UUID.","format":"uuid","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].team_member.oneOf.0.id","typeLabel":"string\u003cuuid>"},"name":{"oneOf":[{"type":"string","description":"Team member full name.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].team_member.oneOf.0.name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Team member full name.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].team_member.oneOf.0.name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].team_member.oneOf.0.name","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].team_member.oneOf.0","typeLabel":"object"},{"type":"null","description":"Team member value for multi-team-member type. Null for other types. One CustomFieldValue row per team member.","required":["id","name"],"properties":{"id":{"type":"string","description":"Team member UUID.","format":"uuid"},"name":{"oneOf":[{"type":"string","description":"Team member full name."},{"type":"null","description":"Team member full name."}]}},"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].team_member.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].team_member","typeLabel":"object | null"},"company":{"oneOf":[{"type":"object","description":"Company value for multi-company type. Null for other types. One CustomFieldValue row per company.","required":["id","name"],"properties":{"id":{"type":"string","description":"Company UUID.","format":"uuid","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].company.oneOf.0.id","typeLabel":"string\u003cuuid>"},"name":{"oneOf":[{"type":"string","description":"Company display name.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].company.oneOf.0.name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Company display name.","isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].company.oneOf.0.name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].company.oneOf.0.name","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].company.oneOf.0","typeLabel":"object"},{"type":"null","description":"Company value for multi-company type. Null for other types. One CustomFieldValue row per company.","required":["id","name"],"properties":{"id":{"type":"string","description":"Company UUID.","format":"uuid"},"name":{"oneOf":[{"type":"string","description":"Company display name."},{"type":"null","description":"Company display name."}]}},"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].company.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.custom_fields.items.[INDEX].company","typeLabel":"object | null"}},"uniqueKey":"data.custom_fields.items.[INDEX]","typeLabel":"object"},"description":"Custom attribute values (always included in detail view). Definitions from GET /v1/custom-fields/jobs.","default":[],"uniqueKey":"data.custom_fields","typeLabel":"object[]"},"job_status_changes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Status-change record UUID.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"job_status_id":{"type":"string","format":"uuid","description":"Status the job entered. Matches ids from GET /v1/jobs/statuses.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].job_status_id","typeLabel":"string\u003cuuid>"},"job_status_name":{"oneOf":[{"type":"string","description":"Name of the status at the time it was recorded.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].job_status_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Name of the status at the time it was recorded.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].job_status_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].job_status_name","typeLabel":"string | null"},"job_status_type":{"oneOf":[{"type":"string","enum":["not_started","in_progress","closed_won","closed_lost"],"description":"Lifecycle category of that status: not_started, in_progress, closed_won, or closed_lost.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].job_status_type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["not_started","in_progress","closed_won","closed_lost"],"description":"Lifecycle category of that status: not_started, in_progress, closed_won, or closed_lost.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].job_status_type.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].job_status_type","typeLabel":"enum\u003cstring> | null"},"entered_at":{"type":"string","description":"ISO 8601 timestamp when the job entered this status.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].entered_at","typeLabel":"string"},"exited_at":{"oneOf":[{"type":"string","description":"ISO 8601 timestamp when the job left this status. Null while this is the current status.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].exited_at.oneOf.0","typeLabel":"string"},{"type":"null","description":"ISO 8601 timestamp when the job left this status. Null while this is the current status.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].exited_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].exited_at","typeLabel":"string | null"},"created_at":{"type":"string","description":"ISO 8601 timestamp when this history row was recorded.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].created_at","typeLabel":"string"},"created_by":{"oneOf":[{"type":"string","format":"uuid","description":"Team member who recorded the change. Null when the change was not attributed. Matches ids from GET /v1/team-members.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].created_by.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","description":"Team member who recorded the change. Null when the change was not attributed. Matches ids from GET /v1/team-members.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].created_by.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].created_by","typeLabel":"string\u003cuuid> | null"},"reason_text":{"oneOf":[{"type":"string","description":"Optional note stored with the status change.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].reason_text.oneOf.0","typeLabel":"string"},{"type":"null","description":"Optional note stored with the status change.","isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].reason_text.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.job_status_changes.items.[INDEX].reason_text","typeLabel":"string | null"}},"required":["id","job_status_id","job_status_name","job_status_type","entered_at","exited_at","created_at","created_by","reason_text"],"uniqueKey":"data.job_status_changes.items.[INDEX]","typeLabel":"object"},"description":"Recorded job status history, oldest first. Each entry is one stay in a status. Included on list, search, job detail, and create when include contains \"job_status_changes\". Omitted otherwise.","uniqueKey":"data.job_status_changes","typeLabel":"object[]"},"referral_partners":{"type":"array","items":{"type":"object","properties":{"client_contact_id":{"type":"string","format":"uuid","description":"Client contact UUID of the referral partner. Matches IDs from GET /v1/client-contacts.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].client_contact_id","typeLabel":"string\u003cuuid>"},"person_id":{"oneOf":[{"type":"string","format":"uuid","description":"Person UUID behind the client contact. Use GET /v1/persons/{id} for contact details.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].person_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","description":"Person UUID behind the client contact. Use GET /v1/persons/{id} for contact details.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].person_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].person_id","typeLabel":"string\u003cuuid> | null"},"name":{"oneOf":[{"type":"string","description":"Partner's full name.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Partner's full name.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].name","typeLabel":"string | null"},"title":{"oneOf":[{"type":"string","description":"Partner's current job title.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].title.oneOf.0","typeLabel":"string"},{"type":"null","description":"Partner's current job title.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].title.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].title","typeLabel":"string | null"},"image_url":{"oneOf":[{"type":"string","description":"Profile image URL.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].image_url.oneOf.0","typeLabel":"string"},{"type":"null","description":"Profile image URL.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].image_url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].image_url","typeLabel":"string | null"},"company_id":{"oneOf":[{"type":"string","format":"uuid","description":"UUID of the client company the contact belongs to.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].company_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","description":"UUID of the client company the contact belongs to.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].company_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].company_id","typeLabel":"string\u003cuuid> | null"},"company_name":{"oneOf":[{"type":"string","description":"Name of the client company the contact belongs to.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].company_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Name of the client company the contact belongs to.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].company_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].company_name","typeLabel":"string | null"},"default_split_percentage":{"oneOf":[{"type":"number","description":"Default percentage offered to this partner when a placement is logged on the job. More than 0 and at most 100, rounded to 2 decimals. Null when no default is set.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].default_split_percentage.oneOf.0","typeLabel":"number"},{"type":"null","description":"Default percentage offered to this partner when a placement is logged on the job. More than 0 and at most 100, rounded to 2 decimals. Null when no default is set.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].default_split_percentage.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].default_split_percentage","typeLabel":"number | null"},"default_mode":{"type":"string","enum":["off_the_top","team_pool"],"description":"How the referral partner is paid on a placement. `off_the_top`: the percentage is taken from the full placement fee before the team is credited. `team_pool`: the partner shares the team commission pool with the team members.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].default_mode","typeLabel":"enum\u003cstring>"},"created_at":{"type":"string","description":"ISO 8601 timestamp when the partner was added to the job.","isRequired":true,"uniqueKey":"data.referral_partners.items.[INDEX].created_at","typeLabel":"string"}},"required":["client_contact_id","person_id","name","title","image_url","company_id","company_name","default_split_percentage","default_mode","created_at"],"uniqueKey":"data.referral_partners.items.[INDEX]","typeLabel":"object"},"description":"Client contacts who referred this job, oldest first. Manage them with /v1/jobs/{id}/referral-partners. Omitted for API-key callers without fees:read.","uniqueKey":"data.referral_partners","typeLabel":"object[]"},"pack_retainer_split":{"type":"array","items":{"type":"object","properties":{"team_member_id":{"type":"string","format":"uuid","description":"Team member UUID credited. Matches IDs from GET /v1/team-members.","isRequired":true,"uniqueKey":"data.pack_retainer_split.items.[INDEX].team_member_id","typeLabel":"string\u003cuuid>"},"team_member_name":{"oneOf":[{"type":"string","description":"Team member's full name. Null when no name is set.","isRequired":true,"uniqueKey":"data.pack_retainer_split.items.[INDEX].team_member_name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Team member's full name. Null when no name is set.","isRequired":true,"uniqueKey":"data.pack_retainer_split.items.[INDEX].team_member_name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.pack_retainer_split.items.[INDEX].team_member_name","typeLabel":"string | null"},"role":{"oneOf":[{"type":"string","description":"Optional label for why this person gets credit (e.g. \"Sales\").","isRequired":true,"uniqueKey":"data.pack_retainer_split.items.[INDEX].role.oneOf.0","typeLabel":"string"},{"type":"null","description":"Optional label for why this person gets credit (e.g. \"Sales\").","isRequired":true,"uniqueKey":"data.pack_retainer_split.items.[INDEX].role.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.pack_retainer_split.items.[INDEX].role","typeLabel":"string | null"},"split_percentage":{"type":"number","description":"Share of the retainer credited to this team member (0-100). All rows total 100.","isRequired":true,"uniqueKey":"data.pack_retainer_split.items.[INDEX].split_percentage","typeLabel":"number"}},"required":["team_member_id","team_member_name","role","split_percentage"],"uniqueKey":"data.pack_retainer_split.items.[INDEX]","typeLabel":"object"},"description":"Credit split copied onto a retainer pack retainer when a placement on this job claims it. Empty when the job has none (claimed retainers then keep the pack default split). Set it with PUT /v1/jobs/{id}/pack-retainer-split. Omitted for API-key callers without fees:read.","uniqueKey":"data.pack_retainer_split","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"data","typeLabel":"object"}},"required":["success","data"],"uniqueKey":"","typeLabel":"object"},"example":{"success":true,"data":{"id":"123e4567-e89b-12d3-a456-426614174000","name":"Senior Software Engineer","created_at":"2024-01-10T09:00:00Z","is_archived":false,"client_company_name":"StartupXYZ","client_company_id":"456e7890-e12b-34d5-a678-901234567890","client_company_domain":"startupxyz.com","client_company_linkedin_url":"https://www.linkedin.com/company/startupxyz","job_status_name":"Active","job_status_id":"789e0123-e45f-67a8-b901-234567890123","job_status_type":"in_progress","candidate_count":12,"location":"San Francisco, CA","primary_url":"https://startupxyz.com/careers/senior-swe","job_function":"Engineering","open_date":"2024-01-01","end_date":null,"currency_code":"USD","salary_range":"[150000,200001)","salary_min":150000,"salary_max":200000,"salary_details":"+ 0.5% equity, signing bonus negotiable","billing_contact_name":"Sarah Chen","billing_contact_email":"sarah.chen@startupxyz.com","fee":25000,"description":"We are looking for a Senior Software Engineer to join our platform team...","team_members":[{"team_member_id":"234e5678-e90a-12b3-c456-789012345678","email":"jane@company.com","first_name":"Jane","last_name":"Smith","role_id":"345e6789-e01b-23c4-d567-890123456789","role_name":"Team Lead"},{"team_member_id":"345e6789-f01b-23c4-d567-890123456789","email":"bob@company.com","first_name":"Bob","last_name":"Johnson","role_id":"456e7890-f12b-34d5-e678-901234567890","role_name":"Executive Sponsor"}],"client_contacts":[{"id":"c1d2e3f4-a5b6-7890-cdef-123456789012","client_contact_id":"d2e3f4a5-b6c7-8901-defa-234567890123","person_id":"e3f4a5b6-c7d8-9012-efab-345678901234","name":"Maria Gonzalez"}],"share_links":[{"id":"client-pipeline-abc123","url":"https://stardex.com/share/startupxyz/client-pipeline-abc123","title":"Client pipeline","created_at":"2024-01-12T14:30:00Z","requires_email_verification":true,"keep_active_when_job_closed":false}],"linked_deals":[{"deal_id":"a1b2c3d4-e5f6-7890-abcd-ef1234567890","deal_job_id":"b2c3d4e5-f6a7-8901-bcde-f12345678901","name":"StartupXYZ — Senior SWE retained search","amount":35000,"currency_code":"USD","deal_status_id":"7201a0b8-e63c-4d8f-899d-78cdd62b5c38","deal_status_name":"Qualified","deal_status_color":"#10B981"}],"fees":{"retainer":{"id":"e5f6a7b8-c9d0-1234-ef01-345678901234","fee_type":"percentage","fee_base":"first_year_salary","fee_percentage":25,"projected_fee":50000,"estimated_compensation":200000,"installment_count":3,"final_payment_type":"on_placement","currency_code":"USD"},"fee_events":[{"id":"f6a7b8c9-d0e1-2345-f012-456789012345","type":"retainer","label":"Engagement fee","amount":16666.67,"total_fee":50000,"currency_code":"USD","fee_type":"percentage","fee_percentage":25,"compensation":200000,"firm_commission_percent":100,"is_placeholder":false,"sequence":1,"start_date":"2024-01-05","expected_date":"2024-01-10","actual_payment_date":"2024-01-11","candidate_id":null,"offer_id":null,"retainer_id":"e5f6a7b8-c9d0-1234-ef01-345678901234","fee_status_id":"a7b8c9d0-e1f2-3456-0123-567890123456","fee_status_name":"Paid","fee_status_color":"#10B981","fee_status_type":"paid","linked_retainer_pack_id":null,"claimed_pack_retainer_id":null,"pack_retainer_amount":null},{"id":"b8c9d0e1-f2a3-4567-1234-678901234567","type":"placement","label":"Placement — Jane Smith","amount":21333.33,"total_fee":50000,"currency_code":"USD","fee_type":"percentage","fee_percentage":25,"compensation":200000,"firm_commission_percent":100,"is_placeholder":false,"sequence":null,"start_date":null,"expected_date":"2024-03-15","actual_payment_date":null,"candidate_id":"234e5678-e90a-12b3-c456-789012345678","offer_id":"c9d0e1f2-a3b4-5678-2345-789012345678","retainer_id":null,"fee_status_id":"d0e1f2a3-b4c5-6789-3456-890123456789","fee_status_name":"Invoiced","fee_status_color":"#3B82F6","fee_status_type":"invoiced","linked_retainer_pack_id":"2b3c4d5e-6f70-4812-9a3b-c4d5e6f70812","claimed_pack_retainer_id":"3c4d5e6f-7081-4923-ab4c-d5e6f7081923","pack_retainer_amount":12000}],"total_placement_fee":50000},"job_status_changes":[{"id":"f1a2b3c4-d5e6-7890-abcd-ef1234567890","job_status_id":"111e2222-e33f-44a5-b666-777888999000","job_status_name":"Not Started","job_status_type":"not_started","entered_at":"2024-01-01T12:00:00Z","exited_at":"2024-01-10T09:00:00Z","created_at":"2024-01-01T12:00:00Z","created_by":"234e5678-e90a-12b3-c456-789012345678","reason_text":null},{"id":"a2b3c4d5-e6f7-8901-bcde-f12345678901","job_status_id":"789e0123-e45f-67a8-b901-234567890123","job_status_name":"Active","job_status_type":"in_progress","entered_at":"2024-01-10T09:00:00Z","exited_at":null,"created_at":"2024-01-10T09:00:00Z","created_by":"234e5678-e90a-12b3-c456-789012345678","reason_text":"Kickoff complete"}],"custom_fields":[{"attribute_id":"c3d4e5f6-a7b8-9012-cdef-123456789012","attribute_name":"Priority","data_type":"single-select","value":null,"tag":{"id":"d4e5f6a7-b8c9-0123-defg-234567890123","name":"High"},"team_member":null,"company":null},{"attribute_id":"e5f6a7b8-c9d0-1234-efab-345678901234","attribute_name":"Sponsor","data_type":"multi-company","value":null,"tag":null,"team_member":null,"company":{"id":"456e7890-e12b-34d5-a678-901234567890","name":"Acme Corp"}}],"referral_partners":[{"client_contact_id":"d2e3f4a5-b6c7-8901-defa-234567890123","person_id":"e3f4a5b6-c7d8-9012-efab-345678901234","name":"Priya Natarajan","title":"Managing Partner","image_url":"https://example.com/priya-natarajan.png","company_id":"678e9012-a34b-56c7-d890-123456789abc","company_name":"Northwind Ventures","default_split_percentage":10,"default_mode":"off_the_top","created_at":"2024-01-12T15:00:00Z"},{"client_contact_id":"f4a5b6c7-d8e9-0123-fabc-456789012345","person_id":"a5b6c7d8-e9f0-1234-abcd-567890123456","name":"Tom Becker","title":"Board Advisor","image_url":null,"company_id":"456e7890-e12b-34d5-a678-901234567890","company_name":"StartupXYZ","default_split_percentage":null,"default_mode":"team_pool","created_at":"2024-01-20T09:30:00Z"}],"pack_retainer_split":[{"team_member_id":"456e7890-a12b-34c5-d678-901234567890","team_member_name":"Theo Martin","role":"Sales","split_percentage":30},{"team_member_id":"234e5678-e90a-12b3-c456-789012345678","team_member_name":"Jane Smith","role":null,"split_percentage":35},{"team_member_id":"345e6789-f01b-23c4-d567-890123456789","team_member_name":"Bob Johnson","role":null,"split_percentage":35}],"pipeline_stages":[{"id":"345e6789-e01b-23c4-d567-890123456789","job_pipeline_stage_id":"a12e3456-b78c-49d0-e123-456789012345","name":"Application Review","stage_order":1000,"is_archived":false,"is_rejection_stage":false,"is_interviewing_stage":false,"is_offer_stage":false,"is_placement_stage":false},{"id":"456e7890-f12b-34d5-e678-901234567890","job_pipeline_stage_id":"b23e4567-c89d-40e1-f234-567890123456","name":"Phone Screen","stage_order":2000,"is_archived":false,"is_rejection_stage":false,"is_interviewing_stage":true,"is_offer_stage":false,"is_placement_stage":false},{"id":"567e8901-e23c-45d6-e789-012345678901","job_pipeline_stage_id":"c34e5678-d90e-41f2-a345-678901234567","name":"Technical Interview","stage_order":2500,"is_archived":false,"is_rejection_stage":false,"is_interviewing_stage":true,"is_offer_stage":false,"is_placement_stage":false},{"id":"901e2345-b67c-89d0-e123-456789012345","job_pipeline_stage_id":"d45e6789-e01f-42a3-b456-789012345678","name":"Take Home Assessment","stage_order":2750,"is_archived":true,"is_rejection_stage":false,"is_interviewing_stage":true,"is_offer_stage":false,"is_placement_stage":false},{"id":"678e9012-f34d-56e7-f890-123456789012","job_pipeline_stage_id":"e56e7890-f12a-43b4-c567-890123456789","name":"Offer","stage_order":3000,"is_archived":false,"is_rejection_stage":false,"is_interviewing_stage":false,"is_offer_stage":true,"is_placement_stage":false},{"id":"789e0123-a45b-67c8-d901-234567890123","job_pipeline_stage_id":"f67e8901-a23b-44c5-d678-901234567890","name":"Rejected","stage_order":9000,"is_archived":false,"is_rejection_stage":true,"is_interviewing_stage":false,"is_offer_stage":false,"is_placement_stage":false}]}},"examples":{"Example":{"title":"Example","value":{"success":true,"data":{"id":"123e4567-e89b-12d3-a456-426614174000","name":"Senior Software Engineer","created_at":"2024-01-10T09:00:00Z","is_archived":false,"client_company_name":"StartupXYZ","client_company_id":"456e7890-e12b-34d5-a678-901234567890","client_company_domain":"startupxyz.com","client_company_linkedin_url":"https://www.linkedin.com/company/startupxyz","job_status_name":"Active","job_status_id":"789e0123-e45f-67a8-b901-234567890123","job_status_type":"in_progress","candidate_count":12,"location":"San Francisco, CA","primary_url":"https://startupxyz.com/careers/senior-swe","job_function":"Engineering","open_date":"2024-01-01","end_date":null,"currency_code":"USD","salary_range":"[150000,200001)","salary_min":150000,"salary_max":200000,"salary_details":"+ 0.5% equity, signing bonus negotiable","billing_contact_name":"Sarah Chen","billing_contact_email":"sarah.chen@startupxyz.com","fee":25000,"description":"We are looking for a Senior Software Engineer to join our platform team...","team_members":[{"team_member_id":"234e5678-e90a-12b3-c456-789012345678","email":"jane@company.com","first_name":"Jane","last_name":"Smith","role_id":"345e6789-e01b-23c4-d567-890123456789","role_name":"Team Lead"},{"team_member_id":"345e6789-f01b-23c4-d567-890123456789","email":"bob@company.com","first_name":"Bob","last_name":"Johnson","role_id":"456e7890-f12b-34d5-e678-901234567890","role_name":"Executive Sponsor"}],"client_contacts":[{"id":"c1d2e3f4-a5b6-7890-cdef-123456789012","client_contact_id":"d2e3f4a5-b6c7-8901-defa-234567890123","person_id":"e3f4a5b6-c7d8-9012-efab-345678901234","name":"Maria Gonzalez"}],"share_links":[{"id":"client-pipeline-abc123","url":"https://stardex.com/share/startupxyz/client-pipeline-abc123","title":"Client pipeline","created_at":"2024-01-12T14:30:00Z","requires_email_verification":true,"keep_active_when_job_closed":false}],"linked_deals":[{"deal_id":"a1b2c3d4-e5f6-7890-abcd-ef1234567890","deal_job_id":"b2c3d4e5-f6a7-8901-bcde-f12345678901","name":"StartupXYZ — Senior SWE retained search","amount":35000,"currency_code":"USD","deal_status_id":"7201a0b8-e63c-4d8f-899d-78cdd62b5c38","deal_status_name":"Qualified","deal_status_color":"#10B981"}],"fees":{"retainer":{"id":"e5f6a7b8-c9d0-1234-ef01-345678901234","fee_type":"percentage","fee_base":"first_year_salary","fee_percentage":25,"projected_fee":50000,"estimated_compensation":200000,"installment_count":3,"final_payment_type":"on_placement","currency_code":"USD"},"fee_events":[{"id":"f6a7b8c9-d0e1-2345-f012-456789012345","type":"retainer","label":"Engagement fee","amount":16666.67,"total_fee":50000,"currency_code":"USD","fee_type":"percentage","fee_percentage":25,"compensation":200000,"firm_commission_percent":100,"is_placeholder":false,"sequence":1,"start_date":"2024-01-05","expected_date":"2024-01-10","actual_payment_date":"2024-01-11","candidate_id":null,"offer_id":null,"retainer_id":"e5f6a7b8-c9d0-1234-ef01-345678901234","fee_status_id":"a7b8c9d0-e1f2-3456-0123-567890123456","fee_status_name":"Paid","fee_status_color":"#10B981","fee_status_type":"paid","linked_retainer_pack_id":null,"claimed_pack_retainer_id":null,"pack_retainer_amount":null},{"id":"b8c9d0e1-f2a3-4567-1234-678901234567","type":"placement","label":"Placement — Jane Smith","amount":21333.33,"total_fee":50000,"currency_code":"USD","fee_type":"percentage","fee_percentage":25,"compensation":200000,"firm_commission_percent":100,"is_placeholder":false,"sequence":null,"start_date":null,"expected_date":"2024-03-15","actual_payment_date":null,"candidate_id":"234e5678-e90a-12b3-c456-789012345678","offer_id":"c9d0e1f2-a3b4-5678-2345-789012345678","retainer_id":null,"fee_status_id":"d0e1f2a3-b4c5-6789-3456-890123456789","fee_status_name":"Invoiced","fee_status_color":"#3B82F6","fee_status_type":"invoiced","linked_retainer_pack_id":"2b3c4d5e-6f70-4812-9a3b-c4d5e6f70812","claimed_pack_retainer_id":"3c4d5e6f-7081-4923-ab4c-d5e6f7081923","pack_retainer_amount":12000}],"total_placement_fee":50000},"job_status_changes":[{"id":"f1a2b3c4-d5e6-7890-abcd-ef1234567890","job_status_id":"111e2222-e33f-44a5-b666-777888999000","job_status_name":"Not Started","job_status_type":"not_started","entered_at":"2024-01-01T12:00:00Z","exited_at":"2024-01-10T09:00:00Z","created_at":"2024-01-01T12:00:00Z","created_by":"234e5678-e90a-12b3-c456-789012345678","reason_text":null},{"id":"a2b3c4d5-e6f7-8901-bcde-f12345678901","job_status_id":"789e0123-e45f-67a8-b901-234567890123","job_status_name":"Active","job_status_type":"in_progress","entered_at":"2024-01-10T09:00:00Z","exited_at":null,"created_at":"2024-01-10T09:00:00Z","created_by":"234e5678-e90a-12b3-c456-789012345678","reason_text":"Kickoff complete"}],"custom_fields":[{"attribute_id":"c3d4e5f6-a7b8-9012-cdef-123456789012","attribute_name":"Priority","data_type":"single-select","value":null,"tag":{"id":"d4e5f6a7-b8c9-0123-defg-234567890123","name":"High"},"team_member":null,"company":null},{"attribute_id":"e5f6a7b8-c9d0-1234-efab-345678901234","attribute_name":"Sponsor","data_type":"multi-company","value":null,"tag":null,"team_member":null,"company":{"id":"456e7890-e12b-34d5-a678-901234567890","name":"Acme Corp"}}],"referral_partners":[{"client_contact_id":"d2e3f4a5-b6c7-8901-defa-234567890123","person_id":"e3f4a5b6-c7d8-9012-efab-345678901234","name":"Priya Natarajan","title":"Managing Partner","image_url":"https://example.com/priya-natarajan.png","company_id":"678e9012-a34b-56c7-d890-123456789abc","company_name":"Northwind Ventures","default_split_percentage":10,"default_mode":"off_the_top","created_at":"2024-01-12T15:00:00Z"},{"client_contact_id":"f4a5b6c7-d8e9-0123-fabc-456789012345","person_id":"a5b6c7d8-e9f0-1234-abcd-567890123456","name":"Tom Becker","title":"Board Advisor","image_url":null,"company_id":"456e7890-e12b-34d5-a678-901234567890","company_name":"StartupXYZ","default_split_percentage":null,"default_mode":"team_pool","created_at":"2024-01-20T09:30:00Z"}],"pack_retainer_split":[{"team_member_id":"456e7890-a12b-34c5-d678-901234567890","team_member_name":"Theo Martin","role":"Sales","split_percentage":30},{"team_member_id":"234e5678-e90a-12b3-c456-789012345678","team_member_name":"Jane Smith","role":null,"split_percentage":35},{"team_member_id":"345e6789-f01b-23c4-d567-890123456789","team_member_name":"Bob Johnson","role":null,"split_percentage":35}],"pipeline_stages":[{"id":"345e6789-e01b-23c4-d567-890123456789","job_pipeline_stage_id":"a12e3456-b78c-49d0-e123-456789012345","name":"Application Review","stage_order":1000,"is_archived":false,"is_rejection_stage":false,"is_interviewing_stage":false,"is_offer_stage":false,"is_placement_stage":false},{"id":"456e7890-f12b-34d5-e678-901234567890","job_pipeline_stage_id":"b23e4567-c89d-40e1-f234-567890123456","name":"Phone Screen","stage_order":2000,"is_archived":false,"is_rejection_stage":false,"is_interviewing_stage":true,"is_offer_stage":false,"is_placement_stage":false},{"id":"567e8901-e23c-45d6-e789-012345678901","job_pipeline_stage_id":"c34e5678-d90e-41f2-a345-678901234567","name":"Technical Interview","stage_order":2500,"is_archived":false,"is_rejection_stage":false,"is_interviewing_stage":true,"is_offer_stage":false,"is_placement_stage":false},{"id":"901e2345-b67c-89d0-e123-456789012345","job_pipeline_stage_id":"d45e6789-e01f-42a3-b456-789012345678","name":"Take Home Assessment","stage_order":2750,"is_archived":true,"is_rejection_stage":false,"is_interviewing_stage":true,"is_offer_stage":false,"is_placement_stage":false},{"id":"678e9012-f34d-56e7-f890-123456789012","job_pipeline_stage_id":"e56e7890-f12a-43b4-c567-890123456789","name":"Offer","stage_order":3000,"is_archived":false,"is_rejection_stage":false,"is_interviewing_stage":false,"is_offer_stage":true,"is_placement_stage":false},{"id":"789e0123-a45b-67c8-d901-234567890123","job_pipeline_stage_id":"f67e8901-a23b-44c5-d678-901234567890","name":"Rejected","stage_order":9000,"is_archived":false,"is_rejection_stage":true,"is_interviewing_stage":false,"is_offer_stage":false,"is_placement_stage":false}]}}}},"exampleType":"examples"}},"exampleType":"examples"},"e96c505d-a7da-4030-b3aa-81b1f29cbeb8":{"description":"Validation error","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","enum":[false],"description":"Always false for error responses.","isRequired":true,"uniqueKey":"success","typeLabel":"enum\u003cboolean>"},"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code (e.g. \"VALIDATION_ERROR\", \"NOT_FOUND\").","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error description.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"description":"Extra facts about the error when they help you fix it, such as a limit and when it resets.","uniqueKey":"error.details","typeLabel":"object"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["success","error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"b493adc6-63f6-4b58-a676-860a53fd8c91":{"description":"Resource not found","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","enum":[false],"description":"Always false for error responses.","isRequired":true,"uniqueKey":"success","typeLabel":"enum\u003cboolean>"},"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code (e.g. \"VALIDATION_ERROR\", \"NOT_FOUND\").","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error description.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"description":"Extra facts about the error when they help you fix it, such as a limit and when it resets.","uniqueKey":"error.details","typeLabel":"object"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["success","error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"c0cb187b-4981-4c81-a3ae-839fde58d32b":{"description":"Internal server error","content":{"application/json":{"schema":{"type":"object","properties":{"success":{"type":"boolean","enum":[false],"description":"Always false for error responses.","isRequired":true,"uniqueKey":"success","typeLabel":"enum\u003cboolean>"},"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code (e.g. \"VALIDATION_ERROR\", \"NOT_FOUND\").","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error description.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"details":{"type":"object","additionalProperties":{"oneOf":[{}],"uniqueKey":"error.details.additionalProperties","typeLabel":"any"},"description":"Extra facts about the error when they help you fix it, such as a limit and when it resets.","uniqueKey":"error.details","typeLabel":"object"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["success","error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"\u003cstring>","message":"\u003cstring>","details":{}}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"1a522db3-1c95-4503-bd27-0e07c9bb550d":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Authenticate with a Bearer token: API key, OAuth token, or session token.","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"0f55f676-b9db-4dbe-b3e2-3132b8bc1690":{"url":"https://api.stardex.ai","description":"Production API server"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Authenticate with a Bearer token: API key, OAuth token, or session token.","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Authenticate with a Bearer token: API key, OAuth token, or session token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/openapi-v1.json"},"subdomain":"stardex","siteName":"Stardex Help Docs","title":"Create job - Stardex Help Docs","navMaps":{"firstHrefInVersion":{"v1":{"href":"/api-reference/jobs/create-job","matchLevel":0},"v0 (Deprecated)":{"href":"/api-reference/introduction","matchLevel":3}},"firstHrefInLanguage":{}},"lastModified":"2026-11-02T20:19:17.721Z","originalFileLocation":"api-reference/jobs/create-job.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign job_status_id from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass include=job_status_changes to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Stardex Help Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create job - Stardex Help Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign job_status_id from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass include=job_status_changes to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Stardex Help Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.stardex.com/api-reference/jobs/create-job\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://stardex.mintlify.app/_mintlify/api/og/v2?division=Jobs\u0026amp;title=Create+job\u0026amp;description=Create+a+new+job+with+company+association%2C+pipeline+template%2C+and+team+member+assignments.+The+company+will+be+matched+or+created+automatically+based+on+the+ide\u0026amp;theme=2ff938ec1d7da32d63cb34ec\u0026amp;signature=1442f5f7bc63cd3897935fc1fbdb2f42c2bd904035845c85dbb3db2d40cf000b\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create job - Stardex Help Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign job_status_id from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass include=job_status_changes to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://stardex.mintlify.app/_mintlify/api/og/v2?division=Jobs\u0026amp;title=Create+job\u0026amp;description=Create+a+new+job+with+company+association%2C+pipeline+template%2C+and+team+member+assignments.+The+company+will+be+matched+or+created+automatically+based+on+the+ide\u0026amp;theme=2ff938ec1d7da32d63cb34ec\u0026amp;signature=1442f5f7bc63cd3897935fc1fbdb2f42c2bd904035845c85dbb3db2d40cf000b\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/stardex/joPRbrJhRInrO3yB/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Stardex Help Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5853f7\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.stardex.com/api-reference/jobs/create-job\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/jobs/create-job.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.stardex.com/#organization\",\"name\":\"Stardex Help Docs\",\"url\":\"https://docs.stardex.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/stardex/Unebva7RlCeyAgPy/logo/light.svg?fit=max\u0026auto=format\u0026n=Unebva7RlCeyAgPy\u0026q=85\u0026s=6a32bc87265a1562f0ee3793cb4c66e7\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.stardex.com#website\",\"name\":\"Stardex Help Docs\",\"url\":\"https://docs.stardex.com\",\"publisher\":{\"@id\":\"https://docs.stardex.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.stardex.com/api-reference/jobs/create-job#webpage\",\"url\":\"https://docs.stardex.com/api-reference/jobs/create-job\",\"name\":\"Create job\",\"description\":\"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign job_status_id from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass include=job_status_changes to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.\",\"dateModified\":\"2026-11-02T20:19:17.721Z\",\"isPartOf\":{\"@id\":\"https://docs.stardex.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.stardex.com/api-reference/jobs/create-job#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.stardex.com/api-reference/jobs/create-job#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Jobs\",\"item\":\"https://docs.stardex.com/api-reference/jobs/list-jobs-deprecated\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create job\",\"item\":\"https://docs.stardex.com/api-reference/jobs/create-job\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.stardex.com/api-reference/jobs/create-job#apireference\",\"headline\":\"Create job\",\"name\":\"Create job\",\"description\":\"Create a new job with company association, pipeline template, and team member assignments. The company will be matched or created automatically based on the identifiers provided. Optionally assign job_status_id from GET /v1/jobs/statuses (defaults to the team default status). Optionally link existing deals by passing deal_ids — each deal must belong to the same team (resolve IDs via POST /v1/deals/search). Optionally link existing client contacts by passing client_contact_ids — each contact must belong to the same team (resolve IDs via GET /v1/client-contacts). Pass include=job_status_changes to embed the recorded status history on the created job, oldest first. Background AI tasks (candidate search, criteria generation) are triggered after creation. Changes made through the API only start automations that are set to run on API and MCP changes (runs_on_api_changes), so one call cannot start runs across hundreds of records by accident.\",\"url\":\"https://docs.stardex.com/api-reference/jobs/create-job\",\"mainEntityOfPage\":{\"@id\":\"https://docs.stardex.com/api-reference/jobs/create-job#webpage\"},\"dateModified\":\"2026-11-02T20:19:17.721Z\",\"publisher\":{\"@id\":\"https://docs.stardex.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.stardex.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Stardex Help Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Stardex Help Docs","nav":{"global":{"anchors":[{"anchor":"Home page","icon":"book-open-cover","href":"https://www.stardex.com"},{"anchor":"Blog","icon":"newspaper","href":"https://www.stardex.com/blog"}]},"tabs":[{"tab":"Guides","hidden":true,"pages":[{"title":"Guides","href":"/help-center/ai-activity-updates"}]},{"tab":"Help Center","pages":[{"title":"Help Center","href":"/help-center"}]},{"tab":"Changelog","hidden":true,"pages":[{"title":"Changelog","href":"/changelog-stardex"}]},{"tab":"API Reference","versions":[{"version":"v1","groups":[{"group":"API Documentation","pages":[{"title":"Introduction","href":"/api-reference/introduction-v1"},{"title":"Enrolling people in campaigns","href":"/api-reference/campaigns-guide"}]},{"group":"Activity Reports","pages":[{"title":"Generate an activity \u0026 stage-change report","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/activity-reports","href":"/api-reference/activity-reports/generate-an-activity-\u0026-stage-change-report"}]},{"group":"Automations","pages":[{"title":"Search automations","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/automations/search","href":"/api-reference/automations/search-automations"},{"title":"List automation trigger types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/automations/trigger-types","href":"/api-reference/automations/list-automation-trigger-types"},{"title":"List automation action types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/automations/action-types","href":"/api-reference/automations/list-automation-action-types"},{"title":"List automation run statuses","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/automations/run-statuses","href":"/api-reference/automations/list-automation-run-statuses"},{"title":"Get automation by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/automations/{id}","href":"/api-reference/automations/get-automation-by-id"},{"title":"Archive automation","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/automations/{id}","href":"/api-reference/automations/archive-automation"},{"title":"Update automation","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/automations/{id}","href":"/api-reference/automations/update-automation"},{"title":"Create automation","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/automations","href":"/api-reference/automations/create-automation"},{"title":"Search automation runs","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/automations/{id}/runs/search","href":"/api-reference/automations/search-automation-runs"},{"title":"Get automation run by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/automations/runs/{runId}","href":"/api-reference/automations/get-automation-run-by-id"}]},{"group":"Calendar Meetings","pages":[{"title":"List calendar meetings","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/calendar-meetings","href":"/api-reference/calendar-meetings/list-calendar-meetings"},{"title":"Get calendar meeting by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/calendar-meetings/{id}","href":"/api-reference/calendar-meetings/get-calendar-meeting-by-id"}]},{"group":"Campaigns","pages":[{"title":"Search campaigns","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/search","href":"/api-reference/campaigns/search-campaigns"},{"title":"List campaign types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/campaigns/types","href":"/api-reference/campaigns/list-campaign-types"},{"title":"List campaign variables","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/campaigns/variables","href":"/api-reference/campaigns/list-campaign-variables"},{"title":"List sending mailboxes","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/campaigns/mailboxes","href":"/api-reference/campaigns/list-sending-mailboxes"},{"title":"Get campaign by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/campaigns/{id}","href":"/api-reference/campaigns/get-campaign-by-id"},{"title":"Update campaign","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/campaigns/{id}","href":"/api-reference/campaigns/update-campaign"},{"title":"Create campaign","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns","href":"/api-reference/campaigns/create-campaign"},{"title":"Add campaign step","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/{id}/steps","href":"/api-reference/campaigns/add-campaign-step"},{"title":"Delete campaign step","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/campaigns/{id}/steps/{step_id}","href":"/api-reference/campaigns/delete-campaign-step"},{"title":"Update campaign step","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/campaigns/{id}/steps/{step_id}","href":"/api-reference/campaigns/update-campaign-step"},{"title":"Reorder campaign steps","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/{id}/steps/reorder","href":"/api-reference/campaigns/reorder-campaign-steps"},{"title":"List enrollment status groups","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/campaigns/enrollment-statuses","href":"/api-reference/campaigns/list-enrollment-status-groups"},{"title":"Prepare an enrollment","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/{id}/enrollment-batches","href":"/api-reference/campaigns/prepare-an-enrollment"},{"title":"Get an enrollment batch","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/campaigns/{id}/enrollment-batches/{batch_id}","href":"/api-reference/campaigns/get-an-enrollment-batch"},{"title":"Get one person in a batch","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/campaigns/{id}/enrollment-batches/{batch_id}/recipients/{recipient_id}","href":"/api-reference/campaigns/get-one-person-in-a-batch"},{"title":"Change one person in a batch","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/campaigns/{id}/enrollment-batches/{batch_id}/recipients/{recipient_id}","href":"/api-reference/campaigns/change-one-person-in-a-batch"},{"title":"Add people to a batch","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/{id}/enrollment-batches/{batch_id}/recipients","href":"/api-reference/campaigns/add-people-to-a-batch"},{"title":"Start an enrollment","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/{id}/enrollment-batches/{batch_id}/start","href":"/api-reference/campaigns/start-an-enrollment"},{"title":"Discard an enrollment batch","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/{id}/enrollment-batches/{batch_id}/discard","href":"/api-reference/campaigns/discard-an-enrollment-batch"},{"title":"Search enrollees","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/{id}/enrollments/search","href":"/api-reference/campaigns/search-enrollees"},{"title":"Get an enrollee","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/campaigns/{id}/enrollments/{enrollment_id}","href":"/api-reference/campaigns/get-an-enrollee"},{"title":"Edit an enrollee's upcoming step","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/campaigns/{id}/enrollments/{enrollment_id}/steps/{step_id}","href":"/api-reference/campaigns/edit-an-enrollees-upcoming-step"},{"title":"Stop enrollees","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/campaigns/{id}/enrollments/stop","href":"/api-reference/campaigns/stop-enrollees"}]},{"group":"Candidates","pages":[{"title":"Update candidate stage","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/candidates/update-stage","href":"/api-reference/candidates/update-candidate-stage"},{"title":"List rejection reasons","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/candidates/rejection-reasons","href":"/api-reference/candidates/list-rejection-reasons"},{"title":"Get candidate by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/candidates/{id}","href":"/api-reference/candidates/get-candidate-by-id"},{"title":"Remove candidate from job","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/candidates/{id}","href":"/api-reference/candidates/remove-candidate-from-job"}]},{"group":"Client Contacts","pages":[{"title":"List client contact statuses","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/client-contacts/statuses","href":"/api-reference/client-contacts/list-client-contact-statuses"},{"title":"List client contacts","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/client-contacts","href":"/api-reference/client-contacts/list-client-contacts"},{"title":"Create client contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/client-contacts","href":"/api-reference/client-contacts/create-client-contact"},{"title":"Get client contact by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/client-contacts/{id}","href":"/api-reference/client-contacts/get-client-contact-by-id"},{"title":"Update client contact","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/client-contacts/{id}","href":"/api-reference/client-contacts/update-client-contact"}]},{"group":"Companies","pages":[{"title":"List company client statuses","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/companies/statuses","href":"/api-reference/companies/list-company-client-statuses"},{"title":"Search companies","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/companies/search","href":"/api-reference/companies/search-companies"},{"title":"Create or update company","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/companies","href":"/api-reference/companies/create-or-update-company"},{"title":"Get company by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/companies/{id}","href":"/api-reference/companies/get-company-by-id"},{"title":"Update company","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/companies/{id}","href":"/api-reference/companies/update-company"},{"title":"List company document types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/companies/document-types","href":"/api-reference/companies/list-company-document-types"},{"title":"Get company documents","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/companies/{id}/documents","href":"/api-reference/companies/get-company-documents"},{"title":"Upload company document","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/companies/{id}/documents","href":"/api-reference/companies/upload-company-document"}]},{"group":"Company Activities","pages":[{"title":"List company activity types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/company-activities/types","href":"/api-reference/company-activities/list-company-activity-types"},{"title":"List company activities","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/company-activities","href":"/api-reference/company-activities/list-company-activities"},{"title":"Create company activity (note)","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/company-activities","href":"/api-reference/company-activities/create-company-activity-note"},{"title":"Get company activity by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/company-activities/{id}","href":"/api-reference/company-activities/get-company-activity-by-id"},{"title":"Update company activity (note) by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/company-activities/{id}","href":"/api-reference/company-activities/update-company-activity-note-by-id"}]},{"group":"Company Insights","pages":[{"title":"List AI-extracted insights for a company","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/company-insights","href":"/api-reference/company-insights/list-ai-extracted-insights-for-a-company"},{"title":"Edit content or dismiss/restore an insight","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/company-insights/{id}","href":"/api-reference/company-insights/edit-content-or-dismissrestore-an-insight"},{"title":"Dismiss multiple insights at once","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/company-insights/bulk-dismiss","href":"/api-reference/company-insights/dismiss-multiple-insights-at-once"},{"title":"Manually extract insights from an activity","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/company-insights/trigger","href":"/api-reference/company-insights/manually-extract-insights-from-an-activity"}]},{"group":"Custom Fields","pages":[{"title":"Get person custom field definitions","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/custom-fields/persons","href":"/api-reference/custom-fields/get-person-custom-field-definitions"},{"title":"Get company custom field definitions","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/custom-fields/companies","href":"/api-reference/custom-fields/get-company-custom-field-definitions"},{"title":"Get job custom field definitions","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/custom-fields/jobs","href":"/api-reference/custom-fields/get-job-custom-field-definitions"},{"title":"Get deal custom field definitions","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/custom-fields/deals","href":"/api-reference/custom-fields/get-deal-custom-field-definitions"}]},{"group":"Deal Activities","pages":[{"title":"List deal activities","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/deal-activities","href":"/api-reference/deal-activities/list-deal-activities"},{"title":"Create deal activity (note)","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/deal-activities","href":"/api-reference/deal-activities/create-deal-activity-note"},{"title":"Get deal activity by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/deal-activities/{id}","href":"/api-reference/deal-activities/get-deal-activity-by-id"},{"title":"Update deal activity (note) by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/deal-activities/{id}","href":"/api-reference/deal-activities/update-deal-activity-note-by-id"}]},{"group":"Deals","pages":[{"title":"List deal statuses","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/deals/statuses","href":"/api-reference/deals/list-deal-statuses"},{"title":"Search deals","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/deals/search","href":"/api-reference/deals/search-deals"},{"title":"Get deal by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/deals/{id}","href":"/api-reference/deals/get-deal-by-id"},{"title":"Archive deal","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/deals/{id}","href":"/api-reference/deals/archive-deal"},{"title":"Update deal","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/deals/{id}","href":"/api-reference/deals/update-deal"},{"title":"Create deal","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/deals","href":"/api-reference/deals/create-deal"}]},{"group":"Retainer Packs","pages":[{"title":"List fee statuses","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/fee-statuses","href":"/api-reference/retainer-packs/list-fee-statuses"},{"title":"List retainer packs","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/retainer-packs","href":"/api-reference/retainer-packs/list-retainer-packs"},{"title":"Create a retainer pack","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/retainer-packs","href":"/api-reference/retainer-packs/create-a-retainer-pack"},{"title":"Get a retainer pack","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/retainer-packs/{id}","href":"/api-reference/retainer-packs/get-a-retainer-pack"},{"title":"Delete a retainer pack","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/retainer-packs/{id}","href":"/api-reference/retainer-packs/delete-a-retainer-pack"},{"title":"Update a retainer pack","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/retainer-packs/{id}","href":"/api-reference/retainer-packs/update-a-retainer-pack"},{"title":"Close a retainer pack","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/retainer-packs/{id}/close","href":"/api-reference/retainer-packs/close-a-retainer-pack"},{"title":"Reopen a retainer pack","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/retainer-packs/{id}/reopen","href":"/api-reference/retainer-packs/reopen-a-retainer-pack"},{"title":"Add an adjustment to a closed retainer pack","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/retainer-packs/{id}/adjustments","href":"/api-reference/retainer-packs/add-an-adjustment-to-a-closed-retainer-pack"},{"title":"Delete a retainer pack adjustment","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/retainer-packs/{id}/adjustments/{adjustment_id}","href":"/api-reference/retainer-packs/delete-a-retainer-pack-adjustment"},{"title":"Delete an open retainer from a pack","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/retainer-packs/{id}/retainers/{retainer_id}","href":"/api-reference/retainer-packs/delete-an-open-retainer-from-a-pack"},{"title":"Replace a claimed retainer's split","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json put /v1/retainer-packs/{id}/retainers/{retainer_id}/split","href":"/api-reference/retainer-packs/replace-a-claimed-retainers-split"}]},{"group":"Job Activities","pages":[{"title":"List job activities","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/job-activities","href":"/api-reference/job-activities/list-job-activities"},{"title":"Create job activity (note)","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/job-activities","href":"/api-reference/job-activities/create-job-activity-note"},{"title":"Get job activity by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/job-activities/{id}","href":"/api-reference/job-activities/get-job-activity-by-id"},{"title":"Update job activity (note) by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/job-activities/{id}","href":"/api-reference/job-activities/update-job-activity-note-by-id"}]},{"group":"Job Offers","pages":[{"title":"List job offer statuses","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/job-offers/statuses","href":"/api-reference/job-offers/list-job-offer-statuses"},{"title":"List job offers","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/job-offers","href":"/api-reference/job-offers/list-job-offers"}]},{"group":"Jobs","pages":[{"title":"List jobs (deprecated)","description":"**Deprecated** — Use `POST /v1/jobs/search` instead for full filtering, sorting, and vector search.\n\nRetrieve a paginated list of jobs with team members and candidate counts. Optionally filter by archive status (`is_archived`) and/or team member and role (e.g. \"Executive Sponsor\").\n\n**Include control**: The `include` query param accepts a comma-separated list. Allowed values: `custom_fields`, `linked_deals`, `fees`, `client_contacts`, `share_links`, `job_status_changes`. When omitted, no extra sections are returned. `job_status_changes` embeds the recorded status history on each job, oldest first. For API-key callers, `linked_deals` requires `deals:read` and `fees` requires `compensation:read`; inaccessible sections are omitted.\n\n**Note**: This endpoint does NOT return pipeline stages. To get a job's pipeline stage IDs and names (needed for stage-based filtering in person search), use `GET /v1/jobs/{id}` instead.","deprecated":true,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs","href":"/api-reference/jobs/list-jobs-deprecated"},{"title":"Create job","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/jobs","href":"/api-reference/jobs/create-job"},{"title":"Search jobs","description":"Advanced job search with filtering, sorting, and vector search. Supports all filter types: keywords, location, job status, companies, team members/roles, custom attributes (select, numeric, date, team member), and semantic vector search.\n\n**AI AGENTS — Use `vector_search` if the user is inquiring about roles by title or title and company. Do not use `keywords`.**\nJob titles have many equivalent forms (\"VP of Engineering\", \"VP Engineering\", \"Engineering VP\", \"Head of Engineering\") — keywords will silently miss them . Vector search handles all variants automatically.\nThe exception: a verbatim job ID/code lookup where you need an exact internal reference (e.g. \"find the jobID 1234\").\n\n**Archive filter (`is_archived`)**: Omit to include both active and archived jobs (recommended for similar past searches, comps, pitch prep, company/sector history). Pass `false` for active jobs only; `true` for archived only. Always surface archive/status in answers.\n\n**Vector search**: Pass `vector_search` with a text query (min 5 chars) for AI-powered semantic search.\n\n**Date range filters**: Use `created_at_gte`/`created_at_lte` and `updated_at_gte`/`updated_at_lte` to filter by creation or modification timestamps.\n\n**Custom attribute filters**: Use `select_attribute_filters`, `numeric_attribute_filters`, `date_attribute_filters`, `team_member_attribute_filters`, `company_attribute_filters` for custom field filtering.\n\n**Include control**: Pass `include: [\"custom_fields\", \"linked_deals\", \"fees\", \"client_contacts\", \"share_links\", \"pipeline_stages\", \"job_status_changes\"]` to embed custom field values, linked deals, fee \u0026 placement data, client contacts, active share links, pipeline stages, and/or the recorded status history in each job. `job_status_changes` is ordered oldest first. For API-key callers, `linked_deals` requires `deals:read` and `fees` requires `compensation:read`; inaccessible sections are omitted.\n\nAI AGENTS — Result processing: After receiving results, reason and process them before presenting to the user. Only show jobs where the title genuinely matches what the user asked for. For example, if the user asks for \"VP of Engineering\" roles, exclude results like \"VP Consumer Electronics\" or \"SVP Sales Engineering\" — these are not engineering leadership roles. Show relevant results rather than regurgitating everything the vector search returns.","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/jobs/search","href":"/api-reference/jobs/search-jobs"},{"title":"Get job by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/{id}","href":"/api-reference/jobs/get-job-by-id"},{"title":"Update job","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/jobs/{id}","href":"/api-reference/jobs/update-job"},{"title":"List job candidates","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/{id}/candidates","href":"/api-reference/jobs/list-job-candidates"},{"title":"List job applicants","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/{id}/applicants","href":"/api-reference/jobs/list-job-applicants"},{"title":"List job document types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/document-types","href":"/api-reference/jobs/list-job-document-types"},{"title":"Get job documents","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/{id}/documents","href":"/api-reference/jobs/get-job-documents"},{"title":"Upload job document","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/jobs/{id}/documents","href":"/api-reference/jobs/upload-job-document"},{"title":"Add job target companies","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/jobs/{id}/target-companies","href":"/api-reference/jobs/add-job-target-companies"},{"title":"Remove job target companies","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/jobs/{id}/target-companies","href":"/api-reference/jobs/remove-job-target-companies"},{"title":"List job team member roles","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/team-member-roles","href":"/api-reference/jobs/list-job-team-member-roles"},{"title":"Get job pack retainer split","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/{id}/pack-retainer-split","href":"/api-reference/jobs/get-job-pack-retainer-split"},{"title":"Set job pack retainer split","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json put /v1/jobs/{id}/pack-retainer-split","href":"/api-reference/jobs/set-job-pack-retainer-split"},{"title":"List job referral partners","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/{id}/referral-partners","href":"/api-reference/jobs/list-job-referral-partners"},{"title":"Add job referral partner","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/jobs/{id}/referral-partners","href":"/api-reference/jobs/add-job-referral-partner"},{"title":"Remove job referral partner","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/jobs/{id}/referral-partners/{client_contact_id}","href":"/api-reference/jobs/remove-job-referral-partner"},{"title":"Update job referral partner","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/jobs/{id}/referral-partners/{client_contact_id}","href":"/api-reference/jobs/update-job-referral-partner"},{"title":"List job statuses","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/statuses","href":"/api-reference/jobs/list-job-statuses"},{"title":"List pipeline stages","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/jobs/pipeline-stages","href":"/api-reference/jobs/list-pipeline-stages"}]},{"group":"Lists","pages":[{"title":"Search lists","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/lists/search","href":"/api-reference/lists/search-lists"},{"title":"Get list by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/lists/{id}","href":"/api-reference/lists/get-list-by-id"},{"title":"Create list","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/lists","href":"/api-reference/lists/create-list"},{"title":"Add list items","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/lists/{id}/items","href":"/api-reference/lists/add-list-items"},{"title":"Remove list items","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/lists/{id}/items","href":"/api-reference/lists/remove-list-items"}]},{"group":"Meeting Recordings","pages":[{"title":"List meeting recordings","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/meeting-recordings","href":"/api-reference/meeting-recordings/list-meeting-recordings"},{"title":"Get meeting recording by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/meeting-recordings/{id}","href":"/api-reference/meeting-recordings/get-meeting-recording-by-id"}]},{"group":"Person Activities","pages":[{"title":"List person activity types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/person-activities/types","href":"/api-reference/person-activities/list-person-activity-types"},{"title":"Create person activity","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/person-activities","href":"/api-reference/person-activities/create-person-activity"},{"title":"Get person activity by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/person-activities/{id}","href":"/api-reference/person-activities/get-person-activity-by-id"},{"title":"Delete person activity by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/person-activities/{id}","href":"/api-reference/person-activities/delete-person-activity-by-id"},{"title":"Update person activity by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/person-activities/{id}","href":"/api-reference/person-activities/update-person-activity-by-id"}]},{"group":"Persons","pages":[{"title":"List person reference types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/persons/reference-types","href":"/api-reference/persons/list-person-reference-types"},{"title":"Create person reference","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/{id}/references","href":"/api-reference/persons/create-person-reference"},{"title":"Delete person reference","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/persons/{id}/references/{reference_id}","href":"/api-reference/persons/delete-person-reference"},{"title":"Update person reference","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/persons/{id}/references/{reference_id}","href":"/api-reference/persons/update-person-reference"},{"title":"List persons (deprecated)","deprecated":true,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/persons","href":"/api-reference/persons/list-persons-deprecated"},{"title":"Create person","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons","href":"/api-reference/persons/create-person"},{"title":"Advanced person search","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/search","href":"/api-reference/persons/advanced-person-search"},{"title":"Get person by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/persons/{id}","href":"/api-reference/persons/get-person-by-id"},{"title":"Update person","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/persons/{id}","href":"/api-reference/persons/update-person"},{"title":"Create person compensation","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/{id}/compensations","href":"/api-reference/persons/create-person-compensation"},{"title":"Delete person compensation","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/persons/{id}/compensations/{compensation_id}","href":"/api-reference/persons/delete-person-compensation"},{"title":"Update person compensation","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/persons/{id}/compensations/{compensation_id}","href":"/api-reference/persons/update-person-compensation"},{"title":"Get unified person activities","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/persons/{id}/activities","href":"/api-reference/persons/get-unified-person-activities"},{"title":"Get person documents","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/persons/{id}/documents","href":"/api-reference/persons/get-person-documents"},{"title":"Upload person document","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/{id}/documents","href":"/api-reference/persons/upload-person-document"},{"title":"List person document types","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/persons/document-types","href":"/api-reference/persons/list-person-document-types"},{"title":"Set preferred email (bulk)","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/preferred-email","href":"/api-reference/persons/set-preferred-email-bulk"},{"title":"Set preferred phone (bulk)","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/preferred-phone","href":"/api-reference/persons/set-preferred-phone-bulk"},{"title":"Mark emails as bounced (bulk)","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/email-bounced","href":"/api-reference/persons/mark-emails-as-bounced-bulk"},{"title":"Remove emails (bulk)","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/emails/delete","href":"/api-reference/persons/remove-emails-bulk"},{"title":"Set preferred email","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/{id}/preferred-email","href":"/api-reference/persons/set-preferred-email"},{"title":"Set preferred phone","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/{id}/preferred-phone","href":"/api-reference/persons/set-preferred-phone"},{"title":"Enrich person contact details","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/persons/{id}/enrich","href":"/api-reference/persons/enrich-person-contact-details"}]},{"group":"Scorecards","pages":[{"title":"Search scorecard templates","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/scorecard-templates/search","href":"/api-reference/scorecards/search-scorecard-templates"},{"title":"Get scorecard template by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/scorecard-templates/{id}","href":"/api-reference/scorecards/get-scorecard-template-by-id"},{"title":"Archive scorecard template","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/scorecard-templates/{id}","href":"/api-reference/scorecards/archive-scorecard-template"},{"title":"Update scorecard template","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/scorecard-templates/{id}","href":"/api-reference/scorecards/update-scorecard-template"},{"title":"Create scorecard template","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/scorecard-templates","href":"/api-reference/scorecards/create-scorecard-template"},{"title":"Search scorecards","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/scorecards/search","href":"/api-reference/scorecards/search-scorecards"},{"title":"Get scorecard by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/scorecards/{id}","href":"/api-reference/scorecards/get-scorecard-by-id"},{"title":"Delete scorecard","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/scorecards/{id}","href":"/api-reference/scorecards/delete-scorecard"},{"title":"Update scorecard","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/scorecards/{id}","href":"/api-reference/scorecards/update-scorecard"},{"title":"Create scorecard","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/scorecards","href":"/api-reference/scorecards/create-scorecard"}]},{"group":"Tasks","pages":[{"title":"Search tasks","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/tasks/search","href":"/api-reference/tasks/search-tasks"},{"title":"Get task by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/tasks/{id}","href":"/api-reference/tasks/get-task-by-id"},{"title":"Delete task","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json delete /v1/tasks/{id}","href":"/api-reference/tasks/delete-task"},{"title":"Update task","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/tasks/{id}","href":"/api-reference/tasks/update-task"},{"title":"Create task","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json post /v1/tasks","href":"/api-reference/tasks/create-task"}]},{"group":"Team Capacity","pages":[{"title":"Get the Team Capacity report","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/team-capacity","href":"/api-reference/team-capacity/get-the-team-capacity-report"},{"title":"Update Team Capacity settings","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json patch /v1/team-capacity/settings","href":"/api-reference/team-capacity/update-team-capacity-settings"}]},{"group":"Team Members","pages":[{"title":"List team members","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/team-members","href":"/api-reference/team-members/list-team-members"},{"title":"Get team member by ID","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/team-members/{id}","href":"/api-reference/team-members/get-team-member-by-id"}]},{"group":"Webhooks","pages":[{"title":"Get webhook management portal URL","deprecated":null,"version":null,"openapi":"/api-reference/openapi-v1.json get /v1/webhooks/portal","href":"/api-reference/webhooks/get-webhook-management-portal-url"}]}]},{"version":"v0 (Deprecated)","pages":[{"title":"v0 (Deprecated)","href":"/api-reference/introduction"}]}]},{"tab":"Zapier API Reference","hidden":true,"pages":[{"title":"Zapier API Reference","href":"/api-reference/zapier-introduction"}]}]},"basePath":"","title":"Create job - Stardex Help Docs","buildId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","deploymentId":"dpl_36EDyZCDfRuoUD9af5CH4M1bqY2h","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DCDCdBVX.js","utils-ME8dDnLe.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-0e84ACsd.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-wgRBj-ia.js","snippetPresets-C11Sgb-o.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-C0lapOpP.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-ZeRQV8fF.js","shallow-BupWh095.js","getApiPlaygroundDisplay-BnYQO2Ss.js","CodeSnippet-RKKOc8c_.js","CodeSnippets-Drf_m8wS.js","Page-Bevw23-4.js","getPastedJson-u6QiPzNZ.js","icon-Bb-CBSxO.js","MethodPill-F7l5AI7V.js","DuplicateIcon-IiAXkdSg.js","createIcon-FliI8EBc.js","DynamicMarkdown-B62XqCSI.js","SectionHeading-Dj31pT03.js","axios-vUo_bRtp.js","Markdown-BOgQCTwD.js","clsx-BIWXJmsZ.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DKZWslLH.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-UDqbR6xh.js"]}