Assignment Configuration

Each organization can have multiple assignment configurations, but only one can be active at a time. This page explains how to set up and tune your automatic assignment.

Configuration Fields

FieldTypeDescription
name String A label for this configuration (e.g., "Downtown Nearest" or "Zone-Based Evening").
enabled Boolean Whether automatic assignment is enabled. When disabled, all tasks require manual assignment.
algorithmType String The algorithm to use: manual, nearest, load-balanced, predictive, one-by-one, or zone-based.
maxSearchRadiusMeters Number Maximum search radius for finding agents. Range: 100 — 100,000 meters (100m to 100km).
config JSON Algorithm-specific parameters (optional). Stored as a JSON string.
isActive Boolean Whether this is the currently active configuration. Only one per organization.

Creating a Configuration

1

Navigate to Assignment Settings

In the dashboard, go to your organization's settings and find the Assignment section.

2

Choose an Algorithm

Select the algorithm type that best fits your operation. See Algorithms for details on each.

3

Set the Search Radius

Define how far (in meters) the system should look for available agents. A larger radius means more potential agents but longer travel times.

4

Configure Algorithm Parameters

Some algorithms accept additional JSON configuration. For example, zone-based assignment needs zone definitions.

5

Activate

Mark the configuration as active. This automatically deactivates any previously active configuration.

Multiple Configurations

You can create multiple configurations and switch between them as needed. This is useful for:

  • Time-of-day switching — use nearest during peak hours, load-balanced during off-peak
  • A/B testing — compare algorithm performance by switching between them
  • Seasonal adjustments — wider radius during high-demand periods
One Active at a Time

Only one assignment configuration can be active per organization. Activating a new configuration will automatically deactivate the current one. Tasks already in the assignment queue will continue using the algorithm that was active when they entered the queue.

Algorithm-Specific Config Examples

Nearest (default)

No additional configuration needed. Uses maxSearchRadiusMeters to find the closest available agent.

Zone-Based

{
  "zones": [
    {
      "name": "Downtown",
      "polygon": [[lat, lng], ...],
      "assignedAgents": [1, 2, 3]
    },
    {
      "name": "Suburbs",
      "polygon": [[lat, lng], ...],
      "assignedAgents": [4, 5]
    }
  ]
}

One-by-One

{
  "offerTimeoutSeconds": 30,
  "maxOfferAttempts": 5
}

Offers the task to one agent at a time. If the agent doesn't accept within the timeout, it moves to the next one.