Application is a simple REST-API server, which provides basic CRUD operations over a connected database for a simple CRM system and by default, listens on port 8087.
Preferred way of installation is to pull and run prepared docker image docker pull beo1975/ronja-server:1.3.3
.
Precondition is to have docker
installed on the hosting OS.
Alternatively is possible to build and run the application as a fat jar on any hosting OS with Java 21
installed.
Application expects running instance of MySQL database engine. It's recommended to install and run MySQL as a docker image by usage of prepared
docker-compose.yml
file. No other services are required.
For sending requests and receiving responses use Postman
, curl
or any web browser.
Following endpoints are available for usage:
Request body example for customer:
{
"companyName": "FirstCorp",
"category": "LEVEL_1",
"focus": "BUILDER",
"status": "ACTIVE"
}
Allowed values for:
category
: LEVEL_1, LEVEL_2, LEVEL_3focus
: BUILDER, MANUFACTURE, SPECIALIZED_MANUFACTURE, TRADEstatus
: ACTIVE, INACTIVEdayCount
.Request body example for representative:
{
"firstName": "Employee",
"lastName": "First",
"position": "CFO",
"region": "EMEA",
"notice": "",
"status": "ACTIVE",
"lastVisit": "2021-11-08",
"scheduledVisit": "2022-12-21",
"phoneNumbers": [
{
"contact": "+456789123",
"primary": true,
"type": "work"
}
],
"emails": [
{
"contact": "john@example.com",
"primary": true,
"type": "work"
},
{
"contact": "bob@example.com",
"primary": false,
"type": "home"
}
],
"customer": {
"id": 1,
"companyName": "FirstCorp",
"category": "LEVEL_1",
"focus": "BUILDER",
"status": "ACTIVE"
},
"contactType": "PERSONAL"
}
Allowed values for:
status
: ACTIVE, INACTIVEcontactType
: PERSONAL, MAIL, PHONE, ON_LINElastVisit
: date must be past or presentscheduledVisit
: date must be present or in the future