curl -X POST "https://api.scanova.io/bulk-operation/validate/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-F "category=vcard" \
-F "file=@vcard-batch.csv"
{
"is_valid": true,
"validation_errors": [],
"validation_warnings": [],
"file_info": { "rows": 500, "columns": ["qr code id", "name", "phone"] },
"message": "File is valid."
}
Bulk Operations
Validate a bulk operation file
POST /bulk-operation/validate/
POST
/
bulk-operation
/
validate
/
curl -X POST "https://api.scanova.io/bulk-operation/validate/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-F "category=vcard" \
-F "file=@vcard-batch.csv"
{
"is_valid": true,
"validation_errors": [],
"validation_warnings": [],
"file_info": { "rows": 500, "columns": ["qr code id", "name", "phone"] },
"message": "File is valid."
}
Dry-run validates an uploaded sheet against a category’s schema, on the Management API host (
Nothing is created by this call — no
api.scanova.io), authenticated with your raw Management API key.
POST https://api.scanova.io/bulk-operation/validate/
Authorization: 401f7ac837da42b97f613d789819ff93537bee6a
file
required
The sheet to validate (CSV or XLSX), typically a filled-in copy of a sample file.
string
required
The QR category slug the sheet is meant for, max 100 characters.
curl -X POST "https://api.scanova.io/bulk-operation/validate/" \
-H "Authorization: 401f7ac837da42b97f613d789819ff93537bee6a" \
-F "category=vcard" \
-F "file=@vcard-batch.csv"
{
"is_valid": true,
"validation_errors": [],
"validation_warnings": [],
"file_info": { "rows": 500, "columns": ["qr code id", "name", "phone"] },
"message": "File is valid."
}
BulkOperation record, no QR Codes. Use it to surface column/row errors before spending a Bulk-generate QR Codes call. 200 with is_valid: true on success; 400 with is_valid: false and populated validation_errors otherwise.
Related
- Download a sample file — the template this sheet should be filled from.
- Bulk-generate QR Codes — the real run, once validation passes.
- Management API overview — the auth scheme and quota rules that apply to this endpoint.
Authorizations
Send your Management API key as the raw value of the Authorization header — no "Bearer " or "Token " prefix, and no other characters. Example: Authorization: 401f7ac837da42b97f613d789819ff93537bee6a. A header containing more than one space-separated part is rejected outright. Requests also require the request's Host header to be the management API host (e.g. api.scanova.io) — the same key sent to the regular API host will not authenticate.
Response
File is valid.
Was this page helpful?