Skip to content

Preview an import

POST/imports/preview

Costs 2 rate-limit points · Rate limits

Check CSV text (csv) before importing it, as the bulk import page's preview and column mapping steps do: the headers, the first rows per column, a suggested column_mapping for POST /imports, and the same row checks the import runs (unknown files, SKUs or urls), without importing anything.

Read-only. Send the column_mapping you intend to import with to check those columns; without it the template order (sku, filename, external_url, data_type, link_to_product, custom_product) is checked.

Also searched aspreview csv importcheck my csvvalidate import filemap csv columns

Request body

  • csvstringRequired
    Example: sku,filename,external_url,data_type,link_to_product,custo…
  • filenameany
  • column_mappingany

Returns

  • headersarray of strings
  • sample_columnsobject
    Show 6 child attributesHide child attributes
    • skuarray of strings
    • filenamearray of strings
    • external_urlarray of strings
    • data_typearray of strings
    • link_to_productarray of strings
    • custom_productarray of strings
  • suggested_column_mappingobject
    Show 6 child attributesHide child attributes
    • skuinteger, nullable
      Example: 0
    • filenameinteger, nullable
      Example: 1
    • external_urlinteger, nullable
      Example: 2
    • data_typeinteger, nullable
      Example: 3
    • link_to_productinteger, nullable
      Example: 4
    • custom_productinteger, nullable
      Example: 5
  • validationobject
    Show 7 child attributesHide child attributes
    • total_rowsinteger, nullable
      Example: 1
    • valid_rowsinteger, nullable
      Example: 1
    • has_warningsboolean, nullable
      Example: false
    • filename_errorsarray of anys
    • variant_errorsarray of anys
    • url_errorsarray of anys
    • reference_summaryobject

Errors

401

Missing or invalid API key.

422

The request failed validation, or sent a key the action does not take (code: "unknown_parameters" with unknown and accepted). Nothing was saved.

429

Rate limited. Cost-weighted per API key, shared with API v1: a read costs 1 point, a write 2, 40 points per fixed 60-second window. Every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset (Unix time the window ends); a 429 adds Retry-After (seconds), retry_after, retryable: true and a next_step in the body. A 429 did nothing: wait retry_after seconds, then send the same request again. The budget is per key, so every tool or script using the key shares it; prefer one list call with per_page over many single reads.

Every error has the same shape: see Errors.

POST/imports/preview
curl -X POST "https://app.filemonk.io/api/v2/external/imports/preview" \
  -H "X-Auth-Token: $FILEMONK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "csv": "sku,filename,external_url,data_type,link_to_product,custom_product\nWATERCOLOUR-1,guide.pdf,,sku,yes,no\n"
  }'
Response
{
  "headers": [
    "sku",
    "filename",
    "external_url",
    "data_type",
    "link_to_product",
    "custom_product"
  ],
  "sample_columns": {
    "sku": [
      "WATERCOLOUR-1"
    ],
    "filename": [
      "guide.pdf"
    ],
    "external_url": [
      ""
    ],
    "data_type": [
      "sku"
    ],
    "link_to_product": [
      "yes"
    ],
    "custom_product": [
      "no"
    ]
  },
  "suggested_column_mapping": {
    "sku": 0,
    "filename": 1,
    "external_url": 2,
    "data_type": 3,
    "link_to_product": 4,
    "custom_product": 5
  },
  "validation": {
    "total_rows": 1,
    "valid_rows": 1,
    "has_warnings": false,
    "filename_errors": [],
    "variant_errors": [],
    "url_errors": [],
    "reference_summary": {}
  }
}