Bulk Add/Bulk Import (AI created) Step Fields
WorkZerk lets you quickly add onboarding step templates using two methods: Contact Fields for common contact-linked fields, or Bulk Import (optionally AI generated) for custom configurations that can use special instructions in JSON format generated by AI tools such as Gemini, Claude or ChatGPT (for example).
Bulk Add Fields
Contact Fields are a built-in set of common onboarding prompts that automatically link responses to your contact database. Things like name, address, banking details and social media.
To add Contact Fields, open your onboarding portal's step templates and click + BULK ADD/IMPORT. You'll see five groups of fields: Contact Details, Street Address, Postal Address, Banking Details and Other. Expand any group, tick the fields you need, then hit Add Templates.
Each field is created as a prompt-type text input type step and is automatically linked to the matching contact field. When someone completes onboarding, their responses flow straight into their contact record — no manual data entry!
Bulk Import Fields (Using AI)
For more control, you can paste or type instructions in the JSON data format directly to bulk-create templates.
This is handy when you want to share configurations between organisations, replicate a setup, or prepare templates offline.
Your JSON must be an array of template objects. Here's the schema which can be understood by your favourite AI chatbot or tool (by copying and pasting the schema below into your AI chat window).
All you then need to add is what fields you wish to add.
For example, you might wish to have AI create a set of ‘Emergency Contact Fields’.
You simply need to use the prompt below in your preferred AI chat window:
JSON Schema (Paste into AI)
This is the exact ‘recipe’ that AI needs to create valid JSON instructions to import onboarding steps automatically into WorkZerk.
All AI tools will need is for you to copy and paste this schema into the chat window and then prompt with whatever you wish to create and import.
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "array",
"items": {
"type": "object",
"required": ["Description", "Section"],
"properties": {
"Description": {
"type": "string",
"description": "The label for this field e.g. 'FirstName', 'BSB'"
},
"Linked": {
"type": "string",
"description": "The contact field this maps to e.g. 'FirstName', 'BSB'",
"default": "",
"enum": [
"",
"FirstName",
"Surname",
"Company",
"DOB",
"Mobile",
"Phone",
"JobTitle",
"StreetAddress",
"Suburb",
"City",
"StateProvinceRegion",
"ZipPostCode",
"Country",
"PostAddress",
"PostSuburb",
"PostCity",
"PostStateProvince",
"PostZipCode",
"PostCountry",
"BankName",
"BSB",
"BankAccountNumber",
"ABN",
"ACN",
"MainEmail",
"Website",
"Instagram",
"YouTube",
"Facebook",
"LinkedIn",
"Twitter"
]
},
"SectionOrdinal": {
"type": "integer",
"description": "Display order within the section, starting at 0",
"default": 0,
"minimum": 0
},
"Section": {
"type": "string",
"description": "The section this field belongs to e.g. 'Contact Details'"
},
"InputType": {
"type": "string",
"description": "The input type: 'Text' (single line), 'Block' (multi-line), 'Single' (radio buttons), 'Multi' (checkboxes), 'Date', 'Check', or empty",
"enum": ["", "Text", "Block", "Single", "Multi", "Date", "Check"],
"default": ""
},
"InputOptions": {
"type": "string",
"description": "A pipe-separated list of input options (choices) e.g. 'Red|Green|Blue'. Only valid when InputType is 'Single' or 'Multi'",
"maxLength": 1000,
"default": ""
},
"Upload": {
"type": "string",
"description": "Require file upload. '1' = true, '0' = false",
"enum": ["", "0", "1"],
"default": ""
},
"Sign": {
"type": "string",
"description": "Require e-signature. '1' = true, '0' = false",
"enum": ["", "0", "1"],
"default": ""
},
"Declaration": {
"type": "string",
"description": "Declaration text shown to the user. Only valid when InputType is 'Check' or Sign is '1'. Ignored otherwise.",
"maxLength": 200,
"default": ""
},
"PromptForExpiry": {
"type": "string",
"description": "Require an expiry date on each file upload. '1' = true, '0' = false. Only valid when Upload is '1'",
"enum": ["", "0", "1"],
"default": ""
}
},
"additionalProperties": false,
"allOf": [
{
"if": {
"properties": {
"Declaration": { "type": "string", "minLength": 1 }
},
"required": ["Declaration"]
},
"then": {
"anyOf": [
{ "properties": { "InputType": { "const": "Check" } } },
{ "properties": { "Sign": { "const": "1" } } }
]
}
},
{
"if": {
"properties": {
"InputType": { "enum": ["Single", "Multi"] }
}
},
"then": {
"required": ["InputOptions"],
"properties": {
"InputOptions": { "minLength": 1 }
}
}
},
{
"if": {
"properties": {
"PromptForExpiry": { "const": "1" }
}
},
"then": {
"properties": {
"Upload": { "const": "1" }
}
}
}
]
}
}
AI Prompt (Modify & Paste into AI as your prompt)
Note: You should provide the JSON Schema above for AI and also a prompt asking for exactly what steps you want created. The Schema and AI Prompt will work together to allow AI to intelligently create the instructions WorkZerk will need to create the templates instantly.
The prompt below is just an example, and is specifically for creating ‘verbose’ (every field it can think of) steps for onboarding employees.
Tip: In general it is recommended that you do use the word verbose, because you can always ignore steps you don’t need when importing.
Please create instructions formatted in valid JSON using the attached schema. This is for WorkZerk (www.workzerk.com.au) onboarding software.
I am onboarding employees at my Australian organisation and wish to capture all the common fields that will be required.
Please where possible link these to the 'Linked' field in the schema.
Feel free to use the Single or Multi choice options where these are relevant.
Folders (with Fields) should include:
- Contact Details
- Emergency Contact Details
- Banking & Superannuation Details
- Other folders you can think of
Please be verbose, because I can always select the fields I need and ignore others when adding.
Tips
Use the Linked property whenever you want onboarding responses to automatically populate Contact records. Leave it empty if the step does not match any of the existing Contact fields.
JSON import validates your input before creating anything. If there's a formatting error or missing required fields, you'll see an error message and nothing will be created.