1Factory · JSON Structure

1Factory Part Master Structure

PartMaster schema from 1Factory API

Type: object Properties: 24 Required: 1
AnalyticsData CollectionManufacturingMonitoringQuality

PartMaster is a JSON Structure definition published by 1Factory, describing 24 properties, of which 1 is required. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

ID part_number rev description status alt_part_number alt_rev alt_part_number2 alt_rev2 project_identifier plan_count ncr_count type parent_part_number parent_rev cost unit is_library is_assembly is_itar has_ppap component_parts is_buy comments

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/1factory/refs/heads/main/json-structure/1factory-part-master-structure.json",
  "name": "PartMaster",
  "description": "PartMaster schema from 1Factory API",
  "type": "object",
  "properties": {
    "ID": {
      "$ref": "#/components/schemas/ID"
    },
    "part_number": {
      "$ref": "#/components/schemas/part_number"
    },
    "rev": {
      "$ref": "#/components/schemas/rev"
    },
    "description": {
      "type": "string",
      "nullable": true,
      "maxLength": 255,
      "description": "Description of the part. (Optional).",
      "example": "Three Lobe Shaft"
    },
    "status": {
      "type": "string",
      "nullable": false,
      "enum": [
        "Active",
        "Inactive"
      ],
      "default": "Active",
      "description": "Status of Part Master entry."
    },
    "alt_part_number": {
      "type": "string",
      "nullable": true,
      "maxLength": 255,
      "description": "An alternative identifier used to identify a part, such as Drawing #, or customer / supplier part number.",
      "example": "DN-1234568"
    },
    "alt_rev": {
      "type": "string",
      "nullable": true,
      "maxLength": 255,
      "description": "An alternate part revision, such as a drawing revision, or customer / supplier part revision.",
      "example": "B"
    },
    "alt_part_number2": {
      "type": "string",
      "nullable": true,
      "maxLength": 255,
      "description": "A second alternative identifier used to identify a part, such as Drawing #, or customer / supplier part number.",
      "example": "CN-1234569"
    },
    "alt_rev2": {
      "type": "string",
      "nullable": true,
      "maxLength": 255,
      "description": "A second alternate part revision, such as a drawing revision, or customer / supplier part revision.",
      "example": "C"
    },
    "project_identifier": {
      "$ref": "#/components/schemas/project_identifier"
    },
    "plan_count": {
      "type": "double",
      "nullable": false,
      "description": "The number of plans this Part Master is associated with.",
      "example": 2
    },
    "ncr_count": {
      "type": "double",
      "nullable": false,
      "description": "The number of NCRs this Part Master is associated with.",
      "example": 3
    },
    "type": {
      "type": "string",
      "description": "Identify if the part is part of a regular part, tabulated part, or the parent tabulated part",
      "enum": [
        "Tabulated",
        "ToS Entry",
        "Standard"
      ]
    },
    "parent_part_number": {
      "type": "string",
      "description": "The part number of the parent part if this part is a Table of Size entry."
    },
    "parent_rev": {
      "type": "string",
      "description": "The part revision of the parent part if this part is a Table of Size entry."
    },
    "cost": {
      "type": "double",
      "nullable": true,
      "description": "Cost of the part. (Optional).",
      "example": 3.5
    },
    "unit": {
      "type": "string",
      "description": "Unit used for determine part cost. (Optional)",
      "example": "Each"
    },
    "is_library": {
      "type": "boolean",
      "default": false,
      "description": "If true, indicates the part is setup as a library for a Spec Library.",
      "example": false
    },
    "is_assembly": {
      "type": "boolean",
      "default": false,
      "description": "If true, indicates part is an assembly."
    },
    "is_itar": {
      "type": "boolean",
      "default": false,
      "description": "If true, indicates part is an ITAR part with additional controls."
    },
    "has_ppap": {
      "type": "boolean",
      "default": false,
      "description": "If true, indicates part has PPAP documents."
    },
    "component_parts": {
      "type": "array",
      "minItems": 0,
      "readOnly": true,
      "items": {
        "$ref": "#/components/schemas/AssemblyEntry"
      },
      "example": []
    },
    "is_buy": {
      "type": "boolean",
      "default": false,
      "description": "If true, indicates part is bought, rather than made. (Optional)"
    },
    "comments": {
      "type": "string",
      "nullable": true,
      "maxLength": 32000,
      "description": "Detailed comments regarding the part. (Optional)",
      "example": "This is a brand new part that we are prototyping."
    }
  },
  "required": [
    "part_number"
  ]
}