Create Production Schedule Line

Beta
POST/v1/operations/production-schedules/{id}/lines

Idempotent with Idempotency-Key header. Learn more

Adds a campaign to a schedule by hand.

The line is recorded as manual, so a later regenerate can tell it apart from what the solver produced, and the change is written to the deviation log. Adding into a frozen week requires a reason.

Only a draft or a published version can be edited; a superseded or archived version is history. The campaign is appended to the end of its week's run order.

Permissions requiredValues:production_schedules:update
The role behind your API key or agent must grant every one of these permissions.
idstring

ID of the production schedule.

week_indexinteger

Horizon week to plan the campaign in, zero-based.

Week 0 is the week the schedule's horizon starts in. The week must fall inside the horizon this version was planned over.

machine_idstring

ID of the machine that will run the campaign.

The machine's production step and department are copied onto the campaign, which is what department-level attainment rolls it up by. The schedule's derived department work is not re-exploded for a hand-added campaign; it is rebuilt the next time the version is regenerated.

item_idstring

ID of the item to build.

quantitynumber

Units to build over the campaign.

lotsoptional integer

How many lots the quantity is built in.

Left unset, it is derived from the quantity and the account's default lot size. The lot size itself is taken from that account default and is not settable per campaign, so this is a record of the lot count rather than what a release splits batches by.

run_hoursoptional number

Machine hours the campaign will take.

Left unset, it is estimated from the rate this version was solved with for this item, so the week's utilisation still reflects the added work. An item the version holds no policy for estimates to zero.

reasonoptional stringenumValues:machine_downmaterial_shortagerush_order

Why the campaign was added.

Required when the campaign lands inside a frozen week, since that is a commitment being changed.

reason_noteoptional string

Free-form explanation of the change.

idstring

Line ID.

objectstringenumValues:production_schedule_line

Resource type identifier.

production_scheduleentitynullable

The schedule version this line belongs to.

idstring

Unique identifier for the entity.

objectstringenumValues:entity

Resource type identifier.

typestringenumValues:accountactorentity

The resource kind that this entity references, as an object-type value (e.g. user, account).

Unlike object — which is always entity — this names the underlying resource the id points to.

namestringnullable

Human-readable display name for the entity (e.g. a user's full name, a sales order number).

handlestringnullable

Secondary human-readable identifier (e.g. email address, username, redacted API key value).

week_indexinteger

Zero-based week offset from the start of the horizon.

week_starts_atstring (date-time)

First instant of the week this campaign runs in.

machineentitynullable

The machine assigned to the campaign.

idstring

Unique identifier for the entity.

objectstringenumValues:entity

Resource type identifier.

typestringenumValues:accountactorentity

The resource kind that this entity references, as an object-type value (e.g. user, account).

Unlike object — which is always entity — this names the underlying resource the id points to.

namestringnullable

Human-readable display name for the entity (e.g. a user's full name, a sales order number).

handlestringnullable

Secondary human-readable identifier (e.g. email address, username, redacted API key value).

production_stepentitynullable

The production step the campaign runs at.

idstring

Unique identifier for the entity.

objectstringenumValues:entity

Resource type identifier.

typestringenumValues:accountactorentity

The resource kind that this entity references, as an object-type value (e.g. user, account).

Unlike object — which is always entity — this names the underlying resource the id points to.

namestringnullable

Human-readable display name for the entity (e.g. a user's full name, a sales order number).

handlestringnullable

Secondary human-readable identifier (e.g. email address, username, redacted API key value).

departmententitynullable

The department the machine belongs to.

idstring

Unique identifier for the entity.

objectstringenumValues:entity

Resource type identifier.

typestringenumValues:accountactorentity

The resource kind that this entity references, as an object-type value (e.g. user, account).

Unlike object — which is always entity — this names the underlying resource the id points to.

namestringnullable

Human-readable display name for the entity (e.g. a user's full name, a sales order number).

handlestringnullable

Secondary human-readable identifier (e.g. email address, username, redacted API key value).

itementitynullable

The item to produce.

idstring

Unique identifier for the entity.

objectstringenumValues:entity

Resource type identifier.

typestringenumValues:accountactorentity

The resource kind that this entity references, as an object-type value (e.g. user, account).

Unlike object — which is always entity — this names the underlying resource the id points to.

namestringnullable

Human-readable display name for the entity (e.g. a user's full name, a sales order number).

handlestringnullable

Secondary human-readable identifier (e.g. email address, username, redacted API key value).

planned_quantitynumber

Quantity to produce.

planned_unitentitynullable

Unit the quantity is expressed in.

idstring

Unique identifier for the entity.

objectstringenumValues:entity

Resource type identifier.

typestringenumValues:accountactorentity

The resource kind that this entity references, as an object-type value (e.g. user, account).

Unlike object — which is always entity — this names the underlying resource the id points to.

namestringnullable

Human-readable display name for the entity (e.g. a user's full name, a sales order number).

handlestringnullable

Secondary human-readable identifier (e.g. email address, username, redacted API key value).

planned_unit_abbreviationstringnullable

Abbreviation of the unit every quantity on this line is counted in, for display.

A campaign of 360 means 360 pairs or 360 eaches depending on this, so the two are never meaningful apart.

planned_lotsinteger

Whole lots the quantity rounds to.

planned_lot_unitsnumber

Units in one lot, which is the batch size the week is released to the floor in.

planned_run_hoursnumber

Constraint hours the campaign consumes.

planned_changeover_minutesnumber

Modelled changeover time before the campaign.

sequence_indexinteger

Order the campaign runs within its week.

projected_on_hand_beforenumber

Projected stock before the campaign lands.

projected_on_hand_afternumber

Projected stock after the campaign lands and the week's demand is drawn down.

statusstringenumValues:plannedreleasedin_progress

Where the line is in its lifecycle.

A campaign becomes released when its week is issued to the floor as a production run, and goes back to planned if that run is deleted.

sourcestringenumValues:solvermanual

Whether the solver or a person created the line.

Editing a solver-placed campaign turns it manual, and a regenerate that preserves hand work keeps exactly the campaigns marked that way.

reasonstringnullableenumValues:machine_downmaterial_shortagerush_order

Why the campaign was placed or last changed by hand.

Only hand changes record a reason, and a change that touches a frozen week has to supply one.

freeze_statusstringenumValues:frozenflexible

Whether the line is inside the frozen window, where changing it requires a reason for the deviation log.

production_runentitynullable

The production run this campaign's week was released as.

One run carries the whole week, so every campaign released alongside this one points at the same run.

idstring

Unique identifier for the entity.

objectstringenumValues:entity

Resource type identifier.

typestringenumValues:accountactorentity

The resource kind that this entity references, as an object-type value (e.g. user, account).

Unlike object — which is always entity — this names the underlying resource the id points to.

namestringnullable

Human-readable display name for the entity (e.g. a user's full name, a sales order number).

handlestringnullable

Secondary human-readable identifier (e.g. email address, username, redacted API key value).

released_batch_countinteger

Batches this campaign issued to the floor when its week was released.

scanned_batch_countinteger

Batches of this campaign the floor has scanned.

scanned_quantitynumber

Quantity scanned so far, in the planned unit.

Measured from the run the week was released as, matched on this campaign's item, so a run holding several SKUs credits each campaign with only its own work.

created_atstring (date-time)

Creation timestamp.

updated_atstring (date-time)

Last updated timestamp.

Responses

201

Successful response for Create Production Schedule Line