UiPath Documentation
industry-department-solutions
latest
false
  • Overview
    • Introduction
    • Getting Started
    • API Guide
    • Customizations
    • Data Onboarding Checklist
  • API Resources
UiPath logo, featuring letters U and I in white

Supply Chain & Retail Solutions API guide

Last updated Apr 16, 2026

API Guide

Definitions

These descriptions are designed to support correct usage of the API. For further assistance or questions, please submit a support ticket.

NameDescriptionRequired
solutionNameA unique identifier for the rollout or solution. Example: B2C_OOTB.Yes
prefixA unique prefix applied to all generated object names to support naming convention.Yes
suffixA unique suffix appended to all generated object names for differentiation.Yes
appNameThe application for which the objects are being deployed.Yes
objectNameThe base object name. Exact object name matching is currently enforced during schema validation.Yes
targetSchemaNameThe schema within the data warehouse where the tables and data will be stored. Example: STAGE.Yes
operationTypeThe type of ingest operation the API should perform. Supported values: UPSERT (insert or update based on primary key) or APPEND (insert only, similar to an insert operation).Yes

Operation Types

The API supports two operation types for data ingestion:

UPSERT

  • Behavior: Insert new records or update existing records based on primary key match
  • Use case: Maintaining up-to-date records where data may change over time
  • Example: Updating product information, customer details, or pricing data

APPEND

  • Behavior: Insert new records only, does not update existing records
  • Use case: Appending new data without modifying historical records
  • Example: Transaction logs, event data, or time-series data where records should not be modified

API Limits

The API supports ingestion of up to 500 rows per request. When ingesting larger datasets, ensure your data is split into appropriately sized batches. Rate limits are 50 requests per second.

Error Codes

Each validation failure returns a structured error response containing an error code, category, and message. Codes follow the pattern DI_E_XXXXX (errors) or DI_W_XXXXX (warnings, non-fatal).

Resolution Guidance by Category

CategoryWhat It MeansConsumer Action
BUSINESSData value violates a schema-defined business ruleFix the data value (correct format, valid enum, within range, etc.)
SYSTEM_DATAData integrity issue (missing PK, duplicate, null PK)Fix the data (provide PK, remove duplicates, fill required keys)
SYSTEM_SCHEMAData type doesn't match the attribute's schema definitionFix the data type (send integer not string, correct JSON type, etc.)

Business-Level Validation Errors — Category: BUSINESS

These come from schema-defined validation rules configured per attribute (required, range, enum, length, date/timestamp format).

#Error CodeConstant NameWhen TriggeredMessage Template
1DI_E_23N01BUSINESS_REQUIRED_FIELDrequired validator: field absent from payloadfield is required
2DI_E_23502BUSINESS_NULL_VALUEnonNull validator: value is nullcannot be null
3DI_E_23E01BUSINESS_EMPTY_VALUEnonNull validator: string is blank/emptycannot be empty
4DI_E_22026BUSINESS_MIN_LENGTHminLength validator: string too shortlength must be >= {min} (got {actual})
5DI_E_22001BUSINESS_MAX_LENGTHmaxLength validator: string too longlength must be <= {max} (got {actual})
6DI_E_22003BUSINESS_RANGE_BELOW_MINrange validator: value below minmust be >= {min} (got {actual})
7DI_E_22003BUSINESS_RANGE_ABOVE_MAXrange validator: value above maxmust be <= {max} (got {actual})
8DI_E_22P02BUSINESS_RANGE_NOT_A_NUMBERrange validator: value not numericnot a valid number
9DI_E_22023BUSINESS_INVALID_ENUMenum validator: value not in allowed setmust be one of {values} (got '{actual}')
10DI_E_22007BUSINESS_INVALID_DATE_FORMATdateTimeFormat validator: unparseable dateinvalid date format (expected: {format})
11DI_E_22008BUSINESS_INVALID_TIMESTAMP_FORMATtimestampFormat validator: unparseable timestampinvalid timestamp format (expected: {format}, got: {value})
12DI_E_22008BUSINESS_INVALID_EPOCHtimestampFormat validator: negative epochinvalid epoch timestamp (must be positive)

System-Level Data Validation Errors — Category: SYSTEM_DATA

These come from data integrity checks (primary key null, duplicate, missing attribute, foreign key, unique key).

#Error CodeConstant NameWhen TriggeredMessage Template
13DI_E_23P01SYSTEM_DATA_PK_NULLPK attribute value is null in a rowprimary key cannot be null
14DI_E_23505SYSTEM_DATA_DUPLICATE_PK2+ rows in same batch share a PK valueduplicate primary key ({pk_columns})
15DI_E_22I01SYSTEM_DATA_INVALID_INTEGERValue not parseable as integermust be an integer (got '{value}')
16DI_E_22N01SYSTEM_DATA_INVALID_NUMBERValue not parseable as number/floatmust be a number (got '{value}')
17DI_E_22B01SYSTEM_DATA_INVALID_BOOLEANValue not parseable as booleanmust be a boolean (got '{value}')
18DI_E_22T01SYSTEM_DATA_TIMESTAMP_EMPTYTimestamp field is empty stringinvalid timestamp (empty string)
19DI_E_22P03SYSTEM_DATA_PRECISION_EMPTY_VALUEEmpty/null value during precision checkvalue is empty or null for precision/scale validation
20DI_E_22P04SYSTEM_DATA_PK_MISSING_COLUMNPrecision/scale validation errorPrecision/Scale validation error

System-Level Schema Validation Errors — Category: SYSTEM_SCHEMA

These come from data type mismatches and schema structural checks.

#Error CodeConstant NameWhen TriggeredMessage Template
21DI_E_42703SYSTEM_SCHEMA_UNDEFINED_COLUMNAttribute in data row not found in schemacolumn not found in schema
22DI_E_22T02SYSTEM_SCHEMA_TIMESTAMP_WRONG_TYPETimestamp field is wrong JSON typemust be a string or number (got {type})
23DI_E_22P01SYSTEM_SCHEMA_PRECISION_EXCEEDEDTotal digits exceed attribute precisionvalue exceeds precision: got {actual} total digits, maximum allowed is {max}
24DI_E_22S01SYSTEM_SCHEMA_SCALE_EXCEEDEDDecimal digits exceed attribute scalevalue exceeds scale: got {actual} decimal digits, maximum allowed is {max}
25DI_E_23P02SYSTEM_DATA_PK_MISSING_COLUMNPK attribute entirely absent from a rowprimary key column is missing

Quick Reference — All Codes Sorted

CodeCategoryShort Description
DI_E_22001BUSINESSString too long (max length)
DI_E_22003BUSINESSNumeric out of range (min/max)
DI_E_22007BUSINESSInvalid date format
DI_E_22008BUSINESSInvalid timestamp format / invalid epoch
DI_E_22023BUSINESSInvalid enum value
DI_E_22026BUSINESSString too short (min length)
DI_E_22B01SYSTEM_DATAInvalid boolean type
DI_E_22I01SYSTEM_DATAInvalid integer type
DI_E_22N01SYSTEM_DATAInvalid number type
DI_E_22P01SYSTEM_SCHEMANumeric precision exceeded
DI_E_22P02BUSINESS / SYSTEM_SCHEMAInvalid text representation / not a valid number
DI_E_22P03SYSTEM_DATAEmpty value for precision/scale check
DI_E_22P04SYSTEM_DATAPrecision/scale validation error
DI_E_22S01SYSTEM_SCHEMANumeric scale exceeded
DI_E_22T01SYSTEM_DATATimestamp empty string
DI_E_22T02SYSTEM_SCHEMATimestamp wrong JSON type
DI_E_23505SYSTEM_DATADuplicate primary key in batch
DI_E_23502BUSINESSNot-null violation
DI_E_23E01BUSINESSNot-empty violation
DI_E_23N01BUSINESSRequired field missing
DI_E_23P01SYSTEM_DATAPrimary key value is null
DI_E_23P02SYSTEM_SCHEMAPrimary key attribute missing from row
DI_E_42703SYSTEM_SCHEMAAttribute not found in schema

Categorization Logic

Use the error code prefix to quickly identify the class of error:

DI_E_22XXX  →  Data Exception      (type/format/range/precision)
DI_E_23XXX  →  Integrity Constraint (null/unique/pk/fk/required)
DI_E_42XXX  →  Schema Mismatch     (undefined columns)
DI_W_XXXXXWarning             (non-fatal, future use)
DI_E_22XXX  →  Data Exception      (type/format/range/precision)
DI_E_23XXX  →  Integrity Constraint (null/unique/pk/fk/required)
DI_E_42XXX  →  Schema Mismatch     (undefined columns)
DI_W_XXXXX  →  Warning             (non-fatal, future use)

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated