Jobs

Jobs represent work orders for warehouse operations such as wave picks. Jobs group consignments together for efficient processing.

Endpoints Overview

Method Endpoint Description
POST /v1/jobs/wave-pick Create a wave pick job
GET /v1/jobs/{jobId}/wave-pick Get wave pick job details
GET /v1/jobs/{jobId}/wave-pick/consignments Get job consignments
POST /v1/jobs/{jobId}/wave-pick/consignments/add Add consignments to job
POST /v1/jobs/{jobId}/wave-pick/consignments/remove Remove consignments from job

Create Wave Pick Job

Create a new wave pick job.

Endpoint: POST /v1/jobs/wave-pick

Request Body

{
  "warehouseId": "550e8400-e29b-41d4-a716-446655445010",
  "clientId": "550e8400-e29b-41d4-a716-446655445100",
  "style": 1,
  "dueDateTime": "2024-01-15T12:00:00Z",
  "priority": 2,
  "reference": "WAVE-001",
  "description": "Morning wave pick for express orders"
}
Field Type Required Description
warehouseId uuid Yes The ID of the warehouse where the job is created
clientId uuid Yes The ID of the client for the job
style integer No Wave pick style (see Wave Pick Style Values)
dueDateTime datetime No Due date and time of the job
priority integer No Job priority (see Job Priority Values)
reference string No Job reference
description string No Job description

Request Example

curl -X POST "https://api.consignlyhq.com/v1/jobs/wave-pick" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "warehouseId": "550e8400-e29b-41d4-a716-446655445010",
    "clientId": "550e8400-e29b-41d4-a716-446655445100",
    "style": 1,
    "dueDateTime": "2024-01-15T12:00:00Z",
    "priority": 2,
    "reference": "WAVE-001",
    "description": "Morning wave pick for express orders"
  }'

Response Example

{
  "jobId": "550e8400-e29b-41d4-a716-446655445000"
}

Response Fields

Field Type Description
jobId uuid The ID of the created wave pick job

Get Job Details

Retrieve details for a specific wave pick job.

Endpoint: GET /v1/jobs/{jobId}/wave-pick

Path Parameters

Parameter Type Required Description
jobId uuid Yes The job ID

Request Example

curl -X GET "https://api.consignlyhq.com/v1/jobs/550e8400-e29b-41d4-a716-446655445000/wave-pick" \
  -H "Authorization: Bearer ACCESS_TOKEN"

Response Example

{
  "jobId": "550e8400-e29b-41d4-a716-446655445000",
  "jobNumber": "JOB-2024-001234",
  "warehouseId": "550e8400-e29b-41d4-a716-446655445010",
  "clientId": "550e8400-e29b-41d4-a716-446655445100",
  "status": 2,
  "wavePickStyle": 1,
  "dueDateTime": "2024-01-15T12:00:00Z",
  "reference": "WAVE-001",
  "description": "Morning wave pick for express orders",
  "jobConsignments": [
    {
      "id": "550e8400-e29b-41d4-a716-446655445020",
      "consignmentNumber": "CON-001",
      "referenceNumber": "REF-001",
      "clientId": "550e8400-e29b-41d4-a716-446655445100",
      "clientName": "Example Client",
      "clientCode": "ECL",
      "dateEntered": "2024-01-10",
      "type": 1,
      "status": 2,
      "warehouseId": "550e8400-e29b-41d4-a716-446655445010",
      "warehouseCode": "WH01",
      "warehouseName": "Main Warehouse",
      "carrierId": "550e8400-e29b-41d4-a716-446655445200",
      "carrierName": "Express Freight",
      "carrierCode": "EXF",
      "carrierReferenceNumber": "EXF-REF-001",
      "carrierRunNumber": "RUN-01",
      "carrierRunOrdinal": 1,
      "ediStatus": null
    }
  ]
}

Job Response Fields

Field Type Description
jobId uuid Job ID
jobNumber string System-generated job number
warehouseId uuid ID of the job warehouse
clientId uuid ID of the job client
status integer Job status (see Job Status Values)
wavePickStyle integer Wave pick style (see Wave Pick Style Values)
dueDateTime datetime Due date and time
reference string Job reference
description string Job description
jobConsignments array Consignments in job (see Consignments for field details)

Job Status Values

Value Status Description
-2 Incomplete Job is incomplete
-1 Open Job is open
1 Draft Job in draft
2 ReadyToStart Job ready to start
3 InProgress Job in progress
4 Complete Job completed
5 Cancelled Job cancelled

Job Priority Values

Value Priority
2 Normal
3 High
4 Urgent

Wave Pick Style Values

Value Style Description
1 ParallelPicking Pick multiple orders in parallel
2 BulkPicking Pick in bulk across orders

Get Job Consignments

Get the list of consignments for a wave pick job.

Endpoint: GET /v1/jobs/{jobId}/wave-pick/consignments

Path Parameters

Parameter Type Required Description
jobId uuid Yes The job ID

Query Parameters

Parameter Type Required Description
IncludeVoid boolean No Whether void consignments should be included

Request Example

curl -X GET "https://api.consignlyhq.com/v1/jobs/550e8400-e29b-41d4-a716-446655445000/wave-pick/consignments?IncludeVoid=false" \
  -H "Authorization: Bearer ACCESS_TOKEN"

Response Example

{
  "consignments": [
    {
      "id": "550e8400-e29b-41d4-a716-446655445020",
      "consignmentNumber": "CON-001",
      "referenceNumber": "REF-001",
      "clientId": "550e8400-e29b-41d4-a716-446655445100",
      "clientName": "Example Client",
      "clientCode": "ECL",
      "dateEntered": "2024-01-10",
      "type": 1,
      "status": 2,
      "warehouseId": "550e8400-e29b-41d4-a716-446655445010",
      "warehouseCode": "WH01",
      "warehouseName": "Main Warehouse",
      "carrierId": "550e8400-e29b-41d4-a716-446655445200",
      "carrierName": "Express Freight",
      "carrierCode": "EXF",
      "carrierReferenceNumber": "EXF-REF-001",
      "carrierRunNumber": "RUN-01",
      "carrierRunOrdinal": 1,
      "ediStatus": null
    }
  ]
}

Response Fields

Field Type Description
consignments array Collection of consignments in the wave pick job (see Consignments for field details)

Add Consignments to Job

Add one or more consignments to an existing job.

Endpoint: POST /v1/jobs/{jobId}/wave-pick/consignments/add

Path Parameters

Parameter Type Required Description
jobId uuid Yes The job ID

Request Body

{
  "consignmentIds": [
    "550e8400-e29b-41d4-a716-446655445030",
    "550e8400-e29b-41d4-a716-446655445031"
  ]
}
Field Type Required Description
consignmentIds uuid[] Yes Array of consignment IDs to add

Request Example

curl -X POST "https://api.consignlyhq.com/v1/jobs/550e8400-e29b-41d4-a716-446655445000/wave-pick/consignments/add" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "consignmentIds": [
      "550e8400-e29b-41d4-a716-446655445030",
      "550e8400-e29b-41d4-a716-446655445031"
    ]
  }'

Response

Status: 200 OK

Error Cases

Status Cause Resolution
404 Job not found Verify job ID
400 Consignment already in job Check consignment assignments
400 Consignment not eligible Verify consignment status

Remove Consignments from Job

Remove one or more consignments from a job.

Endpoint: POST /v1/jobs/{jobId}/wave-pick/consignments/remove

Path Parameters

Parameter Type Required Description
jobId uuid Yes The job ID

Request Body

{
  "consignmentIds": [
    "550e8400-e29b-41d4-a716-446655445030"
  ]
}
Field Type Required Description
consignmentIds uuid[] Yes Array of consignment IDs to remove

Request Example

curl -X POST "https://api.consignlyhq.com/v1/jobs/550e8400-e29b-41d4-a716-446655445000/wave-pick/consignments/remove" \
  -H "Authorization: Bearer ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "consignmentIds": [
      "550e8400-e29b-41d4-a716-446655445030"
    ]
  }'

Response

Status: 200 OK


Jobs in Consignment Detail

When retrieving consignment details, associated jobs are included:

{
  "id": "550e8400-e29b-41d4-a716-446655445020",
  "jobs": [
    {
      "jobId": "550e8400-e29b-41d4-a716-446655445000",
      "jobNumber": "JOB-2024-001234",
      "reference": "WAVE-001",
      "status": 2,
      "priority": 3,
      "type": 1,
      "wavePickStyle": 1,
      "position": 1,
      "dueDateTime": "2024-01-15T12:00:00Z"
    }
  ]
}