Skip to main content
POST
https://api.hellotracks.com
/
api
/
createjobs
curl -X POST https://api.hellotracks.com/api/createjobs \
--header 'API-Key: ...' -d \
'
{
    "data": {
        "jobs": [
            {
                "destinationLat": 37.7749,
                "destinationLng": -122.4194,
                "destinationName": "Job in San Francisco created via API",
                "worker": "username@company.com",
                "day": 20231110
            }
        ]
    }
}
'
{
    "status": 0,
    "jobs": [
        {
            "id": "64d88ed519c0ae41096aa4b4",
            "day": 20251008,
            "number": 1,
            "type": 0,
            "priority": 5,
            "destinationName": "Acme Corp - Headquarters",
            "destinationText": "Main entrance, building A",
            "destinationLat": 37.7749,
            "destinationLng": -122.4194,
            "radius": 100,
            "contactName": "John Smith",
            "contactPhone": "+14155551234",
            "contactEmail": "john.smith@acme.com",
            "worker": "worker@company.com",
            "workerName": "Jane Doe",
            "workerEmail": "jane@company.com",
            "workerPhone": "+14155559876",
            "receiverUid": "abc123",
            "assigneeName": "Jane Doe",
            "assigneeUsername": "worker@company.com",
            "dispatcherName": "Dispatcher Mike",
            "dispatcherUid": "disp456",
            "textDispatcher": "Please deliver before 3 PM",
            "textReceiver": "Call customer on arrival",
            "itemsToPickup": 0,
            "itemsToDropoff": 3,
            "onSiteSeconds": 900,
            "windowStart": 800,
            "windowEnd": 1500,
            "tsCreated": 1696723200000,
            "tsSaved": 1696723245000,
            "tsAssigned": 1696723250000,
            "tsAccepted": 1696723300000,
            "tsScheduled": 1696748400000,
            "tsCheckIn": 1696752000000,
            "tsCheckOut": 1696752900000,
            "tsDoneSuccess": 1696752950000,
            "scheduledStart": 1696748400000,
            "scheduledEnd": 1696749300000,
            "orderId": 1012345,
            "fileNumber": "ORD-2024-1234",
            "uidSecondary": "EXT-9876",
            "labels": "urgent,vip",
            "carryOver": 0,
            "placeName": "Acme Corp HQ",
            "placeUid": "place789",
            "linkedForms": "delivery-form,signature-form",
            "linkedZones": "zone1,zone2",
            "teamId": 2,
            "confirmationEmails": "manager@acme.com,ops@acme.com",
            "customFields": [
                {"key": "PO_Number", "val": "PO-2024-5678"},
                {"key": "Department", "val": "Facilities"}
            ],
            "extra_number_1_key": "Weight (kg)",
            "extra_number_1_val": 45.5,
            "extra_text_1_key": "Special Instructions",
            "extra_text_1_val": "Fragile - Handle with care",
            "signatureName": "John Smith",
            "signatureSvg": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0...",
            "tsSignature": 1696752900000,
            "createdBy": "admin123",
            "createdVia": "api",
            "isTemplate": false,
            "jobType": "Delivery"
        }
    ]
}

Request

POST https://api.hellotracks.com/api/createjobs
{
	data: {
		jobs: [
			 job_1,
			 job_2,
			   ...
			 job_n
		 ],
		 sendRouteChange: <boolean>,
		 autoassign: <boolean>,
		 isTemplate: <boolean>
	}
}
See also Job-API-Object to see properties of a job.
To directly assign a user, set the worker property in the job to the worker’s username. To get the worker’s username, retrieve the username in Member-API-Object, for example via /getaccounts.
curl -X POST https://api.hellotracks.com/api/createjobs \
--header 'API-Key: ...' -d \
'
{
    "data": {
        "jobs": [
            {
                "destinationLat": 37.7749,
                "destinationLng": -122.4194,
                "destinationName": "Job in San Francisco created via API",
                "worker": "username@company.com",
                "day": 20231110
            }
        ]
    }
}
'
jobs
array
required
An array of objects, each object needs to confirm the Job API Object schema.Important Notes:
  • Do not set the id field, this will be set automatically upon creation.
  • You can optionally set the uidSecondary field as a custom external identifier. If a job with the same uidSecondary already exists for the company, the existing job will be updated instead of creating a new one.
  • To assign a job during creation, set the worker field to the worker’s username or set receiverUid to the worker’s UID.
  • For custom job fields, use either customFields as an array of { "key": "...", "val": "..." } objects, or use custom_<fieldName> for single fields.
sendRouteChange
boolean
default:"false"
If true, assigned and day set to today, notifies assignee immediately of jobs being updated. The list of jobs will be updated automatically on their device.
autoassign
boolean
default:"false"
Indicates that the created jobs should automatically be assigned to a member. It will choose the nearest member that is available, taking the shift and day-route into account.
isTemplate
boolean
default:"false"
If set to true, creates jobs as templates rather than regular jobs. Job templates can be reused to create multiple jobs with the same configuration.

Custom Fields in jobs

Inside each job object, custom fields can be sent in the following format:
  • customFields array (recommended for multiple fields):
"customFields": [
  { "key": "PO_Number", "val": "PO-2026-1234" },
  { "key": "Department", "val": "Facilities" }
]
curl -X POST https://api.hellotracks.com/api/createjobs \
--header 'API-Key: ...' -d \
'
{
    "data": {
        "jobs": [
            {
                "destinationName": "Create job with custom fields",
                "day": 20260224,
                "customFields": [
                    { "key": "PO_Number", "val": "PO-2026-1234" },
                    { "key": "Department", "val": "Facilities" }
                ]
            }
        ]
    }
}
'

Response

{
	status: 0,
	jobs : [
		job_1,
		job_2,
		...
	    job_n
	]
}
status
number
required
Guaranteed to be set. Set to 0 if successful.
jobs
array
required
The array of all jobs created by this request.
curl -X POST https://api.hellotracks.com/api/createjobs --header 'API-Key: ...' -d '
{
    "data": {
        "jobs": [
            {
                "destinationLat": 37.7749,
                "destinationLng": 122.4194,
                "destinationName": "This is a new job in San Francisco created via API"
            }
        ]
    }
}
'
{
    "status": 0,
    "jobs": [
        {
            "id": "64d88ed519c0ae41096aa4b4",
            "day": 20251008,
            "number": 1,
            "type": 0,
            "priority": 5,
            "destinationName": "Acme Corp - Headquarters",
            "destinationText": "Main entrance, building A",
            "destinationLat": 37.7749,
            "destinationLng": -122.4194,
            "radius": 100,
            "contactName": "John Smith",
            "contactPhone": "+14155551234",
            "contactEmail": "john.smith@acme.com",
            "worker": "worker@company.com",
            "workerName": "Jane Doe",
            "workerEmail": "jane@company.com",
            "workerPhone": "+14155559876",
            "receiverUid": "abc123",
            "assigneeName": "Jane Doe",
            "assigneeUsername": "worker@company.com",
            "dispatcherName": "Dispatcher Mike",
            "dispatcherUid": "disp456",
            "textDispatcher": "Please deliver before 3 PM",
            "textReceiver": "Call customer on arrival",
            "itemsToPickup": 0,
            "itemsToDropoff": 3,
            "onSiteSeconds": 900,
            "windowStart": 800,
            "windowEnd": 1500,
            "tsCreated": 1696723200000,
            "tsSaved": 1696723245000,
            "tsAssigned": 1696723250000,
            "tsAccepted": 1696723300000,
            "tsScheduled": 1696748400000,
            "tsCheckIn": 1696752000000,
            "tsCheckOut": 1696752900000,
            "tsDoneSuccess": 1696752950000,
            "scheduledStart": 1696748400000,
            "scheduledEnd": 1696749300000,
            "orderId": 1012345,
            "fileNumber": "ORD-2024-1234",
            "uidSecondary": "EXT-9876",
            "labels": "urgent,vip",
            "carryOver": 0,
            "placeName": "Acme Corp HQ",
            "placeUid": "place789",
            "linkedForms": "delivery-form,signature-form",
            "linkedZones": "zone1,zone2",
            "teamId": 2,
            "confirmationEmails": "manager@acme.com,ops@acme.com",
            "customFields": [
                {"key": "PO_Number", "val": "PO-2024-5678"},
                {"key": "Department", "val": "Facilities"}
            ],
            "extra_number_1_key": "Weight (kg)",
            "extra_number_1_val": 45.5,
            "extra_text_1_key": "Special Instructions",
            "extra_text_1_val": "Fragile - Handle with care",
            "signatureName": "John Smith",
            "signatureSvg": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0...",
            "tsSignature": 1696752900000,
            "createdBy": "admin123",
            "createdVia": "api",
            "isTemplate": false,
            "jobType": "Delivery"
        }
    ]
}