Skip to main content

Error Codes

When an API call fails, the response contains a non-zero code and a message describing the failure:

{
"code": 2080010,
"message": "user not found in search",
"requestId": "4d5912a82af144f8a982c2da031c1035",
"data": {}
}
FieldDescription
codeBusiness error code. 0 = success; non-zero = failure
messageHuman-readable error description
requestIdUnique request ID — always record it for troubleshooting

HTTP Status Codes

HTTP CodeMeaningRecommendation
200Request reached the business layerCheck the code field in the body for the real result
401UnauthorizedCheck the Authorization header and API Key validity
403ForbiddenCheck whether the application is disabled or the credential revoked
429Too many requestsReduce QPS — the default limit is 20 req/sec; contact the official team to request a higher limit
5xxServer errorRetry later; contact support with the requestId if it persists

Business Error Codes

Business error codes are 7-digit decimals: the first 3 digits identify the module, the last 4 the specific error. Three segments are involved:

  • 1000xxx — generic errors (parameter validation, internal failures)
  • 2060xxx — credential/authentication errors (gateway layer)
  • 2080xxx — palmprint business errors

Generic (1000xxx)

CodeMessageMeaning / Recommendation
0okSuccess
1000000invalid paramParameter validation failed (missing required field, illegal format, length exceeded). Check the request against the interface's parameter table
1000001internal errorInternal server error. Retry later; contact support with the requestId if it persists
1000011database operation failedDatabase operation failed. Retry later; report with the requestId if reproducible
1000013forbiddenOperation not permitted (application disabled or credential revoked). Check application status in the console

Credential & Authentication (2060xxx)

Returned at the gateway before any business logic runs.

CodeMessageMeaning / Recommendation
2060000unauthorizedMissing Authorization header, or the API Key is invalid/expired. Verify the header format and credential
2060002too many requestsRate limit exceeded (default: 20 req/sec). Lower your QPS, or contact the official team to request a higher limit
2060200openapi credential not foundCredential does not exist (may have been deleted). Confirm in the console or regenerate
2060202openapi credential revokedCredential has been revoked. Regenerate it in the console
2060203openapi credential invalidMalformed credential or signature check failed. Verify the API Key was copied in full
2060204openapi credential type invalidWrong credential type — the value after Bearer must carry the ak_ prefix
2060207OpenAPI app not configuredThe application is not configured on the platform. Contact support

Palmprint Business (2080xxx)

CodeMessageMeaning / Recommendation
2080000no available versionNo available algorithm version. Contact support to confirm product provisioning
2080001unknown image typeUnknown image type. Ensure RgbImage.Data is a valid Base64-encoded JPEG/PNG and ImageType is 1
2080002image MD5 mismatchImage data corrupted or truncated in transit. Retry from the client
2080003liveness check failedLiveness check failed (possible photo/replay attack). Guide the user to recapture a real palm
2080004quality check failedImage quality check failed (blurry, incomplete palm, poor lighting). Guide the user to recapture
2080007already boundA palmprint already exists for this UserId + PalmDirection. Set IsForce=true in RegisterRgbPalm to overwrite
2080009data not foundData not found. The specified UserId/PalmDirection has no registered palmprint
2080010user not found in searchSearchRgbPalm matched no user in the gallery. Normal business result, not a system error
2080011table capacity fullGallery partition capacity full. Contact support for expansion
2080014palm capacity fullApplication palmprint capacity reached. Delete unused palmprints, or contact the official team to request an expansion
2080016user does not exist in DBUser does not exist. Register via RegisterRgbPalm before compare/delete operations
2080017user palm direction does not exist in DBNo palmprint for the specified palm direction. Check PalmDirection or register first
2080018concurrent operation in DB, please retryConcurrent operation conflict. Retry with backoff; avoid parallel register/delete calls for the same user
2080020palm capacity quota exceededPlatform feature quota exceeded. Contact support to expand capacity
2080023app does not existApplication does not exist. Verify the application bound to your API Key
2080024compare session expired or not existThe SessionId from a comparison does not exist or has expired (valid for 2 hours). Re-run CompareRgbPalm

📌 Troubleshooting tips

  • Always keep the requestId — it is the key clue for official support.
  • 1:N searches returning 2080010 and duplicate registrations returning 2080007 are normal business outcomes, not system failures.
  • If you repeatedly hit capacity errors (2080011, 2080014, 2080020) or 2060002, contact the official team with your requestId to request a higher limit or capacity expansion.