nicolasbeauvais / CrypTalker-Server

Encrypted Android mobile chat application backend (Laravel)
12 stars 10 forks source link

CrypTalker

CrypTalker is a open source Android application for strong (AES-256) crypted messaging. This repository contain only the application backend.

Not a single message is stored in database.

Check out the Java android app

API usage

Post request data are explained in the post parameters section of this readme.

Users

HTTP verb Route Explanation Logged
POST /api/users/register Register a user to the app No
POST /api/users/login Log a user to the app with is pseudo or email No
POST /api/users/login-with-token Log a user to the app with is id and token No
GET /api/users/logout Logout a user Yes
GET /api/users/info/ Get all the info for the logged user Yes

Register Parameters:

Login Parameters:

LoginWithToken Parameters:

Register & Login return a user remember token to store in the client app (One different token by user<=>app).

Info
HTTP verb Route Explanation Logged
POST /api/friends/request/ Make a friend request Yes
GET /api/friends/accept/:user_id Validate a friend invite Yes
GET /api/friends/refuse/:user_id Refuse a friend invite Yes
GET /api/friends/block/:user_id Block a friend Yes
GET /api/friends/unblock/:user_id Unblock a friend Yes

Request Parameters:

Rooms

HTTP verb Route Explanation Logged
POST /api/rooms/create Create a room Yes
POST /api/rooms/name Add a name to the room Yes
GET /api/rooms/add/:user_id/:room_id Add a user to the room Yes
GET /api/rooms/quit/:room_id Remove the user from the room Yes

Create Parameters:

Name Parameters:

Message (Ratchet PHP websocket)

HTTP verb Route Explanation Logged
POST /api/messages/new Send a message Yes

New Parameters: