> ## Documentation Index
> Fetch the complete documentation index at: https://docs.winedirectfulfillment.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Creates a Bom Product



## OpenAPI

````yaml /openapi.json post /api/v1/Products/Skus/Bom
openapi: 3.0.4
info:
  title: WineDirect Fulfillment API Gateway UAT
  description: >-
    <i>Provides access to the Fulfillment system.</i><h2><a target="_blank"
    href='https://portal.wd-fs.com/administration/api-help'>Detailed
    Documentation</a></h2><h3>From your code:</h3><p> To use any of the
    endpoints, get the <b>Bearer Token</b> from the <b>AccessToken</b> endpoint,
    then pass that as a <b>HttpHeader</b> called <b>Authorization</b> like this
    on all calls.<br><pre>(C#)   request.AddParameter("Authorization", token, 
    ParameterType.HttpHeader);</pre><h3>From a browser:</h3><p>Press the
    <b>Authorize</b> button and enter the <b>Bearer Token</b> from the
    <b>AccessToken</b> endpoint.</p>
  version: '1.0'
servers: []
security:
  - Bearer: []
paths:
  /api/v1/Products/Skus/Bom:
    post:
      tags:
        - Products
      summary: Creates a Bom Product
      requestBody:
        description: The product to create
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateBomRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StringServiceResult'
components:
  schemas:
    CreateBomRequest:
      required:
        - itemTypeCode
        - lineItems
        - sku
        - srp
        - supplierId
      type: object
      properties:
        supplierId:
          minLength: 2
          type: string
          description: SupplierId is the unique ID for the owner of items in the system
        itemTypeCode:
          minLength: 1
          type: string
          description: "The ItemType (Code)\r\n            \r\n     GSET - Gift Set\r\n     PTO - Pick to Order"
        sku:
          minLength: 1
          type: string
          description: >-
            The SKU of the customer for the GSET or PTO. This is not the SKU of
            the items in the collection. Add that in the LineItems field
        srp:
          type: number
          description: Suggested Retail Price
          format: double
        description:
          maxLength: 150
          type: string
          description: Description of the BOM SKU
          nullable: true
        lineItems:
          type: array
          items:
            $ref: '#/components/schemas/BomLineItem'
          description: The items that go into the GSET or PTO
        sellerAccountNumbers:
          type: array
          items:
            type: string
          description: A list of Seller account number who can sell this
          nullable: true
      additionalProperties: false
      description: Create a BOM (Bill of Materials) SKU. The Item Types include "GSET,PTO"
    StringServiceResult:
      type: object
      properties:
        isSuccess:
          type: boolean
          description: >-
            Was the request successful. If not, the message will have more
            information.
        message:
          type: string
          description: Any error message
          nullable: true
        payload:
          type: string
          description: The payload object of the response
          nullable: true
      additionalProperties: false
      description: Generic container for all service responses
    BomLineItem:
      required:
        - qty
        - sku
      type: object
      properties:
        sku:
          minLength: 1
          type: string
          description: >-
            The SKU, of the item in the GSET or PTO of the customer. This could
            include a Wine Bottle SKU
        qty:
          type: integer
          description: The Qty to pack into this GSET or PTO
          format: int32
      additionalProperties: false
  securitySchemes:
    Bearer:
      type: apiKey
      description: 'Enter the Bearer AccessToken;  Example: ''Bearer 12345abcdef'''
      name: Authorization
      in: header

````