From 6a7342659dad0cb8107cdd8a2ea2c0330d80d28d Mon Sep 17 00:00:00 2001 From: Dev Keshwani Date: Thu, 31 Jul 2025 18:49:30 +0530 Subject: [PATCH 1/2] fix: COMMUNITY_BASE_URL to the production API endpoint --- app/src/main/java/com/dscvit/vitty/util/WebConstants.kt | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/app/src/main/java/com/dscvit/vitty/util/WebConstants.kt b/app/src/main/java/com/dscvit/vitty/util/WebConstants.kt index 577ca55..6897fae 100644 --- a/app/src/main/java/com/dscvit/vitty/util/WebConstants.kt +++ b/app/src/main/java/com/dscvit/vitty/util/WebConstants.kt @@ -1,12 +1,6 @@ package com.dscvit.vitty.util object WebConstants { - const val COMMUNITY_BASE_URL = -// "https://vitty-api.dscvit.com" - - "https://visiting-eba-vitty-d61856bb.koyeb.app" - -// "https://f9f6e04fe202.ngrok-free.app" -// "http://192.168.137.238" + const val COMMUNITY_BASE_URL = "https://api-vitty.dscvit.com" const val TIMEOUT = 10 } From c463a153c28c31a24a62451b2afd710203055647 Mon Sep 17 00:00:00 2001 From: Dev Keshwani Date: Sat, 2 Aug 2025 09:35:43 +0530 Subject: [PATCH 2/2] feat: implement create circle API with request body --- .../vitty/network/api/community/APICommunity.kt | 5 +++-- .../api/community/APICommunityRestClient.kt | 14 +++++++++++--- .../responses/circle/CircleBatchRequestResponse.kt | 5 +++++ 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/dscvit/vitty/network/api/community/APICommunity.kt b/app/src/main/java/com/dscvit/vitty/network/api/community/APICommunity.kt index 1861769..bbc5bfe 100644 --- a/app/src/main/java/com/dscvit/vitty/network/api/community/APICommunity.kt +++ b/app/src/main/java/com/dscvit/vitty/network/api/community/APICommunity.kt @@ -5,6 +5,7 @@ import com.dscvit.vitty.network.api.community.requests.CircleBatchRequestBody import com.dscvit.vitty.network.api.community.requests.UsernameRequestBody import com.dscvit.vitty.network.api.community.responses.circle.CircleBatchRequestResponse import com.dscvit.vitty.network.api.community.responses.circle.CircleRequestsResponse +import com.dscvit.vitty.network.api.community.responses.circle.CreateCircleRequest import com.dscvit.vitty.network.api.community.responses.circle.CreateCircleResponse import com.dscvit.vitty.network.api.community.responses.circle.JoinCircleResponse import com.dscvit.vitty.network.api.community.responses.requests.RequestsResponse @@ -129,10 +130,10 @@ interface APICommunity { @Header("Authorization") authToken: String, ): Call - @POST("/api/v3/circles/create/{circleName}") + @POST("/api/v3/circles/create") fun createCircle( @Header("Authorization") authToken: String, - @Path("circleName") circleName: String, + @Body requestBody: CreateCircleRequest // ): Call @POST("/api/v3/circles/join") diff --git a/app/src/main/java/com/dscvit/vitty/network/api/community/APICommunityRestClient.kt b/app/src/main/java/com/dscvit/vitty/network/api/community/APICommunityRestClient.kt index 462f29c..d9ef161 100644 --- a/app/src/main/java/com/dscvit/vitty/network/api/community/APICommunityRestClient.kt +++ b/app/src/main/java/com/dscvit/vitty/network/api/community/APICommunityRestClient.kt @@ -7,6 +7,7 @@ import com.dscvit.vitty.network.api.community.requests.CircleBatchRequestBody import com.dscvit.vitty.network.api.community.requests.UsernameRequestBody import com.dscvit.vitty.network.api.community.responses.circle.CircleBatchRequestResponse import com.dscvit.vitty.network.api.community.responses.circle.CircleRequestsResponse +import com.dscvit.vitty.network.api.community.responses.circle.CreateCircleRequest import com.dscvit.vitty.network.api.community.responses.circle.CreateCircleResponse import com.dscvit.vitty.network.api.community.responses.circle.JoinCircleResponse import com.dscvit.vitty.network.api.community.responses.requests.RequestsResponse @@ -235,11 +236,12 @@ class APICommunityRestClient { val bearerToken = "Bearer $token" Timber.d("APICommunityRestClient.createCircle called with circleName: $circleName") + val requestBody = CreateCircleRequest(circleName = circleName) mApiUser = retrofit.create(APICommunity::class.java) - val apiCreateCircleCall = mApiUser!!.createCircle(bearerToken, circleName) + val apiCreateCircleCall = mApiUser!!.createCircle(bearerToken, requestBody) + Timber.d("API call created with request body, enqueueing request...") - Timber.d("API call created, enqueueing request...") apiCreateCircleCall.enqueue( object : Callback { @@ -248,7 +250,13 @@ class APICommunityRestClient { response: Response, ) { Timber.d("API Response received: ${response.code()}, body: ${response.body()}") - retrofitCreateCircleListener.onSuccess(call, response.body()) + if (response.isSuccessful) { + retrofitCreateCircleListener.onSuccess(call, response.body()) + } else { + val errorBody = response.errorBody()?.string() + Timber.e("API Error: ${response.code()} - $errorBody") + retrofitCreateCircleListener.onError(call, Throwable("API Error: ${response.code()} - ${errorBody ?: "Unknown error"}")) + } } override fun onFailure( diff --git a/app/src/main/java/com/dscvit/vitty/network/api/community/responses/circle/CircleBatchRequestResponse.kt b/app/src/main/java/com/dscvit/vitty/network/api/community/responses/circle/CircleBatchRequestResponse.kt index 0573154..75d53d7 100644 --- a/app/src/main/java/com/dscvit/vitty/network/api/community/responses/circle/CircleBatchRequestResponse.kt +++ b/app/src/main/java/com/dscvit/vitty/network/api/community/responses/circle/CircleBatchRequestResponse.kt @@ -8,3 +8,8 @@ data class CircleBatchResponseItem( data class CircleBatchRequestResponse( val data: List, ) + + +data class CreateCircleRequest( + val circleName: String +)