Đã hoàn thành

Develop an API server that does simple "Friend Management" based on the User Stories below.

You are required to:

Deploy an instance of the API server on the public cloud or provide a 1-step command to run your API server locally, e.g. using a Makefile or Docker Compose) for us to test run the APIs

Write sufficient documentation for the APIs and explain your technical choices

User Stories

1. As a user, I need an API to create a friend connection between two email addresses.

The API should receive the following JSON request:

{

friends:

[

'andy@[login to view URL]',

'john@[login to view URL]'

]

}

The API should return the following JSON response on success:

{

"success": true

}

Please propose JSON responses for any errors that might occur.

2. As a user, I need an API to retrieve the friends list for an email address.

The API should receive the following JSON request:

{

email: 'andy@[login to view URL]'

}

The API should return the following JSON response on success:

{

"success": true,

"friends" :

[

'john@[login to view URL]'

],

"count" : 1

}

Please propose JSON responses for any errors that might occur.

3. As a user, I need an API to retrieve the common friends list between two email addresses.

The API should receive the following JSON request:

{

friends:

[

'andy@[login to view URL]',

'john@[login to view URL]'

]

}

The API should return the following JSON response on success:

{

"success": true,

"friends" :

[

'common@[login to view URL]'

],

"count" : 1

}

Please propose JSON responses for any errors that might occur.

4. As a user, I need an API to subscribe to updates from an email address.

Please note that "subscribing to updates" is NOT equivalent to "adding a friend connection".

The API should receive the following JSON request:

{

"requestor": "lisa@[login to view URL]",

"target": "john@[login to view URL]"

}

The API should return the following JSON response on success:

{

"success": true

}

Please propose JSON responses for any errors that might occur.

5. As a user, I need an API to block updates from an email address.

Suppose "andy@[login to view URL]" blocks "john@[login to view URL]":

if they are connected as friends, then "andy" will no longer receive notifications from "john"

if they are not connected as friends, then no new friends connection can be added

The API should receive the following JSON request:

{

"requestor": "andy@[login to view URL]",

"target": "john@[login to view URL]"

}

The API should return the following JSON response on success:

{

"success": true

}

Please propose JSON responses for any errors that might occur.

6. As a user, I need an API to retrieve all email addresses that can receive updates from an email address.

Eligibility for receiving updates from i.e. "john@[login to view URL]":

has not blocked updates from "john@[login to view URL]", and

at least one of the following:

has a friend connection with "john@[login to view URL]"

has subscribed to updates from "john@[login to view URL]"

has been @mentioned in the update

The API should receive the following JSON request:

{

"sender": "john@[login to view URL]",

"text": "Hello World! kate@[login to view URL]"

}

The API should return the following JSON response on success:

{

"success": true

"recipients":

[

"lisa@[login to view URL]",

"kate@[login to view URL]"

]

}

Please propose JSON responses for any errors that might occur.

Technology

You are required to use Java.

You are allowed to use any frameworks for the language.

Testing

If you write tests in your daily work, we would love to see them in this exercise too.

Kĩ năng: Java

Xem nhiều hơn: i need to develop a server based on websocket, simple order management system web based, simple cart management system, google api server gps tracking using aspnet, simple business management, gui simple school management system software, youtube api server, start develop website using cms simple, develop directory server, simple file management system php, simple project management php, simple time management excel, simple project management php script, simple project management script, simple school management programs, open source simple lead management

Về Bên Thuê:
( 0 nhận xét ) Singapore, Singapore

ID dự án: #17179018

Được trao cho:

digvijay095

I have 6 years experience in building webapps using (SOAP, REST, RPC, et.c) and using popular frameworks like Spring, SpringBoot, DropWizard, EJB, etc.. I have built numerous Java-based Backend architectures, and know Thêm

$155 SGD trong 3 ngày
(0 Đánh Giá)
0.0

7 freelancer đang chào giá trung bình $173 cho công việc này

sun0815

Hi Nice to meet you. I read your api story, ok. I'm java developer and will use httprest client. I will finish your job in 1 hour. Regards.

$100 SGD trong 1 ngày
(3 Nhận xét)
3.5
anuragaadi

Please concern with me before you awarded the project because may be I give u good offer. And one more thing we are best and better then everyone else, we are working on updating this and I would very much happy to pla Thêm

$400 SGD trong 2 ngày
(1 Nhận xét)
1.5
crocodile305

Hi.. How are you? I saw your description carefully your project. Owing to my rich experience in API Server development , i can say i can do this perfectly. I have many top skills like CSS,HTML ,PHP , BOOTSTRAP,JA Thêm

$155 SGD trong 3 ngày
(1 Nhận xét)
1.2
ashish20092009

x x x x xx x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x

$144 SGD trong 3 ngày
(0 Nhận xét)
0.0
sowrabhnayak

I am an experienced Java developer familiar with API development. I deliver quick and quality results. Thank you

$100 SGD trong 2 ngày
(0 Nhận xét)
0.0
vishalbhanot

I have 7+ years of experience in Development I read your job descriptions carefully, I am very interesting in your job. I have developed apps such as Social networking & lifestyle(Tinder style dating, chatting, sha Thêm

$155 SGD trong 3 ngày
(0 Nhận xét)
0.0