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

# Cleanse a previously uploaded listings batch

> Validates headers, normalizes rows, converts currency, and stores the cleansed batch back in cache.



## OpenAPI

````yaml https://api.seminode.com/v1/docs/public post /listings/cleanse
openapi: 3.0.1
info:
  contact: {}
  description: Standard HTTP Basic authentication (username & password).
  title: Seminode API
  version: '1.0'
servers:
  - url: https://api.seminode.com/v1
security: []
tags: []
paths:
  /listings/cleanse:
    post:
      tags:
        - Listings
      summary: Cleanse a previously uploaded listings batch
      description: >-
        Validates headers, normalizes rows, converts currency, and stores the
        cleansed batch back in cache.
      parameters:
        - description: Attempt manufacturer name matching
          in: query
          name: mfr_match
          schema:
            type: boolean
        - description: Convert unit prices to USD from this ISO-4217 code
          in: query
          name: currency_code
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/bom.CleanseRequest'
        description: Batch-ID and final header order
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bom.CleanseResponse'
          description: cleansed rows preview
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/utils.ErrorResponse'
          description: bad input or validation errors
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/utils.ErrorResponse'
          description: batch ID not found in cache
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/utils.ErrorResponse'
          description: server error while cleansing
        default:
          description: unexpected error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/utils.ErrorResponse'
      security:
        - LoginAuth: []
components:
  schemas:
    bom.CleanseRequest:
      properties:
        batch_id:
          type: string
        dtag_headers:
          items:
            type: string
          type: array
        headers:
          items:
            type: string
          type: array
      type: object
    bom.CleanseResponse:
      properties:
        dtag_error:
          type: string
        header_errors:
          items:
            type: string
          type: array
        lines:
          items:
            $ref: '#/components/schemas/listings.ListingContent'
          type: array
        page_count:
          type: integer
      type: object
    utils.ErrorResponse:
      properties:
        error:
          type: string
      type: object
    listings.ListingContent:
      properties:
        attributes:
          allOf:
            - $ref: '#/components/schemas/listings.ListingAttributes'
          description: Meta Attribibutes
          type: object
        batch_id:
          description: Batch ID (Optional)
          type: string
        company:
          description: 'Default: Publish Company Name'
          type: string
        contact:
          $ref: '#/components/schemas/listings.ListingContact'
        encrypted:
          $ref: '#/components/schemas/listings.SecureField'
        errors:
          additionalProperties:
            type: string
          description: Error field for parsing
          type: object
        image_url:
          type: string
        internal_no:
          description: Internal Number (Optional)
          type: string
        material_no:
          description: Mandatory upload fields
          type: string
        mfr:
          description: Manufacturer (Required)
          type: string
        qty:
          description: Quantity (Required)
          type: integer
        timing:
          allOf:
            - $ref: '#/components/schemas/listings.ListingTiming'
          description: Timing (Optional)
          type: object
        type:
          description: '"supply" or "demand"'
          type: string
        unit_price:
          description: Unit Price (Required)
          type: number
      type: object
    listings.ListingAttributes:
      properties:
        coo:
          type: string
        currency:
          type: string
        custom:
          additionalProperties: true
          description: user-defined
          type: object
        date_code:
          type: string
        description:
          type: string
        eccn:
          type: string
        lot_no:
          type: string
        moq:
          type: integer
        mpq:
          type: integer
        packaging:
          type: string
      type: object
    listings.ListingContact:
      properties:
        methods:
          items:
            type: string
          type: array
        reply_url:
          type: string
      type: object
    listings.SecureField:
      properties:
        ciphertext:
          type: string
        payload:
          additionalProperties: true
          type: object
      type: object
    listings.ListingTiming:
      properties:
        expiry:
          type: integer
        lead_time:
          type: string
        lead_time_int:
          type: integer
        required_date:
          type: integer
      type: object
  securitySchemes:
    LoginAuth:
      scheme: basic
      type: http

````