Authentication
POST /Public/Sign-in
DESCRIPTION
Access for: user (role : user/co_user)
Authenticate with Retica to obtain a bearer token for authorization.
TYPE
Application/Json
REQUEST BODY
{
"email": "string",
"password": "string"
}
RESPONSES
Code 200 – CORRECT
{
"accessToken": "string",
"expiredAt": 0
}
Code 400 – BAD REQUEST
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 500 – INTERNAL SERVER ERROR
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Get Users list
GET /Public/Users
DESCRIPTION
Access for: user (role : user).
Get users list
TYPE
Application/Json
AUTHORIZATION
Token : Access token
PARAMETERS – FOR USER
Null
PARAMETERS – FOR RESELLER
You can filter the list of user and co-users by the company and/or dealer they are associated with.
"companyName": "string"
"dealerName": "string"
"role": "string" -> Available values : CO_USER, USER
"from": "string" -> Date in ISO string format (example : 2024-10-12T10:43:51.623Z)
"to": "string" -> Date in ISO string format (example : 2024-11-13T10:43:51.624Z)
RESPONSES
Code 200 – CORRECT
[
{
"_id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"createdAt": "string",
"updatedAt": "string",
"role": "CO_USER",
"coUserInfo": {
"_id": "string",
"createdAt": "string",
"updatedAt": "string",
"status": "INVITED",
"email": "string",
"userId": "string",
"joinedAt": "string",
"companyName": "string",
"dealerName": "string",
"totalPages": 0
}
}
]
Code 400 – BAD REQUEST
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 401 – UNAUTHORIZED
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 500 – INTERNAL SERVER ERROR
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Get User informations
GET /Public/Users/{Users id}
DESCRIPTION
Access for: user (role : user)
Get user information via user id.
TYPE
Application/Json
AUTHORIZATION
Token : Access token
PARAMETERS
"userId": "string"
Path
RESPONSES
Code 200 – CORRECT
{
"_id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"createdAt": "string",
"updatedAt": "string",
"role": "CO_USER",
"coUserInfo": {
"_id": "string",
"createdAt": "string",
"updatedAt": "string",
"status": "INVITED",
"email": "string",
"userId": "string",
"joinedAt": "string",
"companyName": "string",
"dealerName": "string",
"totalPages": 0
}
}
Code 400 – BAD REQUEST
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 401 – UNAUTHORIZED
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 500 – INTERNAL SERVER ERROR
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Update a User information
PATCH /Public/Co-Users/{Co-Users id}
DESCRIPTION
Access for: user (role : user)
Update exist user with role CO_USER by user id.
TYPE
Application/Json
AUTHORIZATION
Token : Access token
PARAMETERS
"userId": "string"
Path
REQUEST BODY
{
"email": "string",
"password": "string",
"firstName": "string",
"lastName": "string",
"apiOnly": true,
"companyName": "string",
"dealerName": "string"
}
The apiOnly parameter is used to allow the co-user access to the web interface (app.retica.ai). If apiOnly = true the co-user can use the API but not access the web interface, if apiOnly = false the co-user can use the API and access the web interface.
The CompanyName and dealerName parameters are available to everyone but are used only for dealer functionality. If you aren’t a reseller you can leave these parameters blank.
RESPONSES
Code 200 – CORRECT
{
"_id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"createdAt": "string",
"updatedAt": "string",
"role": "CO_USER",
"coUserInfo": {
"_id": "string",
"createdAt": "string",
"updatedAt": "string",
"status": "INVITED",
"email": "string",
"userId": "string",
"joinedAt": "string",
"companyName": "string",
"dealerName": "string",
"totalPages": 0
}
}
Code 400 – BAD REQUEST
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 401 – UNAUTHORIZED
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 500 – INTERNAL SERVER ERROR
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Create a User
POST /Public/Users/Create
DESCRIPTION
Access for: user (role : user).
Create a co-user immediately, without sending and confirming the invitation email.
TYPE
Application/Json
AUTHORIZATION
Token : Access token
REQUEST BODY
{
"email": "string",
"password": "string",
"firstName": "string",
"lastName": "string",
"apiOnly": true,
"companyName": "string",
"dealerName": "string"
}
The apiOnly parameter is used to allow the co-user access to the web interface (app.retica.ai). If apiOnly = true the co-user can use the API but not access the web interface, if apiOnly = false the co-user can use the API and access the web interface.
The CompanyName and dealerName parameters are available to everyone but are used only for dealer functionality. If you aren’t a reseller you can leave these parameters blank.
RESPONSES
Code 200 – CORRECT
{
"_id": "string",
"email": "string",
"firstName": "string",
"lastName": "string",
"createdAt": "string",
"updatedAt": "string",
"role": "CO_USER",
"coUserInfo": {
"_id": "string",
"createdAt": "string",
"updatedAt": "string",
"status": "INVITED",
"email": "string",
"userId": "string",
"joinedAt": "string",
"companyName": "string",
"dealerName": "string",
"totalPages": 0
}
}
Code 400 – BAD REQUEST
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 401 – UNAUTHORIZED
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 500 – INTERNAL SERVER ERROR
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Import document
POST /Public/Files/Import
DESCRIPTION
Access for: user (role : user/co_user).
Imports the document into Retica and initiates the recognition process.
- Max file size: 15MB
- Allowed formats: PDF, PNG, JPG, JPEG, TIF, TIFF
- Max pages per document: 20
TYPE
Application/Json
AUTHORIZATION
Token : Access token
REQUEST BODY
{
"category": "string",
"customModelId" : "string",
"file": "string($binary)"
}
Available values for Categories : purchase-orders, sales-orders, invoices, receipts, transport-documents, general-documents, custom.
If the “custom” category is selected, the custom model id must be specified in the “customModelId” parameter. For all other categories, remove the “customModelId” parameter from the request, otherwise the API will respond with an error.
Example : “category” : “invoices”
RESPONSES
Code 200 – CORRECT
{
"success": true
}
Code 400 – BAD REQUEST
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 401 – UNAUTHORIZED
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 500 – INTERNAL SERVER ERROR
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Get documents list
GET /Public/Files
DESCRIPTION
Access for: user (role : user/co_user).
If the reseller function is active, customers will only be able to receive their own files.
TYPE
Application/Json
AUTHORIZATION
Token : Access token
PARAMETERS
Parameters serve as filters and can be used as desired, with multiple filters combinable. To receive all documents without filtering, simply leave the filter fields blank.
"category": "array[string]"
Available values : general-documents, invoices, purchase-orders, receipts, transport-documents
Example : “category” : “general-documents, invoices”
"status": "string($string)"
Available values : IN_PROCESS, UNRECOGNIZED, RECOGNIZED
"userId": "string($string)"
"email": "array[string]"
Users email addresses
"companyName": "string"
Only for reseller
"dealerName": "string"
Only for reseller
RESPONSES
Code 200 – CORRECT
[
{
"_id": "string",
"createdAt": "string",
"updatedAt": "string",
"uploaderId": "string",
"category": "purchase-orders",
"status": "UPLOADED",
"fileName": "string",
"autoRemoveAt": "string",
"size": 0,
"pagesCount": 0
}
]
Code 400 – BAD REQUEST
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 401 – UNAUTHORIZED
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 500 – INTERNAL SERVER ERROR
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Export file
GET /Public/Files/Export/{fileId}
DESCRIPTION
Access for: user (role : user/co_user).
Export file with recognized labels.
A zip archive with the original document and recognition results will be downloaded.
TYPE
Application/Json
AUTHORIZATION
Token : Access token
PARAMETERS
"field": "string($string)"
Path
"type": "string"
Available values : JSON, XLSX, CSV, XML
RESPONSES
Code 200 – CORRECT
Code 400 – BAD REQUEST
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 401 – UNAUTHORIZED
{
"statusCode": 0,
"error": "string",
"message": "string"
}
Code 500 – INTERNAL SERVER ERROR
{
"statusCode": 0,
"error": "string",
"message": "string"
}