Skip to content

The Bill of Materials section of the InvenTree API schema is documented below.

InvenTree API 435

API for InvenTree - the intuitive open source inventory management system


License: MIT

Servers

Description URL
http://localhost:8000 http://localhost:8000

bom


DELETE /api/bom/

Description

Perform a DELETE operation against this list endpoint.

Note that the typical DRF list endpoint does not support DELETE, so this method is provided as a custom implementation.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"

Request body

{
    "filters": {},
    "items": [
        0
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Parameters for selecting items for bulk operations.",
    "properties": {
        "filters": {
            "additionalProperties": {},
            "title": "A dictionary of filter values",
            "type": "object"
        },
        "items": {
            "items": {
                "type": "integer"
            },
            "title": "A list of primary key values",
            "type": "array"
        }
    },
    "type": "object"
}

{
    "filters": {},
    "items": [
        0
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Parameters for selecting items for bulk operations.",
    "properties": {
        "filters": {
            "additionalProperties": {},
            "title": "A dictionary of filter values",
            "type": "object"
        },
        "items": {
            "items": {
                "type": "integer"
            },
            "title": "A list of primary key values",
            "type": "array"
        }
    },
    "type": "object"
}

{
    "filters": {},
    "items": [
        0
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Parameters for selecting items for bulk operations.",
    "properties": {
        "filters": {
            "additionalProperties": {},
            "title": "A dictionary of filter values",
            "type": "object"
        },
        "items": {
            "items": {
                "type": "integer"
            },
            "title": "A list of primary key values",
            "type": "array"
        }
    },
    "type": "object"
}

Response 204 No Content


GET /api/bom/

Description

Override the GET method to determine export options.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
allow_variants query boolean No
available_stock query boolean No Has available stock
can_build query boolean True No
category query integer No
consumable query boolean No
has_pricing query boolean No Has Pricing
inherited query boolean No
limit query integer No Number of results to return per page.
offset query integer No The initial index from which to return the results.
on_order query boolean No On order
optional query boolean No
ordering query string No Which field to use when ordering the results.
part query integer No
part_active query boolean No Assembly part is active
part_detail query boolean False No Include detailed information about the related part in the response
part_testable query boolean No Assembly part is testable
part_trackable query boolean No Assembly part is trackable
pricing query boolean False No
search query string No A search term. Searched fields: part__IPN, part__description, part__keywords, part__name, part__revision, reference, sub_part__IPN, sub_part__category__name, sub_part__description, sub_part__keywords, sub_part__name, sub_part__revision.
sub_part_assembly query boolean No Component part is an assembly
sub_part_detail query boolean False No
sub_part_testable query boolean No Component part is testable
sub_part_trackable query boolean No Component part is trackable
sub_part_virtual query boolean No Component part is virtual
substitutes query boolean False No
uses query integer No
validated query boolean No

Response 200 OK

{
    "count": 123,
    "next": "http://api.example.org/accounts/?offset=400&limit=100",
    "previous": "http://api.example.org/accounts/?offset=200&limit=100",
    "results": [
        {
            "allow_variants": true,
            "attrition": 10.12,
            "available_stock": 10.12,
            "available_substitute_stock": 10.12,
            "available_variant_stock": 10.12,
            "building": 10.12,
            "can_build": 10.12,
            "category_detail": null,
            "consumable": true,
            "external_stock": 10.12,
            "inherited": true,
            "note": "string",
            "on_order": 10.12,
            "optional": true,
            "part": 0,
            "part_detail": null,
            "pk": 0,
            "pricing_max": "string",
            "pricing_max_total": "string",
            "pricing_min": "string",
            "pricing_min_total": "string",
            "pricing_updated": "2022-04-13T15:42:05.901Z",
            "quantity": 10.12,
            "reference": "string",
            "rounding_multiple": 10.12,
            "setup_quantity": 10.12,
            "sub_part": 0,
            "sub_part_detail": null,
            "substitutes": [
                {
                    "bom_item": 0,
                    "part": 0,
                    "part_detail": null,
                    "pk": 0
                }
            ],
            "validated": true
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "count": {
            "example": 123,
            "type": "integer"
        },
        "next": {
            "example": "http://api.example.org/accounts/?offset=400&limit=100",
            "format": "uri",
            "nullable": true,
            "type": "string"
        },
        "previous": {
            "example": "http://api.example.org/accounts/?offset=200&limit=100",
            "format": "uri",
            "nullable": true,
            "type": "string"
        },
        "results": {
            "items": {
                "$ref": "#/components/schemas/BomItem"
            },
            "type": "array"
        }
    },
    "required": [
        "count",
        "results"
    ],
    "type": "object"
}

POST /api/bom/

Description

API endpoint for accessing a list of BomItem objects.

  • GET: Return list of BomItem objects
  • POST: Create a new BomItem object

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"

Request body

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

Response 201 Created

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

GET /api/bom/substitute/

Description

API endpoint for accessing a list of BomItemSubstitute objects.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
bom_item query integer No
limit query integer No Number of results to return per page.
offset query integer No The initial index from which to return the results.
ordering query string No Which field to use when ordering the results.
part query integer No
search query string No A search term.

Response 200 OK

{
    "count": 123,
    "next": "http://api.example.org/accounts/?offset=400&limit=100",
    "previous": "http://api.example.org/accounts/?offset=200&limit=100",
    "results": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "count": {
            "example": 123,
            "type": "integer"
        },
        "next": {
            "example": "http://api.example.org/accounts/?offset=400&limit=100",
            "format": "uri",
            "nullable": true,
            "type": "string"
        },
        "previous": {
            "example": "http://api.example.org/accounts/?offset=200&limit=100",
            "format": "uri",
            "nullable": true,
            "type": "string"
        },
        "results": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "type": "array"
        }
    },
    "required": [
        "count",
        "results"
    ],
    "type": "object"
}

POST /api/bom/substitute/

Description

API endpoint for accessing a list of BomItemSubstitute objects.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"

Request body

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

Response 201 Created

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

DELETE /api/bom/substitute/{id}/

Description

API endpoint for detail view of a single BomItemSubstitute object.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Response 204 No Content


GET /api/bom/substitute/{id}/

Description

API endpoint for detail view of a single BomItemSubstitute object.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Response 200 OK

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

PATCH /api/bom/substitute/{id}/

Description

API endpoint for detail view of a single BomItemSubstitute object.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "type": "object"
}

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "type": "object"
}

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "type": "object"
}

Response 200 OK

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

PUT /api/bom/substitute/{id}/

Description

API endpoint for detail view of a single BomItemSubstitute object.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

Response 200 OK

{
    "bom_item": 0,
    "part": 0,
    "part_detail": null,
    "pk": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer for the BomItemSubstitute class.",
    "properties": {
        "bom_item": {
            "description": "Parent BOM item",
            "type": "integer"
        },
        "part": {
            "description": "Substitute part",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "readOnly": true
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        }
    },
    "required": [
        "bom_item",
        "part",
        "part_detail",
        "pk"
    ],
    "type": "object"
}

GET /api/bom/substitute/{id}/metadata/

Description

Generic API endpoint for reading and editing metadata for a model.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Response 200 OK

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

PATCH /api/bom/substitute/{id}/metadata/

Description

Generic API endpoint for reading and editing metadata for a model.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "type": "object"
}

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "type": "object"
}

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "type": "object"
}

Response 200 OK

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

PUT /api/bom/substitute/{id}/metadata/

Description

Generic API endpoint for reading and editing metadata for a model.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

Response 200 OK

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

DELETE /api/bom/{id}/

Description

API endpoint for detail view of a single BomItem object.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Response 204 No Content


GET /api/bom/{id}/

Description

API endpoint for detail view of a single BomItem object.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
can_build query boolean True No
id path integer No
part_detail query boolean False No Include detailed information about the related part in the response
pricing query boolean False No
sub_part_detail query boolean False No
substitutes query boolean False No

Response 200 OK

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

PATCH /api/bom/{id}/

Description

API endpoint for detail view of a single BomItem object.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "type": "object"
}

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "type": "object"
}

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "type": "object"
}

Response 200 OK

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

PUT /api/bom/{id}/

Description

API endpoint for detail view of a single BomItem object.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

Response 200 OK

{
    "allow_variants": true,
    "attrition": 10.12,
    "available_stock": 10.12,
    "available_substitute_stock": 10.12,
    "available_variant_stock": 10.12,
    "building": 10.12,
    "can_build": 10.12,
    "category_detail": null,
    "consumable": true,
    "external_stock": 10.12,
    "inherited": true,
    "note": "string",
    "on_order": 10.12,
    "optional": true,
    "part": 0,
    "part_detail": null,
    "pk": 0,
    "pricing_max": "string",
    "pricing_max_total": "string",
    "pricing_min": "string",
    "pricing_min_total": "string",
    "pricing_updated": "2022-04-13T15:42:05.901Z",
    "quantity": 10.12,
    "reference": "string",
    "rounding_multiple": 10.12,
    "setup_quantity": 10.12,
    "sub_part": 0,
    "sub_part_detail": null,
    "substitutes": [
        {
            "bom_item": 0,
            "part": 0,
            "part_detail": null,
            "pk": 0
        }
    ],
    "validated": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer for BomItem object.",
    "properties": {
        "allow_variants": {
            "description": "Stock items for variant parts can be used for this BOM item",
            "type": "boolean"
        },
        "attrition": {
            "format": "double",
            "type": "number"
        },
        "available_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_substitute_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "available_variant_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "building": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "title": "In Production",
            "type": "number"
        },
        "can_build": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "category_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/Category"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Category"
        },
        "consumable": {
            "description": "This BOM item is consumable (it is not tracked in build orders)",
            "type": "boolean"
        },
        "external_stock": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "inherited": {
            "description": "This BOM item is inherited by BOMs for variant parts",
            "title": "Gets inherited",
            "type": "boolean"
        },
        "note": {
            "description": "BOM item notes",
            "maxLength": 500,
            "type": "string"
        },
        "on_order": {
            "format": "double",
            "nullable": true,
            "readOnly": true,
            "type": "number"
        },
        "optional": {
            "description": "This BOM item is optional",
            "type": "boolean"
        },
        "part": {
            "description": "Select the parent assembly",
            "title": "Assembly",
            "type": "integer"
        },
        "part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Assembly"
        },
        "pk": {
            "readOnly": true,
            "title": "ID",
            "type": "integer"
        },
        "pricing_max": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_max_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_min_total": {
            "format": "decimal",
            "nullable": true,
            "pattern": "^-?\\d{0,13}(?:\\.\\d{0,6})?$",
            "readOnly": true,
            "type": "string"
        },
        "pricing_updated": {
            "format": "date-time",
            "nullable": true,
            "readOnly": true,
            "type": "string"
        },
        "quantity": {
            "format": "double",
            "type": "number"
        },
        "reference": {
            "description": "BOM item reference",
            "maxLength": 5000,
            "type": "string"
        },
        "rounding_multiple": {
            "format": "double",
            "nullable": true,
            "type": "number"
        },
        "setup_quantity": {
            "format": "double",
            "type": "number"
        },
        "sub_part": {
            "description": "Select the component part",
            "title": "Component",
            "type": "integer"
        },
        "sub_part_detail": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/PartBrief"
                }
            ],
            "nullable": true,
            "readOnly": true,
            "title": "Component"
        },
        "substitutes": {
            "items": {
                "$ref": "#/components/schemas/BomItemSubstitute"
            },
            "nullable": true,
            "readOnly": true,
            "type": "array"
        },
        "validated": {
            "description": "This BOM item has been validated",
            "type": "boolean"
        }
    },
    "required": [
        "part",
        "pk",
        "quantity",
        "sub_part"
    ],
    "type": "object"
}

GET /api/bom/{id}/metadata/

Description

Generic API endpoint for reading and editing metadata for a model.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Response 200 OK

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

PATCH /api/bom/{id}/metadata/

Description

Generic API endpoint for reading and editing metadata for a model.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "type": "object"
}

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "type": "object"
}

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "type": "object"
}

Response 200 OK

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

PUT /api/bom/{id}/metadata/

Description

Generic API endpoint for reading and editing metadata for a model.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

Response 200 OK

{
    "metadata": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Serializer class for model metadata API access.",
    "properties": {
        "metadata": {}
    },
    "required": [
        "metadata"
    ],
    "type": "object"
}

PATCH /api/bom/{id}/validate/

Description

API endpoint for validating a BomItem.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "valid": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Simple serializer for passing a single boolean field.",
    "properties": {
        "valid": {
            "default": false,
            "type": "boolean"
        }
    },
    "type": "object"
}

{
    "valid": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Simple serializer for passing a single boolean field.",
    "properties": {
        "valid": {
            "default": false,
            "type": "boolean"
        }
    },
    "type": "object"
}

{
    "valid": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Simple serializer for passing a single boolean field.",
    "properties": {
        "valid": {
            "default": false,
            "type": "boolean"
        }
    },
    "type": "object"
}

Response 200 OK

{
    "valid": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Simple serializer for passing a single boolean field.",
    "properties": {
        "valid": {
            "default": false,
            "type": "boolean"
        }
    },
    "type": "object"
}

PUT /api/bom/{id}/validate/

Description

API endpoint for validating a BomItem.

Input parameters

Parameter In Type Default Nullable Description
oauth2 header string N/A No
cookieAuth cookie string N/A No API key
basicAuth header string N/A No Basic authentication
tokenAuth header string N/A No Token-based authentication with required prefix "Token"
id path integer No

Request body

{
    "valid": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Simple serializer for passing a single boolean field.",
    "properties": {
        "valid": {
            "default": false,
            "type": "boolean"
        }
    },
    "type": "object"
}

{
    "valid": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Simple serializer for passing a single boolean field.",
    "properties": {
        "valid": {
            "default": false,
            "type": "boolean"
        }
    },
    "type": "object"
}

{
    "valid": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Simple serializer for passing a single boolean field.",
    "properties": {
        "valid": {
            "default": false,
            "type": "boolean"
        }
    },
    "type": "object"
}

Response 200 OK

{
    "valid": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Simple serializer for passing a single boolean field.",
    "properties": {
        "valid": {
            "default": false,
            "type": "boolean"
        }
    },
    "type": "object"
}

Schemas

BomItem

Name Type
allow_variants boolean
attrition number(double)
available_stock number(double)| null
available_substitute_stock number(double)| null
available_variant_stock number(double)| null
building number(double)| null
can_build number(double)| null
category_detail
consumable boolean
external_stock number(double)| null
inherited boolean
note string
on_order number(double)| null
optional boolean
part integer
part_detail
pk integer
pricing_max string(decimal)| null
pricing_max_total string(decimal)| null
pricing_min string(decimal)| null
pricing_min_total string(decimal)| null
pricing_updated string(date-time)| null
quantity number(double)
reference string
rounding_multiple number(double)| null
setup_quantity number(double)
sub_part integer
sub_part_detail
substitutes Array<BomItemSubstitute>
validated boolean

BomItemSubstitute

Name Type
bom_item integer
part integer
part_detail
pk integer

BomItemValidation

Name Type
valid boolean

BulkRequest

Name Type
filters
items Array<integer>

Category

Name Type
default_keywords string| null
default_location integer| null
description string
icon string| null
level integer
name string
parent integer| null
parent_default_location integer| null
part_count integer| null
path Array<>
pathstring string
pk integer
starred boolean
structural boolean
subcategories integer| null

Metadata

Name Type
metadata

PaginatedBomItemList

Name Type
count integer
next string(uri)| null
previous string(uri)| null
results Array<BomItem>

PaginatedBomItemSubstituteList

Name Type
count integer
next string(uri)| null
previous string(uri)| null
results Array<BomItemSubstitute>

PartBrief

Name Type
active boolean
assembly boolean
barcode_hash string
category_default_location integer| null
component boolean
default_expiry integer(int64)
default_location integer| null
description string
full_name string
image string(uri)| null
IPN string| null
is_template boolean
locked boolean
minimum_stock string(decimal)
name string
pk integer
pricing_max string(decimal)| null
pricing_min string(decimal)| null
purchaseable boolean
revision string| null
salable boolean
testable boolean
thumbnail string
trackable boolean
units string| null
virtual boolean

PatchedBomItem

Name Type
allow_variants boolean
attrition number(double)
available_stock number(double)| null
available_substitute_stock number(double)| null
available_variant_stock number(double)| null
building number(double)| null
can_build number(double)| null
category_detail
consumable boolean
external_stock number(double)| null
inherited boolean
note string
on_order number(double)| null
optional boolean
part integer
part_detail
pk integer
pricing_max string(decimal)| null
pricing_max_total string(decimal)| null
pricing_min string(decimal)| null
pricing_min_total string(decimal)| null
pricing_updated string(date-time)| null
quantity number(double)
reference string
rounding_multiple number(double)| null
setup_quantity number(double)
sub_part integer
sub_part_detail
substitutes Array<BomItemSubstitute>
validated boolean

PatchedBomItemSubstitute

Name Type
bom_item integer
part integer
part_detail
pk integer

PatchedBomItemValidation

Name Type
valid boolean

PatchedMetadata

Name Type
metadata

Common responses

This section describes common responses that are reused across operations.

allauth.AddAuthenticatorConflict

The account prohibits adding an authenticator, e.g. because of an unverified email address.

Schema of the response body
null

allauth.AddWebAuthnAuthenticator

A WebAuthn authenticator.

{
    "data": null,
    "meta": {
        "recovery_codes_generated": true
    },
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "$ref": "#/components/schemas/allauth.WebAuthnAuthenticator"
        },
        "meta": {
            "properties": {
                "recovery_codes_generated": {
                    "description": "Whether or not recovery codes where generated automatically.\n",
                    "type": "boolean"
                }
            },
            "type": "object"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data",
        "meta"
    ],
    "type": "object"
}

allauth.Authenticated

The user is authenticated.

Schema of the response body
null

allauth.AuthenticatedByCode

Authenticated by code.

{
    "summary": "Authenticated by code.\n",
    "value": {
        "data": {
            "methods": [
                {
                    "at": 1711555057.065702,
                    "email": "email@domain.org",
                    "method": "code"
                }
            ],
            "user": {
                "display": "Magic Wizard",
                "email": "email@domain.org",
                "has_usable_password": true,
                "id": 123,
                "username": "wizard"
            }
        },
        "meta": {
            "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdW",
            "is_authenticated": true,
            "session_token": "ufwcig0zen9skyd545jc0fkq813ghar2"
        },
        "status": 200
    }
}
Schema of the response body
null

allauth.AuthenticatedByPassword

Authenticated by password.

{
    "summary": "Authenticated by password.\n",
    "value": {
        "data": {
            "methods": [
                {
                    "at": 1711555057.065702,
                    "email": "email@domain.org",
                    "method": "password"
                }
            ],
            "user": {
                "display": "Magic Wizard",
                "email": "email@domain.org",
                "has_usable_password": true,
                "id": 123,
                "username": "wizard"
            }
        },
        "meta": {
            "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdW",
            "is_authenticated": true,
            "session_token": "ufwcig0zen9skyd545jc0fkq813ghar2"
        },
        "status": 200
    }
}
Schema of the response body
null

allauth.AuthenticatedByPasswordAnd2FA

Authenticated by password and 2FA.

{
    "summary": "Fully authenticated using by password and 2FA.\n",
    "value": {
        "data": {
            "methods": [
                {
                    "at": 1711555057.065702,
                    "email": "email@domain.org",
                    "method": "password"
                },
                {
                    "at": 1711555060.9375854,
                    "id": 66,
                    "method": "mfa",
                    "type": "totp"
                }
            ],
            "user": {
                "display": "Magic Wizard",
                "email": "email@domain.org",
                "has_usable_password": true,
                "id": 123,
                "username": "wizard"
            }
        },
        "meta": {
            "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdW",
            "is_authenticated": true,
            "session_token": "ufwcig0zen9skyd545jc0fkq813ghar2"
        },
        "status": 200
    }
}
Schema of the response body
null

allauth.Authentication

Not authenticated.

{
    "summary": "Reauthentication required\n",
    "value": {
        "data": {
            "flows": [
                {
                    "id": "reauthenticate"
                },
                {
                    "id": "mfa_reauthenticate"
                }
            ],
            "methods": [
                {
                    "at": 1711555057.065702,
                    "email": "email@domain.org",
                    "method": "password"
                },
                {
                    "at": 1711555060.9375854,
                    "id": 66,
                    "method": "mfa",
                    "type": "totp"
                }
            ],
            "user": {
                "display": "Magic Wizard",
                "email": "email@domain.org",
                "has_usable_password": true,
                "id": 123,
                "username": "wizard"
            }
        },
        "meta": {
            "is_authenticated": true
        },
        "status": 401
    }
}
{
    "summary": "Unauthenticated: Initial\n",
    "value": {
        "data": {
            "flows": [
                {
                    "id": "login"
                },
                {
                    "id": "signup"
                },
                {
                    "id": "provider_redirect",
                    "providers": [
                        "facebook",
                        "google",
                        "telegram"
                    ]
                },
                {
                    "id": "provider_token",
                    "providers": [
                        "google"
                    ]
                }
            ]
        },
        "meta": {
            "is_authenticated": false
        },
        "status": 401
    }
}
{
    "summary": "Unauthenticated: pending 2FA\n",
    "value": {
        "data": {
            "flows": [
                {
                    "id": "login"
                },
                {
                    "id": "signup"
                },
                {
                    "id": "provider_redirect",
                    "providers": [
                        "facebook",
                        "google",
                        "telegram"
                    ]
                },
                {
                    "id": "provider_token",
                    "providers": [
                        "google"
                    ]
                },
                {
                    "id": "mfa_authenticate",
                    "is_pending": true
                }
            ]
        },
        "meta": {
            "is_authenticated": false
        },
        "status": 401
    }
}
{
    "summary": "Unauthenticated: pending email verification\n",
    "value": {
        "data": {
            "flows": [
                {
                    "id": "login"
                },
                {
                    "id": "signup"
                },
                {
                    "id": "provider_redirect",
                    "providers": [
                        "facebook",
                        "google",
                        "telegram"
                    ]
                },
                {
                    "id": "provider_token",
                    "providers": [
                        "google"
                    ]
                },
                {
                    "id": "verify_email",
                    "is_pending": true
                }
            ]
        },
        "meta": {
            "is_authenticated": false
        },
        "status": 401
    }
}
{
    "summary": "Unauthenticated: pending provider signup\n",
    "value": {
        "data": {
            "flows": [
                {
                    "id": "login"
                },
                {
                    "id": "signup"
                },
                {
                    "id": "provider_redirect",
                    "providers": [
                        "facebook",
                        "google",
                        "telegram"
                    ]
                },
                {
                    "id": "provider_token",
                    "providers": [
                        "google"
                    ]
                },
                {
                    "id": "provider_signup",
                    "is_pending": true,
                    "provider": {
                        "client_id": "123.apps.googleusercontent.com",
                        "flows": [
                            "provider_redirect",
                            "provider_token"
                        ],
                        "id": "google",
                        "name": "Google"
                    }
                }
            ]
        },
        "meta": {
            "is_authenticated": false
        },
        "status": 401
    }
}
Schema of the response body
null

allauth.AuthenticationOrReauthentication

The response indicates authentication or re-authentication is required.

Schema of the response body
{
    "oneOf": [
        {
            "$ref": "#/components/schemas/allauth.AuthenticationResponse"
        },
        {
            "$ref": "#/components/schemas/allauth.ReauthenticationResponse"
        }
    ]
}

allauth.Authenticators

List of authenticators.

{
    "data": null,
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "$ref": "#/components/schemas/allauth.AuthenticatorList"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.Configuration

The django-allauth configuration.

Schema of the response body
null

allauth.EmailAddresses

List of email addresses.

{
    "data": [
        null
    ],
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/allauth.EmailAddress"
            },
            "type": "array"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.EmailVerificationInfo

Email verification information.

Schema of the response body
null

allauth.Error

An input error occurred.

Schema of the response body
null

allauth.Forbidden

A forbidden response.

Schema of the response body
null

allauth.NotFound

Not found.

{
    "status": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "status": {
            "enum": [
                404
            ],
            "type": "integer"
        }
    },
    "required": [
        "status"
    ],
    "type": "object"
}

allauth.PasswordResetInfo

Information about the password reset key.

{
    "data": {
        "user": null
    },
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "properties": {
                "user": {
                    "$ref": "#/components/schemas/allauth.User"
                }
            },
            "type": "object"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.PhoneNumbers

List of phone numbers.

Schema of the response body
null

allauth.ProviderAccounts

List of third-party provider accounts.

{
    "data": [
        null
    ],
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/allauth.ProviderAccount"
            },
            "type": "array"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.ProviderSignup

Information relating to the pending provider signup.

{
    "data": {
        "account": null,
        "email": [
            null
        ],
        "user": null
    },
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "properties": {
                "account": {
                    "$ref": "#/components/schemas/allauth.ProviderAccount"
                },
                "email": {
                    "items": {
                        "$ref": "#/components/schemas/allauth.EmailAddress"
                    },
                    "type": "array"
                },
                "user": {
                    "$ref": "#/components/schemas/allauth.User"
                }
            },
            "required": [
                "email",
                "account",
                "user"
            ],
            "type": "object"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.ReauthenticationRequired

The response indicates reauthentication is required.

{
    "data": {
        "flows": [
            {
                "id": "reauthenticate"
            },
            {
                "id": "mfa_reauthenticate"
            }
        ],
        "methods": [
            {
                "at": 1711555057.065702,
                "email": "email@domain.org",
                "method": "password"
            },
            {
                "at": 1711555060.9375854,
                "id": 66,
                "method": "mfa",
                "type": "totp"
            }
        ],
        "user": {
            "display": "Magic Wizard",
            "email": "email@domain.org",
            "has_usable_password": true,
            "id": 123,
            "username": "wizard"
        }
    },
    "meta": {
        "is_authenticated": true
    },
    "status": 401
}
Schema of the response body
null

allauth.RecoveryCodes

Information on the recovery codes.

{
    "data": null,
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "$ref": "#/components/schemas/allauth.SensitiveRecoveryCodesAuthenticator"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.RefreshToken

A new access token (and optionally new refresh token).

{
    "data": {
        "access_token": null,
        "refresh_token": null
    },
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "properties": {
                "access_token": {
                    "$ref": "#/components/schemas/allauth.AccessToken"
                },
                "refresh_token": {
                    "$ref": "#/components/schemas/allauth.RefreshToken"
                }
            },
            "required": [
                "access_token"
            ],
            "type": "object"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "data",
        "status"
    ],
    "type": "object"
}

allauth.SessionGone

The response indicates session is invalid or no longer exists.

{
    "summary": "Unauthenticated: Initial\n",
    "value": {
        "data": {
            "flows": [
                {
                    "id": "login"
                },
                {
                    "id": "signup"
                },
                {
                    "id": "provider_redirect",
                    "providers": [
                        "facebook",
                        "google",
                        "telegram"
                    ]
                },
                {
                    "id": "provider_token",
                    "providers": [
                        "google"
                    ]
                }
            ]
        },
        "meta": {
            "is_authenticated": false
        },
        "status": 401
    }
}
Schema of the response body
null

allauth.Sessions

List of sessions.

{
    "data": [
        null
    ],
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "items": {
                "$ref": "#/components/schemas/allauth.Session"
            },
            "type": "array"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.StatusOK

A success response.

{
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status"
    ],
    "type": "object"
}

allauth.TOTPAuthenticator

Information on the TOTP authenticator.

{
    "data": null,
    "meta": {
        "recovery_codes_generated": true
    },
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "$ref": "#/components/schemas/allauth.TOTPAuthenticator"
        },
        "meta": {
            "properties": {
                "recovery_codes_generated": {
                    "description": "Whether or not recovery codes where generated automatically.",
                    "type": "boolean"
                }
            },
            "type": "object"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.TOTPAuthenticatorNotFound

No TOTP authenticator has been set up.

{
    "meta": {
        "secret": "J4ZKKXTK7NOVU7EPUVY23LCDV4T2QZYM",
        "totp_url": "otpauth://totp/Example:alice@fsf.org?secret=JBSWY3DPEHPK3PXP&issuer=Example"
    },
    "status": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "meta": {
            "properties": {
                "secret": {
                    "description": "A TOTP secret that can be used to setup a new authenticator.\n",
                    "example": "J4ZKKXTK7NOVU7EPUVY23LCDV4T2QZYM",
                    "type": "string"
                },
                "totp_url": {
                    "description": "otpauth URI from which a QR code can be generated and scanned by OTP clients.\n",
                    "example": "otpauth://totp/Example:alice@fsf.org?secret=JBSWY3DPEHPK3PXP&issuer=Example",
                    "type": "string"
                }
            },
            "required": [
                "secret",
                "totp_url"
            ],
            "type": "object"
        },
        "status": {
            "enum": [
                404
            ],
            "type": "integer"
        }
    },
    "required": [
        "status",
        "meta"
    ],
    "type": "object"
}

allauth.TooManyRequests

Too many requests.

{
    "status": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "status": {
            "enum": [
                429
            ],
            "type": "integer"
        }
    },
    "required": [
        "status"
    ],
    "type": "object"
}

allauth.Unauthenticated

There is no authenticated session.

{
    "summary": "Unauthenticated: Initial\n",
    "value": {
        "data": {
            "flows": [
                {
                    "id": "login"
                },
                {
                    "id": "signup"
                },
                {
                    "id": "provider_redirect",
                    "providers": [
                        "facebook",
                        "google",
                        "telegram"
                    ]
                },
                {
                    "id": "provider_token",
                    "providers": [
                        "google"
                    ]
                }
            ]
        },
        "meta": {
            "is_authenticated": false
        },
        "status": 401
    }
}
Schema of the response body
null

allauth.WebAuthnAuthenticator

A WebAuthn authenticator.

{
    "data": null,
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "$ref": "#/components/schemas/allauth.WebAuthnAuthenticator"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.WebAuthnCreationOptionsResponse

WebAuthn credential creation options.

{
    "data": null,
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "$ref": "#/components/schemas/allauth.WebAuthnCredentialCreationOptions"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

allauth.WebAuthnRequestOptionsResponse

WebAuthn credential request options.

{
    "data": null,
    "status": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "data": {
            "$ref": "#/components/schemas/allauth.WebAuthnCredentialRequestOptions"
        },
        "status": {
            "$ref": "#/components/schemas/allauth.StatusOK"
        }
    },
    "required": [
        "status",
        "data"
    ],
    "type": "object"
}

Common parameters

This section describes common parameters that are reused across operations.

allauth.EmailVerificationKey

Name In Type Default Nullable Description
X-Email-Verification-Key header string No

allauth.PasswordLess

Name In Type Default Nullable Description
passwordless query boolean No

allauth.PasswordResetKey

Name In Type Default Nullable Description
X-Password-Reset-Key header string No

Security schemes

Name Type Scheme Description
basicAuth http basic
cookieAuth apiKey
oauth2 oauth2
tokenAuth apiKey Token-based authentication with required prefix "Token"

More documentation

More information about InvenTree in the official docs


For more information: https://docs.inventree.org