Create Job

Status

Jobs can be one of several statuses

  • draft - Unpublished and still being actively worked on
  • pending_approval - In process in a sign off workflow
  • open - Open and accepting applications
  • closed - Created but not accepting new applications
  • archived - Closed to new applications, and no longer relevant

You can pass any of these values for the status. If you create a job with the status of open it will skip any sign off workflow that it would have gone through had you created the job directly in the UI. If you create the job with a status of pending_approval it will trigger a sign off workflow if one should apply, otherwise the job will immediately be moved to open

Required attributes

The attributes required to create a job change depending on the status of the created job. A draft job requires less information than an open job

Required attributes

All jobs being created require a title, status and selected_hiring_workflow_id you can get a list of your hiring workflows along with their ID from the hiring workflow endpoint.

Open job attributes

In addition to the above when creating an open job you must also provide description, employment_type,external_key_responsibilities_header, key_responsibilities and visibility

Required relationships

When creating a new job the only required relationship is the structure_link this represents the part of the company that the job is associated with (the location, department etc.). You can get a list of available structure links from the structure link endpoints in the API

All attributes

These are all possible attributes available when creating a job

AttributeData typeRequiredDefaultAdditional information
titlestringYesThe job title shown internally and externally
employment_typestringYesMust be one of the following options: full_time, part_time, contract_temp, freelance, internship, permanent, fixed_term_contract, zero_hours, permanent_full_time, permanent_part_time, flexible, seasonal_full_time, seasonal_part_time, volunteer, apprentice
reporting_tostringNoShown on the job pages on your careers site
is_compensation_visiblebooleanNofalseDo you wish to show compensation information on the public job posting
compensation_currencystringOnly if compensation_maximum, compensation_minimum or compensation_frequency are providedMust be a valid currency code (e.g. USD, EUR etc.)
compensation_frequencystringOnly if compensation_maximum, compensation_currency or compensation_minimum are providedMust be one of hour, day, week, two_weeks, month or year and represents the time unit the compensation is for
compensation_minimumnumberOnly if compensation_maximum, compensation_currency or compensation_frequency are provided
compensation_maximumnumberOnly if compensation_minimum, compensation_currency or compensation_frequency are provided
deadline_ondateNoThe date that the job will automatically close. Must be in the future and must be in ISO8601 format (yyyy-mm-dd)
workplace_typestringNoonsiteMust be one of onsite, hybrid or remote
ask_for_addressbooleanNotrueShould applicants be forced to provide an address when applying?
ask_for_date_of_birthbooleanNofalseShould applicants be asked their date of birth when applying (will never be required)
require_phonebooleanNofalseShould applicants be forced to provide a phone number when applying
ask_for_linkedin_profilebooleanNofalseShould applicants be asked for a linkedIn profile link when applying
blind_screeningbooleanNofalseDo you want to apply anonymised screening to this role and hide PII
resume_requirementstringNooptionalMust be one of optional, required, not_required
personal_summary_requirementstringNooptionalMust be one of optional, required or not_required
visibilitystringYesMust be one of external, internal or confidential
diversity_monitoringbooleanNofalseDo you want to ask additional equality monitoring questions on the jobs application form
headcount_maximum_enabledbooleanNofalseDo you want to limit the number of people that can be hired for this role
headcount_maximum_enablednumberOnly if heacount_maximum_enabled is trueThe maximum number of hires that can be made on this job
selected_hiring_workflow_idstringYesThe ID of the hiring workflow this job is assigned to
descriptionstringYesPublic description for the job
external_key_responsibilities_headerstringYesHeader for the key responsibilities section of the job posting
key_responsibilitiesstringYesKey responsibilities section of the job posting
external_skills_knowledge_expertise_headerstringNoHeader for the skills sections of the job posting
skills_knowledge_expertisestringNoSkills section of the job posting
external_benefits_headerstringNoHeader for the benefits section of the job posting
benefitsstringNoBenefits section of the job posting
referrals_enabledbooleanNoDo you want to enable referrals for this job?
referral_detailsstringNoDetails of the referral scheme
referral_amountdecimalNoThe referral amount
referral_currencystringNoMust be a valid currency code (e.g. USD, EUR etc.)
hiring_manager_user_emailstringNoEmail of the User which is a Hiring Manager for the job. The User must be an Employee of the Company. An external recruiter can't be assigned as a Hiring Manager.
recruitment_manager_user_emailstringNoEmail of the User which is a Recruitment Manager for the job. The User must be an Employee of the Company. An external recruiter can't be assigned as a Recruitment Manager.

Submitting custom attributes along with an application

Custom attributes are this jobs answers to any custom fields that have been defined. Each custom attribute relates to a specific custom field, all of which can be retrieved using the custom field endpoint.

A temp-id field is required when detailing the answer under the relationships key of the POST body. This temp-id can be any UUID and will help to:

  • Connect relevant sections of the payload.
  • Associate in-memory objects with the ids returned from the server.
  • Make it easy to associate any errors returned from failed requests.

See the Draft Job (with custom fields) example for more details on how to create a custom attribute along with the job.

Examples

{
  "data": {
    "type": "jobs",
    "attributes": {
      "title": "Assistant to the Regional Manager",
      "status": "draft",
      "selected_hiring_workflow_id": "1"
    },
    "relationships": {
      "structure_link": {
        "data": {
          "type": "structure_links",
          "id": "1"
        }
      },
    }
  }
}
{
  "data": {
    "type": "jobs",
    "attributes": {
      "title": "Assistant to the Regional Manager",
      "status": "open",
      "description": "Seeking an enthusiastic and dedicated individual to assist the Regional Manager in daily office duties at a leading paper supply company.",
      "employment_type": "full_time",
      "external_key_responsibilities_header": "Key Assistant Duties",
      "key_responsibilities": "Supporting the Regional Manager in daily operations, coordinating office activities, ensuring efficient workflow, and liaising between departments.",
      "visibility": "external",
      "selected_hiring_workflow_id": "2"
    },
    "relationships": {
      "structure_link": {
        "data": {
          "type": "structure_links",
          "id": "2"
        }
      },
    }
  }
}
{
  "data": {
    "type": "jobs",
    "attributes": {
      "ask_for_address": true,
      "ask_for_date_of_birth": true,
      "ask_for_linkedin_profile": false,
      "ask_for_middle_name": true,
      "benefits": "Health insurance, paid vacation, company discount on paper products",
      "blind_screening": true,
      "company_name_override": "Dunder Mifflin",
      "compensation_currency": "USD",
      "compensation_frequency": "year",
      "compensation_maximum": 60000.00,
      "compensation_minimum": 40000.00,
      "cover_letter_requirement": "optional",
      "custom_country": "United States",
      "custom_county": "Lackawanna",
      "custom_town": "Scranton",
      "deadline_on": "2024-05-01",
      "description": "Sales position at a leading paper company with a focus on client management and team collaboration.",
      "diversity_monitoring": true,
      "draft_job_additional_information": "Familiarity with paper products is a plus",
      "employment_type": "full_time",
      "experience_level": "director",
      "external_benefits_header": "Dunder Mifflin Employee Benefits",
      "external_key_responsibilities_header": "Primary Sales Responsibilities",
      "external_skills_knowledge_expertise_header": "Required Skills and Expertise",
      "facebookjobs": true,
      "headcount_maximum": 5,
      "headcount_maximum_enabled": true,
      "hiring_manager_user_email": "[email protected]",
      "include_in_indeed": true,
      "include_in_linkedin_rss": false,
      "is_compensation_visible": true,
      "is_remote_with_location_restrictions": false,
      "key_responsibilities": "Developing new client relationships, maintaining existing accounts, achieving sales targets",
      "linkedin_company_id": "99999",
      "monster": true,
      "notify": true,
      "personal_summary_requirement": "optional",
      "recruitment_manager_user_email": "[email protected]",
      "referral_amount": 500.00,
      "referral_currency": "USD",
      "referral_details": "Referral bonus for introducing new talents",
      "referrals_enabled": true,
      "reporting_to": "Regional Manager",
      "require_phone": true,
      "requisition_id": "3",
      "resume_requirement": "required",
      "selected_hiring_workflow_id": "3",
      "skills_knowledge_expertise": "Excellent communication and negotiation skills, self-motivated",
      "status": "open",
      "talentdotcom": false,
      "title": "Paper Sales Representative",
      "visibility": "external",
      "workplace_type": "hybrid",
      "ziprecruiter": true
    },
    "relationships": {
      "structure_link": {
        "data": {
          "id": "1",
          "type": "structure_links"
        }
      }
    }
  }
}
{
  "data": {
    "type": "jobs",
    "attributes": {
      "title": "Regional Manager",
      "status": "draft",
      "selected_hiring_workflow_id": "1"
    },
    "relationships": {
      "structure_link": {
        "data": {
          "type": "structure_links",
          "id": "1"
        }
      },
      "custom_attributes": {
        "data": [
          {
            "type": "custom_attributes",
            "method": "create",
            "temp-id": "1"
          }
        ]
      }
    }
  },
  "included": [
    {
      "type": "custom_attributes",
      "temp-id": "1",
      "attributes": {
        "text_value": "World's Best Boss Mug"
      },
      "relationships": {
        "custom_field": {
        // Custom field must already exist. You can create custom fields
        // in the application, or via the API:
        // https://developers.pinpointhq.com/reference/post-custom-fields
          "data": {
            "id": "1",
            "type": "custom_fields"
          }
        }
      }
    }
  ]
}
Language
Authorization
Header
URL
Click Try It! to start a request and see the response here!