diff --git a/code/server/ApiLeapHit/ApiLeapHit.csproj b/code/server/ApiLeapHit/ApiLeapHit.csproj
new file mode 100644
index 0000000..56b0e8b
--- /dev/null
+++ b/code/server/ApiLeapHit/ApiLeapHit.csproj
@@ -0,0 +1,20 @@
+
+
+
+ net6.0
+ enable
+ enable
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/code/server/ApiLeapHit/Controllers/ChatController.cs b/code/server/ApiLeapHit/Controllers/ChatController.cs
new file mode 100644
index 0000000..3bc0b15
--- /dev/null
+++ b/code/server/ApiLeapHit/Controllers/ChatController.cs
@@ -0,0 +1,203 @@
+using ApiLeapHit.Mapper;
+using DataBase.DataManager;
+using DataBase.Entity;
+using DTO;
+using DTO.Factory;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+
+namespace ApiLeapHit.Controllers
+{
+ [Route("api/[controller]")]
+ [ApiController]
+ public class ChatController : Controller
+ {
+
+ private readonly DbDataManager _dataManager;
+ private readonly ILogger _logger;
+
+ public ChatController(DbDataManager dataManager, ILogger logger)
+ {
+ _dataManager = dataManager;
+ _logger = logger;
+ }
+
+ [HttpPost]
+ public async Task AddChat([FromBody] DTOChat dtoChat)
+ {
+ try
+ {
+ var player1 = await _dataManager.GetPlayer(dtoChat.PlayerId1);
+ var player2 = await _dataManager.GetPlayer(dtoChat.PlayerId2);
+
+ await _dataManager.AddChat(dtoChat.ToChat());
+
+ var success_message = $"Le chat entre {player1.name} et {player2.name} a été ajouté avec succès.";
+ _logger.LogInformation(success_message);
+ return Ok(new ApiResponse