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
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",
"file": "string($binary)"
}
Available values for Categories : general-documents, invoices, purchase-orders, receipts, transport-documents
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"
}