← API reference
CANONICAL TYPE REFERENCE

UpsertComponentInput

Input for creating or updating a component

ID for update; omit for create

Parent job ID (required)

Parent component group ID (optional — leave nil for ungrouped components)

Internal component number

External system ID

nameString!

Component name (required)

Component description

Component classification (required)

Number of units (required)

Sort order (defaults to 0)

Override creation timestamp (ISO8601). Honored only on create — passing on update is rejected.

Override update timestamp (ISO8601). Honored on create or update; defaults to now.

Total number of pages

Desired substrate/paper ID

Actual substrate/paper ID

Color specification for front and back

Layout specification with layers

Media/paper specification (JSON)

Finished size after trimming (JSON)

Finishing specification (varnish, die, foil, emboss)

View exact SDL
"""Input for creating or updating a component"""
input UpsertComponentInput {
  """ID for update; omit for create"""
  id: ComponentID
  """Parent job ID (required)"""
  jobId: JobID!
  """
  Parent component group ID (optional — leave nil for ungrouped components)
  """
  componentGroupId: ComponentGroupID
  """Internal component number"""
  componentNumber: String
  """External system ID"""
  externalId: String
  """Component name (required)"""
  name: String!
  """Component description"""
  description: String
  """Component classification (required)"""
  kind: ComponentKind!
  """Number of units (required)"""
  quantity: Int!
  """Sort order (defaults to 0)"""
  sortOrder: Int
  """
  Override creation timestamp (ISO8601). Honored only on create — passing on update is rejected.
  """
  createdAt: ISO8601
  """
  Override update timestamp (ISO8601). Honored on create or update; defaults to now.
  """
  updatedAt: ISO8601
  """Total number of pages"""
  totalPages: Int
  """Desired substrate/paper ID"""
  desiredSubstrateId: SubstrateID
  """Actual substrate/paper ID"""
  actualSubstrateId: SubstrateID
  """Color specification for front and back"""
  colors: ComponentColorInfoInput
  """Layout specification with layers"""
  layout: ComponentLayoutInput
  """Media/paper specification (JSON)"""
  media: JSON
  """Finished size after trimming (JSON)"""
  finishedSize: JSON
  """Finishing specification (varnish, die, foil, emboss)"""
  finishing: FinishingSpecInput
}

One stable address across all schema views. Follow a field’s type to explore connections between domains.