Skip to Content

Whitelist Applications

Some jobs can require an application instead of instant selection. When a job has whitelist = true, the “Select” button becomes “Apply”.

How It Works

  1. Player clicks “Apply” on a whitelist job
  2. A questionnaire opens with your configured questions
  3. The completed application is sent to your Discord as a formatted message
  4. The Discord message includes the player’s info and all their answers

Application Info Sent to Discord

Each application webhook message contains:

  • Player name
  • Character name
  • Discord mention
  • Steam ID
  • All question answers

Question Types

TypeDescriptionAdditional Options
inputSingle-line text fieldrequired, placeholder
textareaMulti-line text arearequired, min, max
numberNumeric inputmin, max
selectDropdown with single selectionrequired, options
multi-selectDropdown with multiple selectionsrequired, options
checkboxSingle checkbox (boolean)—
sliderRange slidermin, max
dateDate picker—
colorColor picker—

Option Format

For select and multi-select types, options are defined as:

options = { { value = 'na', label = 'North America' }, { value = 'eu', label = 'Europe' }, { value = 'other', label = 'Other' }, }

Example Configurations

Police Department

{ name = 'police', label = 'Police Officer', image = './job-images/police.jpg', aboutWork = 'Serve and protect the citizens of San Andreas.', requirements = { 'Clean Record', 'Physical Fitness', 'Communication Skills' }, averageEarnings = '$80 - $150/hr', location = { x = 441.05, y = -982.01 }, whitelist = true, applicationQuestions = { { type = 'input', label = 'Character Full Name', required = true, placeholder = 'e.g. John Doe' }, { type = 'textarea', label = 'Why do you want to join the Police Department?', required = true, min = 20, max = 500 }, { type = 'select', label = 'What timezone are you in?', required = true, options = { { value = 'est', label = 'EST (Eastern)' }, { value = 'cst', label = 'CST (Central)' }, { value = 'mst', label = 'MST (Mountain)' }, { value = 'pst', label = 'PST (Pacific)' }, { value = 'eu', label = 'EU' }, { value = 'other', label = 'Other' }, }}, { type = 'number', label = 'Hours per week you can dedicate', min = 1, max = 100 }, { type = 'textarea', label = 'Previous law enforcement or military RP experience?', required = false, max = 500 }, { type = 'checkbox', label = 'I have read and agree to follow the department SOPs' }, }, }

EMS Paramedic

{ name = 'ambulance', label = 'EMS Paramedic', image = './job-images/ems.jpg', aboutWork = 'Provide emergency medical services across the city.', requirements = { 'Medical Training', 'First Aid Certification', 'Valid Driver\'s License' }, averageEarnings = '$70 - $130/hr', location = { x = 304.95, y = -600.22 }, whitelist = true, applicationQuestions = { { type = 'input', label = 'Character Full Name', required = true, placeholder = 'e.g. Jane Doe' }, { type = 'textarea', label = 'Why do you want to join the Emergency Medical Services?', required = true, min = 20, max = 500 }, { type = 'select', label = 'Do you have any medical certifications (IRL or RP)?', required = true, options = { { value = 'none', label = 'None' }, { value = 'basic', label = 'Basic First Aid / CPR' }, { value = 'advanced', label = 'Advanced Medical Training' }, { value = 'irl', label = 'Real-life Medical Background' }, }}, { type = 'number', label = 'Hours per week you can dedicate', min = 1, max = 100 }, { type = 'textarea', label = 'How would you handle a mass casualty incident with limited resources?', required = false, max = 500 }, { type = 'checkbox', label = 'I understand EMS members must remain neutral during conflicts' }, }, }

Mechanic

{ name = 'mechanic', label = 'Mechanic', image = './job-images/mechanic.jpg', aboutWork = 'Repair and maintain vehicles at the local auto shop.', requirements = { 'Mechanical Knowledge', 'Tool Proficiency' }, averageEarnings = '$50 - $100/hr', location = { x = -339.53, y = -134.71 }, whitelist = true, applicationQuestions = { { type = 'input', label = 'Character Full Name', required = true, placeholder = 'e.g. Mike Ross' }, { type = 'textarea', label = 'Why do you want to become a mechanic?', required = true, max = 500 }, { type = 'select', label = 'Vehicle knowledge level', required = true, options = { { value = 'beginner', label = 'Beginner' }, { value = 'intermediate', label = 'Intermediate' }, { value = 'expert', label = 'Expert / Real-life experience' }, }}, { type = 'textarea', label = 'Any previous mechanic or tuner RP experience?', required = false, max = 500 }, }, }
Last updated on