---
title: "Create a full routing input material for a quote part line item. The material is added to this line's routing only; the item's own routing is not changed."
method: POST
path: "/api/quotes/{quoteId}/part-line-items/{lineItemId}/routing/{routingId}/input-materials"
tags: ["Quote Part Line Item Full Routing"]
---

# Create a full routing input material for a quote part line item. The material is added to this line's routing only; the item's own routing is not changed.

`POST /api/quotes/{quoteId}/part-line-items/{lineItemId}/routing/{routingId}/input-materials`

## Request

- Base URL: `https://api.fulcrumpro.com`
- URL: `https://api.fulcrumpro.com/api/quotes/{quoteId}/part-line-items/{lineItemId}/routing/{routingId}/input-materials`
- Auth: none declared

## Path parameters

- `quoteId` string, required
- `lineItemId` string, required
- `routingId` string, required

## Request body

- ItemRoutingInputMaterialCreateDto: Create an input material for routing
  - `materialId` string, required: The material id to be added. Please reference /api/materials endpoint.
  - `costing` 'fullCost' | 'usageBased', required: Specifies the costing of the material.
  - `nestings` ItemRoutingInputMaterialNestingCreateDto[], nullable: Nestings associated to this material indicating bounding box dimensions and production quantities. The estimated material cost is taken from one nesting (see `useForEstimatedCosting`); with no nesting, the material costs zero.
    - `d2` number, double, required: Length of the nest's bounding box, in the material's `dimensionUnits`.
    - `d3` number, double, required: Width of the nest's bounding box, in the material's `dimensionUnits`. Still required (greater than zero) for a `Linear` material, but not used to cost it.
    - `produces` integer, required: The quantity produced, given the bounding box dimensions (D2 x D3). Each part is costed at the material weight of the bounding box (D2 x D3 for `Planar`, D2 for `Linear`) divided by this quantity.
    - `useForEstimatedCosting` boolean: Indicates if this nesting record will be used for estimated costing. A nesting generated by applying a nest to a quote takes precedence over this flag. When neither applies, the nesting with the largest `produces` not exceeding the quantity being costed is used, or the smallest `produces` when every nesting exceeds it. NOTE: Only one nesting record for a material can have this value set to true.
  - `routingStepId` string, nullable: The routing step id. This value should be the Id of an operation on the routing being edited, as returned by that routing's operations list (for example items/{itemId}/routing/operations/list, or the sales-order part line item routing's operations/list).

## Response `200`

An input material was created on the line item's routing

- CreatedResponseDto: Response for a created record
  - `id` string, required: The id of the created record

## Other responses

- `400`: Validation issue with input
- `404`: The quote, material or routing was not found

## Changes

- **2026-10-21** `b368bf25d108`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/fulcrumpro/apis/fulcrum-publicapi/changes/api/quotes/:quoteId/part-line-items/:lineItemId/routing/:routingId/input-materials/post.md)

---

[API](https://skmtc.dev/fulcrumpro/apis/fulcrum-publicapi.md) - [All operations](https://skmtc.dev/fulcrumpro/apis/fulcrum-publicapi/llms.txt) - [OpenAPI document](https://skmtc.dev/fulcrumpro/apis/fulcrum-publicapi/revisions/c9e6f41852d1?raw)
