Download OpenAPI specification:Download
This will get a dashboards for a user by group id
groupId required | string Id of group to get dashboard for |
[- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "groupId": 0,
- "userId": 0,
- "updatedAt": "string",
- "widgets": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "dashboardId": 0,
- "updatedAt": "string",
- "widgetType": "GROUP_SUMMARY",
- "configuration": {
- "property1": null,
- "property2": null
}
}
]
}
]
This will update a dashboard
dashboardId required | integer Id of dashboard to operate on |
Dashboard to update
name required | string Dashboard name |
groupId required | string Group foreign key |
Array of objects (UpsertWidgetCommand) Widgets associated to dashboard |
{- "name": "string",
- "groupId": "string",
- "widgets": [
- {
- "name": "string",
- "widgetType": "GROUP_SUMMARY",
- "configuration": {
- "property1": null,
- "property2": null
}
}
]
}
{- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "groupId": 0,
- "userId": 0,
- "updatedAt": "string",
- "widgets": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "dashboardId": 0,
- "updatedAt": "string",
- "widgetType": "GROUP_SUMMARY",
- "configuration": {
- "property1": null,
- "property2": null
}
}
]
}
This will delete a dashboard by id
dashboardId required | integer Id of dashboard to operate on |
{- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "groupId": 0,
- "userId": 0,
- "updatedAt": "string",
- "widgets": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "dashboardId": 0,
- "updatedAt": "string",
- "widgetType": "GROUP_SUMMARY",
- "configuration": {
- "property1": null,
- "property2": null
}
}
]
}
This will create a dashboard [SYSTEM USER]
Dashboard
name required | string Dashboard name |
groupId required | string Group foreign key |
Array of objects (UpsertWidgetCommand) Widgets associated to dashboard |
{- "name": "string",
- "groupId": "string",
- "widgets": [
- {
- "name": "string",
- "widgetType": "GROUP_SUMMARY",
- "configuration": {
- "property1": null,
- "property2": null
}
}
]
}
{- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "groupId": 0,
- "userId": 0,
- "updatedAt": "string",
- "widgets": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "dashboardId": 0,
- "updatedAt": "string",
- "widgetType": "GROUP_SUMMARY",
- "configuration": {
- "property1": null,
- "property2": null
}
}
]
}
This will return paged categories
Paging and sorting data
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc"
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will create a category
Category to create
createdAt | string |
createdBy | integer <uint64> |
id | integer <uint64> |
name | string Name of the category |
description | string Description of the category |
updatedAt | string |
{- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
{- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
This will update a category
categoryId required | integer Category Id to get |
Category to update
createdAt | string |
createdBy | integer <uint64> |
id | integer <uint64> |
name | string Name of the category |
description | string Description of the category |
updatedAt | string |
{- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
{- "errorMsg": "string"
}
This will add a comment to a receipt, [SYSTEM USER]
Comment to create
comment required | string Comment itself |
receiptId required | integer Receipt foreign key |
userId | integer User foreign key |
{- "comment": "string",
- "receiptId": 0,
- "userId": 0
}
{- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
This will create a custom field
Custom field to create
name required | string Custom Field name |
type required | string (CustomFieldType) Enum: "TEXT" "DATE" "SELECT" "CURRENCY" "BOOLEAN" |
description | string Custom Field description |
Array of objects (UpsertCustomFieldOptionCommand) |
{- "name": "string",
- "type": "TEXT",
- "description": "string",
- "options": [
- {
- "value": "string",
- "customFieldId": 0
}
]
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "type": "TEXT",
- "description": "string",
- "options": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "value": "string",
- "customFieldId": 0
}
]
}
This will get a custom field by id
customFieldId required | integer Custom field Id to get |
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "type": "TEXT",
- "description": "string",
- "options": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "value": "string",
- "customFieldId": 0
}
]
}
This will return paged custom fields
Paging and sorting data
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc"
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will export all receipts that belong to a group based on a filter [SYSTEM USER]
groupId required | integer Get all receipts that belong to groupId |
format required | string (ExportFormat) Value: "CSV" |
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
object (ReceiptPagedRequestFilter) |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc",
- "filter": {
- "date": { },
- "amount": { },
- "name": { },
- "paidBy": { },
- "categories": { },
- "tags": { },
- "status": { },
- "resolvedDate": { },
- "createdAt": { }
}
}
{- "errorMsg": "string"
}
This will get groups for the currently logged in user
[- {
- "createdAt": "string",
- "createdBy": 0,
- "groupSettings": {
- "id": 0,
- "groupId": 0,
- "emailIntegrationEnabled": true,
- "systemEmailId": 0,
- "systemEmail": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}, - "emailToRead": "string",
- "subjectLineRegexes": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "regex": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailWhiteList": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "email": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailDefaultReceiptStatus": "OPEN",
- "emailDefaultReceiptPaidById": 0,
- "prompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "promptId": 0,
- "fallbackPrompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "fallbackPromptId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}, - "groupReceiptSettings": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "groupId": 0,
- "hideImages": true,
- "hideReceiptCategories": true,
- "hideReceiptTags": true,
- "hideItemCategories": true,
- "hideItemTags": true,
- "hideComments": true,
- "hideShareCategories": true,
- "hideShareTags": true
}, - "groupMembers": [
- {
- "createdAt": "string",
- "groupId": 0,
- "groupRole": "OWNER",
- "updatedAt": "string",
- "userId": 0
}
], - "id": 0,
- "isDefault": true,
- "name": "string",
- "isAllGroup": true,
- "status": "ACTIVE",
- "updatedAt": "string"
}
]
This will create a group
Group to create
required | Array of objects (UpsertGroupMemberCommand) Members of the group |
isDefault | boolean Is default group (not used yet) |
name required | string Name of the group |
isAllGroup | boolean Is all group for user |
status required | string (GroupStatus) Enum: "ACTIVE" "ARCHIVED" |
{- "groupMembers": [
- {
- "groupId": 0,
- "groupRole": "OWNER",
- "userId": 0
}
], - "isDefault": true,
- "name": "string",
- "isAllGroup": true,
- "status": "ACTIVE"
}
{- "errorMsg": "string"
}
This will get the ocr text, zipped, for each image in a group and one text file per image
groupId required | integer Group Id to get ocr text for |
{- "errorMsg": "string"
}
This will update a group
groupId required | integer Group Id to get |
Group to update
createdAt | string |
createdBy | integer <uint64> |
object (GroupSettings) | |
required | object (GroupReceiptSettings) |
required | Array of objects (GroupMember) Members of the group |
id required | integer <uint64> |
isDefault | boolean Is default group (not used yet) |
name required | string Name of the group |
isAllGroup required | boolean Is all group for user |
status required | string (GroupStatus) Enum: "ACTIVE" "ARCHIVED" |
updatedAt | string |
{- "createdAt": "string",
- "createdBy": 0,
- "groupSettings": {
- "id": 0,
- "groupId": 0,
- "emailIntegrationEnabled": true,
- "systemEmailId": 0,
- "systemEmail": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}, - "emailToRead": "string",
- "subjectLineRegexes": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "regex": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailWhiteList": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "email": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailDefaultReceiptStatus": "OPEN",
- "emailDefaultReceiptPaidById": 0,
- "prompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "promptId": 0,
- "fallbackPrompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "fallbackPromptId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}, - "groupReceiptSettings": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "groupId": 0,
- "hideImages": true,
- "hideReceiptCategories": true,
- "hideReceiptTags": true,
- "hideItemCategories": true,
- "hideItemTags": true,
- "hideComments": true,
- "hideShareCategories": true,
- "hideShareTags": true
}, - "groupMembers": [
- {
- "createdAt": "string",
- "groupId": 0,
- "groupRole": "OWNER",
- "updatedAt": "string",
- "userId": 0
}
], - "id": 0,
- "isDefault": true,
- "name": "string",
- "isAllGroup": true,
- "status": "ACTIVE",
- "updatedAt": "string"
}
{- "errorMsg": "string"
}
This will update the group settings for a group
groupId required | integer Group Id to update |
Group settings to update
systemEmailId required | integer System email foreign key |
emailIntegrationEnabled | boolean Whether email integration is enabled |
required | Array of objects (SubjectLineRegex) Subject line regexes |
required | Array of objects (GroupSettingsWhiteListEmail) Email white list |
emailDefaultReceiptStatus | string (ReceiptStatus) Enum: "OPEN" "NEEDS_ATTENTION" "RESOLVED" "DRAFT" "" Default receipt status |
emailDefaultReceiptPaidById | integer User foreign key |
promptId | integer Prompt foreign key |
fallbackPromptId | integer Fallback prompt foreign key |
{- "systemEmailId": 0,
- "emailIntegrationEnabled": true,
- "subjectLineRegexes": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "regex": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailWhiteList": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "email": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailDefaultReceiptStatus": "OPEN",
- "emailDefaultReceiptPaidById": 0,
- "promptId": 0,
- "fallbackPromptId": 0
}
{- "id": 0,
- "groupId": 0,
- "emailIntegrationEnabled": true,
- "systemEmailId": 0,
- "systemEmail": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}, - "emailToRead": "string",
- "subjectLineRegexes": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "regex": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailWhiteList": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "email": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailDefaultReceiptStatus": "OPEN",
- "emailDefaultReceiptPaidById": 0,
- "prompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "promptId": 0,
- "fallbackPrompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "fallbackPromptId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
This will update the group receipt settings for a group
groupId required | integer Group Id to update |
Group settings to update
hideImages | boolean Hide receipt images |
hideReceiptCategories | boolean Hide receipt categories |
hideReceiptTags | boolean Hide receipt tags |
hideItemCategories | boolean Hide receipt item categories |
hideItemTags | boolean Hide receipt item tags |
hideComments | boolean Hide receipt comments |
hideShareCategories | boolean Hide share categories |
hideShareTags | boolean Hide share tags |
{- "hideImages": true,
- "hideReceiptCategories": true,
- "hideReceiptTags": true,
- "hideItemCategories": true,
- "hideItemTags": true,
- "hideComments": true,
- "hideShareCategories": true,
- "hideShareTags": true
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "groupId": 0,
- "hideImages": true,
- "hideReceiptCategories": true,
- "hideReceiptTags": true,
- "hideItemCategories": true,
- "hideItemTags": true,
- "hideComments": true,
- "hideShareCategories": true,
- "hideShareTags": true
}
This will return paged groups
Paging and sorting data
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
object (GroupFilter) |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc",
- "filter": {
- "associatedGroup": "MINE"
}
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will log a user into the system
tokensInBody | boolean Default: false When true, tokens are returned in the response body only without setting cookies |
Login data
username required | string User's username |
password required | string User's password |
{- "username": "string",
- "password": "string"
}
{- "about": {
- "buildDate": "string",
- "version": "string"
}, - "claims": {
- "userId": 0,
- "userRole": "ADMIN",
- "displayName": "",
- "defaultAvatarColor": "",
- "username": "",
- "iss": "",
- "sub": "",
- "aud": [ ],
- "exp": 0,
- "nbf": 0,
- "iat": 0,
- "jti": ""
}, - "groups": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "groupSettings": {
- "id": 0,
- "groupId": 0,
- "emailIntegrationEnabled": true,
- "systemEmailId": 0,
- "systemEmail": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}, - "emailToRead": "string",
- "subjectLineRegexes": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "regex": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailWhiteList": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "email": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailDefaultReceiptStatus": "OPEN",
- "emailDefaultReceiptPaidById": 0,
- "prompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "promptId": 0,
- "fallbackPrompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "fallbackPromptId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}, - "groupReceiptSettings": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "groupId": 0,
- "hideImages": true,
- "hideReceiptCategories": true,
- "hideReceiptTags": true,
- "hideItemCategories": true,
- "hideItemTags": true,
- "hideComments": true,
- "hideShareCategories": true,
- "hideShareTags": true
}, - "groupMembers": [
- {
- "createdAt": "string",
- "groupId": 0,
- "groupRole": "OWNER",
- "updatedAt": "string",
- "userId": 0
}
], - "id": 0,
- "isDefault": true,
- "name": "string",
- "isAllGroup": true,
- "status": "ACTIVE",
- "updatedAt": "string"
}
], - "users": [
- {
- "username": "string",
- "createdAt": "string",
- "createdBy": 0,
- "defaultAvatarColor": "string",
- "displayName": "string",
- "id": 0,
- "isDummyUser": true,
- "updatedAt": "string",
- "userRole": "ADMIN"
}
], - "userPreferences": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userId": 0,
- "quickScanDefaultGroupId": 0,
- "quickScanDefaultPaidById": 0,
- "quickScanDefaultStatus": "OPEN",
- "showLargeImagePreviews": null,
- "userShortcuts": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userPreferncesId": 0,
- "name": "string",
- "url": "string",
- "icon": "string"
}
]
}, - "featureConfig": {
- "aiPoweredReceipts": true,
- "enableLocalSignUp": true
}, - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "jwt": "string",
- "refreshToken": "string",
- "currencyDisplay": "string",
- "currencyThousandthsSeparator": ",",
- "currencyDecimalSeparator": ",",
- "currencySymbolPosition": "START",
- "currencyHideDecimalPlaces": true,
- "icons": [
- {
- "value": "string",
- "displayValue": "string"
}
]
}
This will log a user out of the system and revoke their token [SYSTEM USER]
Refresh token
refreshToken required | string Refresh token |
{- "refreshToken": "string"
}
{- "errorMsg": "string"
}
This will sign a user up for the system
Sign up data
username required | string User's username |
password required | string User's password |
displayName | string User's displayname |
isDummyUser | boolean Whether the user is a dummy user |
userRole | string (UserRole) Enum: "ADMIN" "USER" User's role |
{- "username": "string",
- "password": "string",
- "displayName": "string",
- "isDummyUser": true,
- "userRole": "ADMIN"
}
{- "errorMsg": "string"
}
This will get a fresh token pair for the user
Refresh token body for clients that don't use cookies
refreshToken required | string Refresh token |
{- "refreshToken": "string"
}
{- "jwt": "string",
- "refreshToken": "string"
}
This will get all the notifications for the currently logged in user
[- {
- "body": "string",
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "title": "string",
- "type": "string",
- "updatedAt": "string",
- "userId": 0
}
]
This will create a receipt [SYSTEM USER]
Receipt to create
name required | string Receipt name |
amount required | string Receipt total amount |
date required | string Receipt date |
groupId required | integer Group foreign key |
paidByUserId required | integer User paid foreign key |
status required | string (ReceiptStatus) Enum: "OPEN" "NEEDS_ATTENTION" "RESOLVED" "DRAFT" "" Status of a receipt |
Array of objects (UpsertCategoryCommand) Categories associated to receipt | |
Array of objects (UpsertTagCommand) Tags associated to receipt | |
Array of objects (UpsertItemCommand) Items associated to receipt | |
Array of objects (UpsertCommentCommand) Comments associated to receipt | |
Array of objects (UpsertCustomFieldValueCommand) Custom fields associated to receipt |
{- "name": "string",
- "amount": "string",
- "date": "string",
- "groupId": 0,
- "paidByUserId": 0,
- "status": "OPEN",
- "categories": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "tags": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "receiptItems": [
- {
- "amount": "string",
- "chargedToUserId": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "categories": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "tags": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "linkedItems": [
- { }
]
}
], - "comments": [
- {
- "comment": "string",
- "receiptId": 0,
- "userId": 0
}
], - "customFields": [
- {
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
]
}
{- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
This take an image and use magic fill to fill and save the receipt [SYSTEM USER]
Quick scan data
files required | Array of strings <binary> [ items <binary > ] |
groupIds required | Array of integers |
paidByUserIds required | Array of integers |
statuses required | Array of strings (ReceiptStatus) Items Enum: "OPEN" "NEEDS_ATTENTION" "RESOLVED" "DRAFT" "" |
{- "errorMsg": "string"
}
This will return whether or not the currently logged in user has access to the receipt
receiptId required | integer |
groupRole | string Role required to have access to receipt |
{- "errorMsg": "string"
}
This will get a receipt by receipt id [SYSTEM USER]
receiptId required | integer Id of receipt to get |
{- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
This will update a receipt by receipt id [SYSTEM USER]
receiptId required | integer Id of receipt to get |
Receipt to update
name required | string Receipt name |
amount required | string Receipt total amount |
date required | string Receipt date |
groupId required | integer Group foreign key |
paidByUserId required | integer User paid foreign key |
status required | string (ReceiptStatus) Enum: "OPEN" "NEEDS_ATTENTION" "RESOLVED" "DRAFT" "" Status of a receipt |
Array of objects (UpsertCategoryCommand) Categories associated to receipt | |
Array of objects (UpsertTagCommand) Tags associated to receipt | |
Array of objects (UpsertItemCommand) Items associated to receipt | |
Array of objects (UpsertCommentCommand) Comments associated to receipt | |
Array of objects (UpsertCustomFieldValueCommand) Custom fields associated to receipt |
{- "name": "string",
- "amount": "string",
- "date": "string",
- "groupId": 0,
- "paidByUserId": 0,
- "status": "OPEN",
- "categories": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "tags": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "receiptItems": [
- {
- "amount": "string",
- "chargedToUserId": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "categories": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "tags": [
- {
- "id": 0,
- "name": "string",
- "description": "string"
}
], - "linkedItems": [
- { }
]
}
], - "comments": [
- {
- "comment": "string",
- "receiptId": 0,
- "userId": 0
}
], - "customFields": [
- {
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
]
}
{- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
This will bulk update receipt statuses with the option of adding a comment to each [SYSTEM USER]
Bulk status data
comment | string Optional comment to leave on each receipt |
status required | string Status to update to |
receiptIds required | Array of integers Receipt ids to update |
{- "comment": "string",
- "status": "string",
- "receiptIds": [
- 0
]
}
[- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
]
This will return receipts with the option to sort and filter [SYSTEM USER]
groupId required | integer Get all receipts that belong to groupId |
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
object (ReceiptPagedRequestFilter) |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc",
- "filter": {
- "date": { },
- "amount": { },
- "name": { },
- "paidBy": { },
- "categories": { },
- "tags": { },
- "status": { },
- "resolvedDate": { },
- "createdAt": { }
}
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will upload a receipt image, [SYSTEM USER]
Receipt image to upload
file required | string <binary> |
receiptId required | integer Receipt foreign key |
encodedImage | string Base64 encoded image for file types that aren't viewable natively in the browser, such as PDFs |
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "encodedImage": "string",
- "name": "string"
}
This will convert a receipt image to jpg, [SYSTEM USER]
Receipt image to convert
file required | string <binary> Base64 encoded image |
{- "encodedImage": "string"
}
This will parse and read a receipt image, [SYSTEM USER]
receiptImageId | integer Id of receipt image to perform magic fill on |
file | string <binary> |
{- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
This will get a receipt image by id, [SYSTEM USER]
receiptImageId required | integer Id of receipt image to get |
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "encodedImage": "string",
- "name": "string"
}
This will search for receipts based on a search term
searchTerm required | string search term |
[- {
- "id": 0,
- "name": "string",
- "type": "string",
- "groupId": 0,
- "date": "string",
- "amount": "string",
- "receiptStatus": "OPEN",
- "paidByUserId": 0,
- "createdAt": "string"
}
]
This will return paged tags
Paging and sorting data
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc"
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will update a tag
tagId required | integer Id of tag to get |
Tag to update
id | integer Tag id |
name required | string Tag name |
description | string Tag description |
{- "id": 0,
- "name": "string",
- "description": "string"
}
{- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
This will create a tag
Tag to create
id | integer Tag id |
name required | string Tag name |
description | string Tag description |
{- "id": 0,
- "name": "string",
- "description": "string"
}
{- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
This will get all the users in the system and return a view without sensative information
[- {
- "username": "string",
- "createdAt": "string",
- "createdBy": 0,
- "defaultAvatarColor": "string",
- "displayName": "string",
- "id": 0,
- "isDummyUser": true,
- "updatedAt": "string",
- "userRole": "ADMIN"
}
]
This will to create a user, [SYSTEM ADMIN]
User to create
password | string User's password |
username required | string User's username used to login |
createdAt | string |
createdBy | integer <uint64> |
defaultAvatarColor | string Default avatar color |
displayName required | string Display name |
id required | integer |
isDummyUser required | boolean Is dummy user |
updatedAt | string |
userRole required | string (UserRole) Enum: "ADMIN" "USER" User's role |
lastLoginDate | string |
{- "password": "string",
- "username": "string",
- "createdAt": "string",
- "createdBy": 0,
- "defaultAvatarColor": "string",
- "displayName": "string",
- "id": 0,
- "isDummyUser": true,
- "updatedAt": "string",
- "userRole": "ADMIN",
- "lastLoginDate": "string"
}
{- "errorMsg": "string"
}
This will update a user by id, [SYSTEM ADMIN]
userId required | integer Id of user to update |
User to update
password | string User's password |
username required | string User's username used to login |
createdAt | string |
createdBy | integer <uint64> |
defaultAvatarColor | string Default avatar color |
displayName required | string Display name |
id required | integer |
isDummyUser required | boolean Is dummy user |
updatedAt | string |
userRole required | string (UserRole) Enum: "ADMIN" "USER" User's role |
lastLoginDate | string |
{- "password": "string",
- "username": "string",
- "createdAt": "string",
- "createdBy": 0,
- "defaultAvatarColor": "string",
- "displayName": "string",
- "id": 0,
- "isDummyUser": true,
- "updatedAt": "string",
- "userRole": "ADMIN",
- "lastLoginDate": "string"
}
{- "errorMsg": "string"
}
This will convert a dummy user to a normal system user, [SYSTEM ADMIN]
userId required | integer Id of user to convert to normal system user |
Login credentials for new user
password required | string User's new password |
{- "password": "string"
}
{- "errorMsg": "string"
}
This will reset a password for a user, [SYSTEM ADMIN]
userId required | integer Id of user to reset password |
Login credentials for new user
password required | string User's new password |
{- "password": "string"
}
{- "errorMsg": "string"
}
This will return the amount owed for the logged in user, in the specified group, [SYSTEM USER]
groupId | integer The Id of the group to get amount owed for |
receiptIds | Array of integers The Id of the receipts to get amount owed for |
{- "property1": "string",
- "property2": "string"
}
This will return the user's token claims for the currently logged in user [SYSTEM USER]
{- "userId": 0,
- "userRole": "ADMIN",
- "displayName": "",
- "defaultAvatarColor": "",
- "username": "",
- "iss": "",
- "sub": "",
- "aud": [ ],
- "exp": 0,
- "nbf": 0,
- "iat": 0,
- "jti": ""
}
This will update the logged in user's user profile
User profile to update
displayName required | string User's displayName |
defaultAvatarColor required | string Color of default avatar |
{- "displayName": "string",
- "defaultAvatarColor": "string"
}
{- "errorMsg": "string"
}
This will return the user's app data for the currently logged in user [SYSTEM USER]
{- "about": {
- "buildDate": "string",
- "version": "string"
}, - "claims": {
- "userId": 0,
- "userRole": "ADMIN",
- "displayName": "",
- "defaultAvatarColor": "",
- "username": "",
- "iss": "",
- "sub": "",
- "aud": [ ],
- "exp": 0,
- "nbf": 0,
- "iat": 0,
- "jti": ""
}, - "groups": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "groupSettings": {
- "id": 0,
- "groupId": 0,
- "emailIntegrationEnabled": true,
- "systemEmailId": 0,
- "systemEmail": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}, - "emailToRead": "string",
- "subjectLineRegexes": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "regex": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailWhiteList": [
- {
- "id": 0,
- "groupSettingsId": 0,
- "email": "string",
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}
], - "emailDefaultReceiptStatus": "OPEN",
- "emailDefaultReceiptPaidById": 0,
- "prompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "promptId": 0,
- "fallbackPrompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "fallbackPromptId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "updatedAt": "string"
}, - "groupReceiptSettings": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "groupId": 0,
- "hideImages": true,
- "hideReceiptCategories": true,
- "hideReceiptTags": true,
- "hideItemCategories": true,
- "hideItemTags": true,
- "hideComments": true,
- "hideShareCategories": true,
- "hideShareTags": true
}, - "groupMembers": [
- {
- "createdAt": "string",
- "groupId": 0,
- "groupRole": "OWNER",
- "updatedAt": "string",
- "userId": 0
}
], - "id": 0,
- "isDefault": true,
- "name": "string",
- "isAllGroup": true,
- "status": "ACTIVE",
- "updatedAt": "string"
}
], - "users": [
- {
- "username": "string",
- "createdAt": "string",
- "createdBy": 0,
- "defaultAvatarColor": "string",
- "displayName": "string",
- "id": 0,
- "isDummyUser": true,
- "updatedAt": "string",
- "userRole": "ADMIN"
}
], - "userPreferences": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userId": 0,
- "quickScanDefaultGroupId": 0,
- "quickScanDefaultPaidById": 0,
- "quickScanDefaultStatus": "OPEN",
- "showLargeImagePreviews": null,
- "userShortcuts": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userPreferncesId": 0,
- "name": "string",
- "url": "string",
- "icon": "string"
}
]
}, - "featureConfig": {
- "aiPoweredReceipts": true,
- "enableLocalSignUp": true
}, - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "jwt": "string",
- "refreshToken": "string",
- "currencyDisplay": "string",
- "currencyThousandthsSeparator": ",",
- "currencyDecimalSeparator": ",",
- "currencySymbolPosition": "START",
- "currencyHideDecimalPlaces": true,
- "icons": [
- {
- "value": "string",
- "displayValue": "string"
}
]
}
This will delete multiple users by their IDs [SYSTEM ADMIN]
User IDs to delete
userIds required | Array of strings User IDs to delete |
{- "userIds": [
- "string"
]
}
{- "errorMsg": "string"
}
This will return the user's preferences for the currently logged in user [SYSTEM USER]
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userId": 0,
- "quickScanDefaultGroupId": 0,
- "quickScanDefaultPaidById": 0,
- "quickScanDefaultStatus": "OPEN",
- "showLargeImagePreviews": null,
- "userShortcuts": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userPreferncesId": 0,
- "name": "string",
- "url": "string",
- "icon": "string"
}
]
}
This will update the user's preferences for the currently logged in user [SYSTEM USER]
User preferences to update
id required | integer <uint64> User preferences id |
createdAt required | string |
createdBy | integer <uint64> Default: 0 |
createdByString | string Default: "" Created by entity's name |
updatedAt | string Default: "" |
userId required | integer User foreign key |
quickScanDefaultGroupId | integer Default: 0 Group foreign key |
quickScanDefaultPaidById | integer Default: 0 User foreign key |
quickScanDefaultStatus | string (ReceiptStatus) Default: "OPEN" Enum: "OPEN" "NEEDS_ATTENTION" "RESOLVED" "DRAFT" "" Default quick scan status |
showLargeImagePreviews | boolean Default: null Whether to show large image previews |
Array of objects (UserShortcut) |
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userId": 0,
- "quickScanDefaultGroupId": 0,
- "quickScanDefaultPaidById": 0,
- "quickScanDefaultStatus": "OPEN",
- "showLargeImagePreviews": null,
- "userShortcuts": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userPreferncesId": 0,
- "name": "string",
- "url": "string",
- "icon": "string"
}
]
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userId": 0,
- "quickScanDefaultGroupId": 0,
- "quickScanDefaultPaidById": 0,
- "quickScanDefaultStatus": "OPEN",
- "showLargeImagePreviews": null,
- "userShortcuts": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "userPreferncesId": 0,
- "name": "string",
- "url": "string",
- "icon": "string"
}
]
}
This will create a system email
System email to create
host required | string IMAP host |
port required | string IMAP port |
username required | string IMAP username |
password required | string IMAP password |
useStartTLS | boolean Whether to use STARTTLS |
{- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}
This will check system email connectivity
System email to check connectivity
id | integer System email id |
host | string IMAP host |
port | integer IMAP port |
username | string IMAP username |
password | string IMAP password |
{- "id": 0,
- "host": "string",
- "port": 0,
- "username": "string",
- "password": "string"
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "type": "OCR_PROCESSING",
- "status": "SUCCEEDED",
- "startedAt": "string",
- "endedAt": "string",
- "associatedEntityId": 0,
- "associatedEntityType": "NOOP_ENTITY_TYPE",
- "ranByUserId": 0,
- "receiptId": 0,
- "groupId": 0,
- "resultDescription": "string",
- "childSystemTasks": [
- null
]
}
This will get a system email by id
id required | integer Id of system email to get |
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}
This will update a system email by id
id required | integer Id of system email to update |
updatePassword required | boolean Whether or not to update the password |
System email to update
host required | string IMAP host |
port required | string IMAP port |
username required | string IMAP username |
password required | string IMAP password |
useStartTLS | boolean Whether to use STARTTLS |
{- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "useStartTLS": true
}
This will return paged and sorted system emails
Paging and sorting data
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc"
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will return paged system tasks
Paging and sorting data
associatedEntityId | integer Associated entity id |
associatedEntityType | string (AssociatedEntityType) Enum: "NOOP_ENTITY_TYPE" "RECEIPT" "SYSTEM_EMAIL" "RECEIPT_PROCESSING_SETTINGS" "PROMPT" |
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
{- "associatedEntityId": 0,
- "associatedEntityType": "NOOP_ENTITY_TYPE",
- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc"
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will return paged activities for a list of groups
Paging and sorting data
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
groupIds | Array of integers |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc",
- "groupIds": [
- 0
]
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will create a prompt
Prompt to create
name required | string Prompt name |
description | string Prompt description |
prompt required | string Prompt text |
{- "name": "string",
- "description": "string",
- "prompt": "string"
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}
This will get a prompt by id
id required | integer Id of prompt to get |
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}
This will update a prompt by id
id required | integer Id of prompt to update |
Prompt to update
name required | string Prompt name |
description | string Prompt description |
prompt required | string Prompt text |
{- "name": "string",
- "description": "string",
- "prompt": "string"
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}
This will return paged prompts
Paging and sorting data
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc"
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
This will get receipt processing settings by id
id required | integer Id of receipt processing settings to get |
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "aiType": "OPEN_AI_CUSTOM",
- "url": "string",
- "key": "string",
- "model": "string",
- "isVisionModel": true,
- "ocrEngine": "TESSERACT",
- "prompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "promptId": 0
}
This will update receipt processing settings by id
id required | integer Id of receipt processing settings to update |
updateKey required | boolean Whether or not to update the key |
Receipt processing settings to update
name required | string Name of the settings |
description | string Description of the settings |
aiType required | string (AiType) Enum: "OPEN_AI_CUSTOM" "OPEN_AI" "GEMINI" "OLLAMA" |
url | string URL for custom endpoints |
key | string Key for endpoints that require authentication |
model | string LLM model |
isVisionModel | boolean Is vision model |
ocrEngine required | string (OcrEngine) Enum: "TESSERACT" "EASY_OCR" |
promptId required | integer Prompt foreign key |
{- "name": "string",
- "description": "string",
- "aiType": "OPEN_AI_CUSTOM",
- "url": "string",
- "key": "string",
- "model": "string",
- "isVisionModel": true,
- "ocrEngine": "TESSERACT",
- "promptId": 0
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "aiType": "OPEN_AI_CUSTOM",
- "url": "string",
- "key": "string",
- "model": "string",
- "isVisionModel": true,
- "ocrEngine": "TESSERACT",
- "prompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "promptId": 0
}
This will create receipt processing settings
Receipt processing settings to create
name required | string Name of the settings |
description | string Description of the settings |
aiType required | string (AiType) Enum: "OPEN_AI_CUSTOM" "OPEN_AI" "GEMINI" "OLLAMA" |
url | string URL for custom endpoints |
key | string Key for endpoints that require authentication |
model | string LLM model |
isVisionModel | boolean Is vision model |
ocrEngine required | string (OcrEngine) Enum: "TESSERACT" "EASY_OCR" |
promptId required | integer Prompt foreign key |
{- "name": "string",
- "description": "string",
- "aiType": "OPEN_AI_CUSTOM",
- "url": "string",
- "key": "string",
- "model": "string",
- "isVisionModel": true,
- "ocrEngine": "TESSERACT",
- "promptId": 0
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "aiType": "OPEN_AI_CUSTOM",
- "url": "string",
- "key": "string",
- "model": "string",
- "isVisionModel": true,
- "ocrEngine": "TESSERACT",
- "prompt": {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "string",
- "description": "string",
- "prompt": "string"
}, - "promptId": 0
}
This will return paged processing settings
Paging and sorting data
page required | integer Page number |
pageSize required | integer Number of records per page |
orderBy | string field to order on |
sortDirection | string (SortDirection) Enum: "asc" "desc" "" |
{- "page": 0,
- "pageSize": 0,
- "orderBy": "string",
- "sortDirection": "asc"
}
{- "data": [
- {
- "amount": "string",
- "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "comments": [
- {
- "additionalInfo": "string",
- "comment": "string",
- "commentId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "receiptId": 0,
- "updatedAt": "string",
- "userId": 0
}
], - "customFields": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "receiptId": 0,
- "customFieldId": 0,
- "stringValue": "string",
- "dateValue": "string",
- "selectValue": 0,
- "currencyValue": "string",
- "booleanValue": true
}
], - "createdAt": "string",
- "createdBy": 0,
- "date": "string",
- "groupId": 0,
- "id": 0,
- "imageFiles": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "fileType": "string",
- "id": 0,
- "imageData": [
- 0
], - "name": "string",
- "receiptId": 0,
- "size": 0,
- "updatedAt": "string"
}
], - "name": "string",
- "paidByUserId": 0,
- "receiptItems": [
- {
- "IsTaxed": true,
- "amount": "string",
- "chargedToUserId": 0,
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "receiptId": 0,
- "status": "OPEN",
- "linkedItems": [
- { }
], - "categories": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string"
}
], - "resolvedDate": "string",
- "status": "OPEN",
- "tags": [
- {
- "createdAt": "string",
- "createdBy": 0,
- "id": 0,
- "name": "string",
- "description": "string",
- "updatedAt": "string"
}
], - "updatedAt": "string",
- "createdByString": "string"
}
], - "totalCount": 0
}
Receipt processing settings to check connectivity
id | integer Receipt processing settings id |
name | string Name of the settings |
aiType | string (AiType) Enum: "OPEN_AI_CUSTOM" "OPEN_AI" "GEMINI" "OLLAMA" |
url | string URL for custom endpoints |
key | string Key for endpoints that require authentication |
model | string LLM model |
numWorkers | integer Number of workers to use |
ocrEngine | string (OcrEngine) Enum: "TESSERACT" "EASY_OCR" |
promptId | integer Prompt foreign key |
{- "id": 0,
- "name": "string",
- "aiType": "OPEN_AI_CUSTOM",
- "url": "string",
- "key": "string",
- "model": "string",
- "numWorkers": 0,
- "ocrEngine": "TESSERACT",
- "promptId": 0
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "type": "OCR_PROCESSING",
- "status": "SUCCEEDED",
- "startedAt": "string",
- "endedAt": "string",
- "associatedEntityId": 0,
- "associatedEntityType": "NOOP_ENTITY_TYPE",
- "ranByUserId": 0,
- "receiptId": 0,
- "groupId": 0,
- "resultDescription": "string",
- "childSystemTasks": [
- null
]
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "enableLocalSignUp": false,
- "currencyDisplay": "$",
- "currencyThousandthsSeparator": ",",
- "currencyDecimalSeparator": ",",
- "currencySymbolPosition": "START",
- "currencyHideDecimalPlaces": false,
- "debugOcr": false,
- "numWorkers": 1,
- "emailPollingInterval": 1800,
- "receiptProcessingSettingsId": 0,
- "fallbackReceiptProcessingSettingsId": 0,
- "taskConcurrency": 10,
- "taskQueueConfigurations": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "quick_scan",
- "priority": 0
}
]
}
This will update system settings
System settings to update
enableLocalSignUp | boolean Whether local sign up is enabled |
currencyDisplay | string Currency display |
currencyThousandthsSeparator required | string (CurrencySeparator) Enum: "," "." |
currencyDecimalSeparator required | string (CurrencySeparator) Enum: "," "." |
currencySymbolPosition required | string (CurrencySymbolPosition) Enum: "START" "END" |
currencyHideDecimalPlaces required | boolean Whether to hide decimal places |
debugOcr | boolean |
numWorkers | integer Default: 1 Number of workers to use |
emailPollingInterval | integer Email polling interval |
receiptProcessingSettingsId | integer Receipt processing settings foreign key |
fallbackReceiptProcessingSettingsId | integer Fallback receipt processing settings foreign key |
taskConcurrency required | integer Concurrency for task worker |
Array of objects (UpsertTaskQueueConfiguration) |
{- "enableLocalSignUp": true,
- "currencyDisplay": "string",
- "currencyThousandthsSeparator": ",",
- "currencyDecimalSeparator": ",",
- "currencySymbolPosition": "START",
- "currencyHideDecimalPlaces": true,
- "debugOcr": true,
- "numWorkers": 1,
- "emailPollingInterval": 0,
- "receiptProcessingSettingsId": 0,
- "fallbackReceiptProcessingSettingsId": 0,
- "taskConcurrency": 0,
- "taskQueueConfigurations": [
- {
- "name": "quick_scan",
- "priority": 0
}
]
}
{- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "enableLocalSignUp": false,
- "currencyDisplay": "$",
- "currencyThousandthsSeparator": ",",
- "currencyDecimalSeparator": ",",
- "currencySymbolPosition": "START",
- "currencyHideDecimalPlaces": false,
- "debugOcr": false,
- "numWorkers": 1,
- "emailPollingInterval": 1800,
- "receiptProcessingSettingsId": 0,
- "fallbackReceiptProcessingSettingsId": 0,
- "taskConcurrency": 10,
- "taskQueueConfigurations": [
- {
- "id": 0,
- "createdAt": "string",
- "createdBy": 0,
- "createdByString": "",
- "updatedAt": "",
- "name": "quick_scan",
- "priority": 0
}
]
}