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

# Inventory transfer search



## OpenAPI

````yaml shipments.openapi post /shipments/inventory-transfer/search
openapi: 3.0.1
info:
  contact:
    email: support@fabric.inc
    name: fabric Orders team
  description: >-
    fabric **Shipments** API is a multi-tenant service that enables you to
    manage shipments for existing 'Allocations.' Shipments serve as records of
    the locations from which an order was fulfilled. Typical user of fabric
    Shipments service is a Warehouse management service or Point of Sale
    service. <p> **Note**: Shipments API relies on the Allocation service to
    send allocation details to external merchant systems after an order is
    placed. Allocation is the prerequisite for using Shipments API.</p>
  license:
    name: fabric API License
    url: https://fabric.inc/api-license
  termsOfService: https://fabric.inc/terms-of-use
  title: Orders - Shipments API
  version: 3.0.0
  x-audience: external-public
servers:
  - description: Production
    url: https://api.fabric.inc/v3
security:
  - authorization: []
tags:
  - description: >-
      fabric **Shipments** API is a multi-tenant service that enables you to
      manage shipments for existing 'Allocations.' Shipments serve as records of
      the locations from which an order was fulfilled. Typical user of fabric
      Shipments service is a Warehouse management service or Point of Sale
      service. <p> **Note**: Shipments API relies on the Allocation service to
      send allocation details to external merchant systems after an order is
      placed. Allocation is the prerequisite for using Shipments API.</p>
    name: Shipments
externalDocs:
  description: Find out more about fabric Orders (also called OMS)
  url: https://developer.fabric.inc/v3/docs/orders-overview
paths:
  /shipments/inventory-transfer/search:
    post:
      tags:
        - transfer-shipment-controller
      operationId: search
      parameters:
        - in: query
          name: fetchOnlyIds
          required: false
          schema:
            default: false
            type: boolean
        - $ref: '#/components/parameters/xFabricTenantId'
        - $ref: '#/components/parameters/xFabricChannelId'
        - $ref: '#/components/parameters/xFabricRequestId'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/transferShipmentsSearchRequest'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/searchResponse'
          description: OK
          headers:
            x-fabric-request-id:
              $ref: '#/components/headers/xFabricRequestIdResponseHeader'
        '400':
          content:
            application/json:
              example:
                errors:
                  - message: Invalid request
                    type: CLIENT_ERROR
                message: Bad request
                type: CLIENT_ERROR
              schema:
                $ref: '#/components/schemas/errorResponse'
          description: Bad request
          headers:
            x-fabric-request-id:
              $ref: '#/components/headers/xFabricRequestIdResponseHeader'
        '401':
          content:
            application/json:
              example:
                message: Unauthorized request
                type: CLIENT_ERROR
              schema:
                $ref: '#/components/schemas/errorResponse'
          description: Unauthorized
          headers:
            x-fabric-request-id:
              $ref: '#/components/headers/xFabricRequestIdResponseHeader'
        '500':
          content:
            application/json:
              example:
                message: Internal server error
                type: SERVER_ERROR
              schema:
                $ref: '#/components/schemas/errorResponse'
          description: Internal server error
          headers:
            x-fabric-request-id:
              $ref: '#/components/headers/xFabricRequestIdResponseHeader'
components:
  parameters:
    xFabricTenantId:
      description: >-
        A header used by fabric to identify the tenant making the request. You
        must include tenant id in the authentication header for an API request
        to access any of fabric’s endpoints. You can retrieve the tenant id ,
        which is also called account id, from
        [Copilot](/v3/platform/settings/account-details/getting-the-account-id).
        This header is required.
      example: 5f328bf0b5f328bf0b5f328b
      in: header
      name: x-fabric-tenant-id
      required: true
      schema:
        type: string
    xFabricChannelId:
      description: >-
        x-fabric-channel-id identifies the sales channel where the API request
        is being made; primarily for multichannel use cases. The channel ids are
        12 corresponding to US and 13 corresponding to Canada. The default
        channel id is 12. This field is required.
      example: '12'
      in: header
      name: x-fabric-channel-id
      required: true
      schema:
        type: string
    xFabricRequestId:
      description: Unique request ID
      example: 263e731c-45c8-11ed-b878-0242ac120002
      in: header
      name: x-fabric-request-id
      required: false
      schema:
        type: string
  schemas:
    transferShipmentsSearchRequest:
      description: >-
        An object containing the sort and filter criteria for a transfer
        shipment search.
      example:
        filters:
          - condition: EQ
            field: transferShipment.shipmentNum
            value: Shipment_112255
          - condition: IN
            field: transferShipment.cartons.cartonNum
            values:
              - Tracking_*
        sort: '-transferShipment.shipDate'
      properties:
        filters:
          items:
            oneOf:
              - $ref: '#/components/schemas/valueSearchFilter'
              - $ref: '#/components/schemas/valuesSearchFilter'
          maxItems: 50
          minItems: 1
          type: array
        sort:
          default: '-transferShipment.shipDate'
          description: >-
            Property name on which response needed to be sorted. <p> **Note**:
            `-` refers to descending and `+` refers to ascending order
          example: '-transferShipment.shipDate'
          pattern: >-
            (^[+-]transferShipment\.[a-zA-Z.\-_]*)(,([+-]transferShipment\.[a-zA-Z.\-_]*)){0,}
          type: string
      required:
        - filters
      type: object
    searchResponse:
      description: The search response.
      properties:
        data:
          items:
            $ref: '#/components/schemas/transferShipmentResponse'
          type: array
        pagination:
          $ref: '#/components/schemas/pagination'
        stats:
          description: A list of stats.
          items:
            description: The stats details.
            type: string
          type: array
      type: object
    errorResponse:
      description: Error response
      properties:
        errors:
          description: Errors
          items:
            $ref: '#/components/schemas/errorResponse'
          type: array
        message:
          description: Error message
          example: Bad request
          type: string
        type:
          description: Error type
          example: CLIENT_ERROR
          type: string
      type: object
    valueSearchFilter:
      allOf:
        - $ref: '#/components/schemas/shipmentSearchFilter'
        - properties:
            value:
              description: Search criteria using a single value
              example: ORDER_CREATE
              oneOf:
                - description: Target record's non-numeric identifier
                  example: ORDER_CREATE
                  type: string
                - description: Target record's numeric identifier
                  example: 112233
                  format: int64
                  type: number
                - description: Target record's numeric identifier
                  example: 1122.33
                  format: double
                  type: number
          type: object
      description: >-
        The criteria used to find shipments by a single value. Condition between
        `field` and `value` is anything except IN and NIN when
        `valueSearchFilter` is used.
      required:
        - condition
        - field
      type: object
    valuesSearchFilter:
      allOf:
        - $ref: '#/components/schemas/shipmentSearchFilter'
        - properties:
            values:
              items:
                description: Search criteria using multiple values
                example: ORDER_CREATE
                oneOf:
                  - description: Target record's non-numeric identifier
                    example: ORDER_CREATE
                    type: string
                  - description: Target record's numeric identifier
                    example: 112233
                    format: int64
                    type: number
                  - description: Target record's numeric identifier
                    example: 1122.33
                    format: double
                    type: number
              maxItems: 25
              minItems: 1
              type: array
          type: object
      description: >-
        The search criteria when using multiple values. Condition between
        `field` and `values` is either IN or NIN when `valuesSearchFilter` is
        used.
      required:
        - condition
        - field
      type: object
    transferShipmentResponse:
      description: >-
        An object containing information and properties of the transfer shipment
        response.
      properties:
        attributes:
          additionalProperties:
            description: Attributes to save any additional info
            example:
              attribute1: value
            type: object
          description: Attributes to save any additional info
          example:
            attribute1: value
          type: object
        auditLogs:
          description: Audit logs list
          items:
            $ref: '#/components/schemas/shipmentAuditLog'
          type: array
        cartons:
          description: Carton list
          items:
            $ref: '#/components/schemas/transferShipmentCarton'
          type: array
        createdAt:
          description: Created date
          example: '2022-06-06T07:58:30.996Z'
          format: date-time
          type: string
        deliveredAt:
          description: Delivered date of shipment
          example: '2022-06-06T07:58:30.996Z'
          format: date-time
          type: string
        masterTrackingNumber:
          description: Master tracking number
          example: TX112345678
          type: string
        poNumber:
          description: Optional purchase order number
          example: '1125'
          type: string
        receivedAt:
          description: Received date of shipment
          example: '2022-06-06T07:58:30.996Z'
          format: date-time
          type: string
        recipient:
          description: Recipient list
          items:
            $ref: '#/components/schemas/shipmentRecipient'
          type: array
        shipFrom:
          $ref: '#/components/schemas/transferShipFrom'
        shipTo:
          $ref: '#/components/schemas/transferShipTo'
        shipmentId:
          description: Shipment's autogenerated unique id
          example: 627963716b19511e8a3a631b
          type: string
        shipmentNumber:
          description: Shipment's unique identification number
          example: '78974156816152'
          type: string
        shippedAt:
          description: Ship date
          example: '2022-06-06T07:58:30.996Z'
          format: date-time
          type: string
        statusCode:
          description: Transfer Shipment Status
          enum:
            - TRANSFER_SHIPMENT_PACKED
            - TRANSFER_SHIPMENT_SENT
            - TRANSFER_SHIPMENT_CREATED
            - TRANSFER_SHIPMENT_DRAFT
            - TRANSFER_SHIPMENT_DELIVERED
            - TRANSFER_SHIPMENT_RECEIVED
            - TRANSFER_SHIPMENT_STOCKED
            - TRANSFER_SHIPMENT_CANCELLED
            - TRANSFER_SHIPMENT_ERROR
          example: TRANSFER_SHIPMENT_CREATED
          type: string
        stockReleaseTimeStamp:
          description: Stock release time stamp date
          example: '2022-06-06T07:58:30.996Z'
          format: date-time
          type: string
        subtype:
          description: Shipment subtype
          enum:
            - COD
          example: COD
          type: string
        totalCartons:
          description: Total number of cartons
          example: 2
          format: int64
          type: integer
        transferId:
          description: Transfer ID for this shipment
          example: '112345678912340'
          type: string
        transferNumber:
          description: Transfer number for this shipment
          example: '112345678912340'
          type: string
        type:
          description: Shipment types
          enum:
            - STANDARD
            - RESHIP
            - RETURN
            - SCRATCH
            - PENDING_RETURN
            - PICKUP
            - TRANSFER
          example: TRANSFER
          type: string
        updatedAt:
          description: Updated date
          example: '2022-06-06T07:58:30.996Z'
          format: date-time
          type: string
        vendorId:
          description: Vendor ID
          example: '56'
          type: string
      required:
        - shipFrom
        - shipTo
        - shipmentNumber
        - transferId
        - transferNumber
      type: object
    pagination:
      description: Pagination response
      properties:
        count:
          description: Total number of search results
          example: 1000
          format: int32
          type: integer
        limit:
          default: 10
          description: Maximum number of records per page.
          example: 10
          format: int32
          maximum: 100
          minimum: 1
          type: integer
        offset:
          default: 0
          description: >-
            The number of records to skip before returning all records. For
            example, `offset=20, limit=10` returns records 21-30.
          example: 1
          format: int32
          minimum: 0
          type: integer
      type: object
    shipmentSearchFilter:
      description: >-
        Criteria to find shipments. To search using a single value, the
        `valueSearchFilter` is considered. To search using multiple values,
        `valuesSearchFilter` is considered.
      discriminator:
        mapping:
          EQ:
            $ref: '#/components/schemas/valueSearchFilter'
          GT:
            $ref: '#/components/schemas/valueSearchFilter'
          GTE:
            $ref: '#/components/schemas/valueSearchFilter'
          IN:
            $ref: '#/components/schemas/valuesSearchFilter'
          LT:
            $ref: '#/components/schemas/valueSearchFilter'
          LTE:
            $ref: '#/components/schemas/valueSearchFilter'
          NEQ:
            $ref: '#/components/schemas/valueSearchFilter'
          NIN:
            $ref: '#/components/schemas/valuesSearchFilter'
        propertyName: condition
      properties:
        condition:
          default: EQ
          description: >-
            Filter conditions. EQ (Equal to): Searches for exact match. NEQ (Not
            equal to): Searches by excluding the specified value. IN: Search for
            multiple values. NIN (Not IN): Excludes the specified values in the
            search. LT (Less than): Searches for values that are less than the
            specified value. GT (Greater than):  Search for values that are
            greater than the specified value. LTE (Less than or equal to):
            Searches for values that are less than or equal to the specified
            value. GTE (Greater than or equal to): Searches for values that are
            greater than or equal to the specified value.
          enum:
            - EQ
            - NEQ
            - IN
            - NIN
            - LT
            - GT
            - LTE
            - GTE
          example: LT
          type: string
        field:
          description: Field name
          example: shipment.shipmentNum
          pattern: ^shipment\.[a-zA-Z.\-_]*
          type: string
        group:
          default: Default
          description: Group name
          example: GroupA
          type: string
      required:
        - condition
        - field
      type: object
    shipmentAuditLog:
      description: Details for updating shipment
      properties:
        auditId:
          description: System-generated audit ID (UUID format)
          example: a05b72dc-78d8-4ea4-90fc-2fe6a1fe1111
          type: string
        auditType:
          description: Audit type such as cancel, return, etc.
          example: CANCEL
          type: string
        auditedAt:
          description: Audit time (UTC)
          example: '2023-03-12T09:24:54.804Z'
          format: date-time
          type: string
        employeeId:
          description: Employee (ID or name) who made the last update
          example: '6227'
          type: string
        lineItemId:
          description: >-
            Merchant-defined unique identifier for each item in an order. When
            omitted, fabric will generate it during order creation, in UUID
            format.
          example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
          type: string
        note:
          description: Additional info, if any
          example: Note
          type: string
        reasonCode:
          description: Merchant-defined reason code, varies from merchant to merchant
          example: Scratched item
          type: string
        source:
          description: >-
            Merchant-defined source from where the update was initiated. There
            are no predefined values; possible values could be Customer Service
            Representative (CSR), Point-of-Sale (POS), etc.
          example: POS
          type: string
        subReasonCode:
          description: >-
            Merchant-defined sub reason code; provides more clarity to audit
            reason
          example: Scratched item
          type: string
        updatedFields:
          description: Audit log for change history
          items:
            $ref: '#/components/schemas/orderAuditLogUpdatedField'
          type: array
      type: object
    transferShipmentCarton:
      description: >-
        An object containing information and properties of the transfer shipment
        carton.
      properties:
        attributes:
          additionalProperties:
            description: Attributes to save any additional info
            example:
              attribute1: value
            type: object
          description: Attributes to save any additional info
          example:
            attribute1: value
          type: object
        cartonNumber:
          description: Carton number
          example: '1'
          type: string
        cartonType:
          description: Carton type
          example: Package
          type: string
        estimatedDeliveryDate:
          description: Estimated delivery date
          example: '2022-05-26T07:58:30.996Z'
          format: date-time
          type: string
        estimatedShipmentDate:
          description: Estimated ship date
          example: '2022-05-25T07:58:30.996Z'
          format: date-time
          type: string
        items:
          description: List of item to be shipped
          items:
            $ref: '#/components/schemas/transferShipmentItem'
          type: array
        promisedDeliveryDate:
          description: Promised delivery date
          example: '2022-05-26T07:58:30.996Z'
          format: date-time
          type: string
        shipmentCarrier:
          description: Shipment carrier
          example: FEDEX
          type: string
        shipmentMethod:
          description: Shipment method
          example: ground
          type: string
        tracking:
          description: Tracking detail list
          items:
            $ref: '#/components/schemas/trackingResource'
          type: array
        trackingNumber:
          description: Tracking number
          example: 1Z999AA10123456784
          type: string
        trackingURL:
          description: Tracking URL
          example: https://example.com/tracking
          type: string
        weight:
          description: Weight
          example: 500 gram
          type: string
      type: object
    shipmentRecipient:
      description: Shipment recipient details
      properties:
        email:
          description: Recipient's email
          example: support@example.inc
          type: string
        name:
          $ref: '#/components/schemas/orderContactName'
        phone:
          $ref: '#/components/schemas/orderContactPhone'
      type: object
    transferShipFrom:
      description: >-
        An object containing information and properties for the transfers ship
        from location.
      properties:
        locationName:
          description: Location name
          example: Store1
          type: string
        locationNumber:
          description: Location number
          example: WH334
          type: string
        locationType:
          description: Location type
          example: STORE
          type: string
        shipFromAddress:
          $ref: '#/components/schemas/orderAddress'
      required:
        - locationNumber
      type: object
    transferShipTo:
      description: >-
        An object containing information and properties for the transfers ship
        to location.
      properties:
        locationName:
          description: Location name
          example: Store1
          type: string
        locationNumber:
          description: Location number
          example: WH334
          type: string
        locationType:
          description: Location type
          example: STORE
          type: string
        shipToAddress:
          $ref: '#/components/schemas/shipmentShipToAddress'
        shipToId:
          description: Used to link item with it's shipping address in shipment
          example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
          type: string
      required:
        - locationNumber
      type: object
    orderAuditLogUpdatedField:
      description: Audit log for change history
      properties:
        fieldName:
          description: Field or property name that was updated
          example: UOM
          type: string
        fieldOriginalValue:
          description: Original value of `fieldName` before it was updated
          example: PK
          type: string
      type: object
    transferShipmentItem:
      description: >-
        An object containing information and properties of the transfer shipment
        item.
      properties:
        adjustments:
          description: Adjustment
          items:
            $ref: '#/components/schemas/transferItemAdjustment'
          type: array
        attributes:
          additionalProperties:
            description: Customized attributes
            example:
              attribute1: value
            type: object
          description: Customized attributes
          example:
            attribute1: value
          type: object
        channelId:
          description: Channel id
          example: '12'
          type: string
        deliveredQuantity:
          default: 0
          description: Delivered quantity
          example: 2
          format: int32
          type: integer
        itemId:
          description: Item id
          example: '100023'
          type: string
        lineItemId:
          description: Line item ID
          example: '1'
          type: string
        packedQuantity:
          default: 0
          description: Packed quantity
          example: 2
          format: int32
          type: integer
        quantityType:
          description: Transfer quantity type
          enum:
            - INCREMENT
            - DECREMENT
            - ABSOLUTE
          type: string
        receivedQuantity:
          default: 0
          description: Received quantity
          example: 2
          format: int32
          type: integer
        segment:
          description: Segment
          type: string
        shipmentLineItemId:
          description: System generated shipment line item ID
          example: b03b72dc-78d8-4ea4-90fc-2fe6a1fe6569
          type: string
        shippedQuantity:
          default: 0
          description: Shipped quantity
          example: 2
          format: int32
          type: integer
        sku:
          description: Sku
          example: SKU0023
          type: string
        stockedQuantity:
          default: 0
          description: Stocked quantity
          example: 2
          format: int32
          type: integer
        uom:
          description: Unit of measurement
          example: EA
          type: string
        vendorId:
          description: Vendor ID
          example: vend12346667
          type: string
      type: object
    trackingResource:
      description: Shipment tracking details
      properties:
        event:
          description: >-
            Shipment-specific event. Mandatory in the request body of Update
            shipment tracking - `POST /shipments/actions/update-tracking`
            endpoint
          example: picked up
          type: string
        eventId:
          description: Event ID provided by carrier
          example: 627963716b19511e8a3a631b
          type: string
        eventRecordedAt:
          description: Time event was recorded (UTC)
          example: '2019-09-30T07:58:30.996Z'
          format: date-time
          type: string
        location:
          description: Delivery location
          example: Reno, NV
          type: string
        notes:
          additionalProperties:
            description: Attributes to save any additional info
            example: '{"description":"Shipment picked up"}'
            type: string
          description: Attributes to save any additional info
          example:
            description: Shipment picked up
          type: object
        shipmentCarrier:
          description: Shipment carrier
          example: FEDEX
          type: string
      type: object
    orderContactName:
      description: Contact person's name
      properties:
        firstName:
          description: Contact person's first name
          example: Alex
          type: string
        lastName:
          description: Contact person's last name
          example: Doe
          type: string
        middleName:
          description: Contact person's middle name or initial
          example: E
          type: string
      type: object
    orderContactPhone:
      description: Contact person's phone details
      properties:
        number:
          description: Contact person's phone number
          example: 123-456-7890
          type: string
        type:
          description: Contact number type
          enum:
            - MOBILE
            - HOME
            - BUSINESS
          example: MOBILE
          type: string
      type: object
    orderAddress:
      description: Order address model
      properties:
        address1:
          description: The first address line.
          example: House No 129
          type: string
        address2:
          description: The second address line.
          example: 10 Downing Street
          type: string
        address3:
          description: The third address line.
          example: Bakers Colony
          type: string
        address4:
          description: The fourth address line.
          example: Near ABC School
          type: string
        city:
          description: City
          example: Beaumont
          type: string
        country:
          description: Country
          example: USA
          type: string
        email:
          description: A valid email address.
          example: test@example.com
          type: string
        latitude:
          description: Latitude
          example: 35.294952
          format: double
          type: number
        longitude:
          description: Longitude
          example: 32.294952
          format: double
          type: number
        name:
          $ref: '#/components/schemas/name'
        phone:
          $ref: '#/components/schemas/phone'
        postalCode:
          description: Postal code
          example: '77705'
          type: string
        state:
          description: State
          example: TX
          type: string
        type:
          description: The type of address provided. For example, home or residence.
          example: residence
          type: string
      required:
        - address1
      type: object
    shipmentShipToAddress:
      description: ShipmentShipToAddress Model
      properties:
        addressLine1:
          description: Address line 1
          example: 254 House number
          type: string
        addressLine2:
          description: Address line 2
          example: 888 Broadway
          type: string
        addressLine3:
          description: Address line 3
          example: 17th street
          type: string
        addressLine4:
          description: Address line 4
          example: Pearl
          type: string
        city:
          description: City
          example: New York
          type: string
        country:
          description: Country
          example: USA
          type: string
        latitude:
          description: Latitude
          example: 134.13413
          format: double
          type: number
        longitude:
          description: Longitude
          example: 757.0435
          format: double
          type: number
        postalCode:
          description: Postal code
          example: '1003'
          type: string
        state:
          description: State
          example: NY
          type: string
        type:
          description: The type of address that was provided.
          example: home
          type: string
      type: object
    transferItemAdjustment:
      description: An object containing all the transfer item adjustment properties.
      properties:
        adjustmentQuantity:
          default: 0
          description: The total adjustment quantity. The default value is 0.
          example: 2
          format: int32
          type: integer
        attributes:
          additionalProperties:
            description: Attributes to save any additional info
            example:
              attribute1: value
            type: object
          description: Attributes to save any additional info
          example:
            attribute1: value
          type: object
        reasonCode:
          description: The primary reason code for the item adjustment.
          example: DAMAGED
          type: string
        subReasonCode:
          description: The sub reason code for the item adjustment.
          example: DAMAGED
          type: string
      type: object
    name:
      description: Order contact name model
      properties:
        first:
          description: First name
          example: John
          type: string
        last:
          description: Last name
          example: Doe
          type: string
        middle:
          description: Middle name
          example: M
          type: string
      type: object
    phone:
      description: The contact phone number provided by the order.
      properties:
        number:
          description: Phone number
          example: '+10612345678'
          type: string
        type:
          description: The phone number type. For example, `MOBILE`, `HOME`, or `BUSINESS`.
          enum:
            - MOBILE
            - HOME
            - BUSINESS
          example: MOBILE
          type: string
      type: object
  headers:
    xFabricRequestIdResponseHeader:
      description: Unique request ID
      example: 263e731c-45c8-11ed-b878-0242ac120002
      required: false
      schema:
        type: string
  securitySchemes:
    authorization:
      bearerFormat: JWT
      scheme: bearer
      type: http

````