From 146ecfce9013f931e5d5c0a5ec1f74f4183affcf Mon Sep 17 00:00:00 2001 From: Thomas Rittson Date: Thu, 15 Jan 2026 15:53:58 +1000 Subject: [PATCH] Use POST instead of PUT --- .../Public/Controllers/MembersController.cs | 4 ++-- .../Controllers/MembersControllerTests.cs | 20 +++++++++---------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/Api/AdminConsole/Public/Controllers/MembersController.cs b/src/Api/AdminConsole/Public/Controllers/MembersController.cs index bc26dd6e5e..220c812cae 100644 --- a/src/Api/AdminConsole/Public/Controllers/MembersController.cs +++ b/src/Api/AdminConsole/Public/Controllers/MembersController.cs @@ -273,7 +273,7 @@ public class MembersController : Controller /// Revoke a member's access to an organization. /// /// The ID of the member to be revoked. - [HttpPut("{id}/revoke")] + [HttpPost("{id}/revoke")] [ProducesResponseType((int)HttpStatusCode.OK)] [ProducesResponseType(typeof(ErrorResponseModel), (int)HttpStatusCode.BadRequest)] [ProducesResponseType((int)HttpStatusCode.NotFound)] @@ -307,7 +307,7 @@ public class MembersController : Controller /// Restores a previously revoked member of the organization. /// /// The identifier of the member to be restored. - [HttpPut("{id}/restore")] + [HttpPost("{id}/restore")] [ProducesResponseType((int)HttpStatusCode.OK)] [ProducesResponseType(typeof(ErrorResponseModel), (int)HttpStatusCode.BadRequest)] [ProducesResponseType((int)HttpStatusCode.NotFound)] diff --git a/test/Api.IntegrationTest/AdminConsole/Public/Controllers/MembersControllerTests.cs b/test/Api.IntegrationTest/AdminConsole/Public/Controllers/MembersControllerTests.cs index 9727bbf5fc..f67d7ac071 100644 --- a/test/Api.IntegrationTest/AdminConsole/Public/Controllers/MembersControllerTests.cs +++ b/test/Api.IntegrationTest/AdminConsole/Public/Controllers/MembersControllerTests.cs @@ -271,7 +271,7 @@ public class MembersControllerTests : IClassFixture, IAsy var (_, orgUser) = await OrganizationTestHelpers.CreateNewUserWithAccountAsync( _factory, _organization.Id, OrganizationUserType.User); - var response = await _client.PutAsync($"/public/members/{orgUser.Id}/revoke", null); + var response = await _client.PostAsync($"/public/members/{orgUser.Id}/revoke", null); Assert.Equal(HttpStatusCode.OK, response.StatusCode); @@ -287,10 +287,10 @@ public class MembersControllerTests : IClassFixture, IAsy var (_, orgUser) = await OrganizationTestHelpers.CreateNewUserWithAccountAsync( _factory, _organization.Id, OrganizationUserType.User); - var revokeResponse = await _client.PutAsync($"/public/members/{orgUser.Id}/revoke", null); + var revokeResponse = await _client.PostAsync($"/public/members/{orgUser.Id}/revoke", null); Assert.Equal(HttpStatusCode.OK, revokeResponse.StatusCode); - var response = await _client.PutAsync($"/public/members/{orgUser.Id}/revoke", null); + var response = await _client.PostAsync($"/public/members/{orgUser.Id}/revoke", null); Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode); var error = await response.Content.ReadFromJsonAsync(); @@ -300,7 +300,7 @@ public class MembersControllerTests : IClassFixture, IAsy [Fact] public async Task PutRevoke_NotFound_ReturnsNotFound() { - var response = await _client.PutAsync($"/public/members/{Guid.NewGuid()}/revoke", null); + var response = await _client.PostAsync($"/public/members/{Guid.NewGuid()}/revoke", null); Assert.Equal(HttpStatusCode.NotFound, response.StatusCode); } @@ -321,7 +321,7 @@ public class MembersControllerTests : IClassFixture, IAsy await _loginHelper.LoginWithOrganizationApiKeyAsync(_organization.Id); // Try to revoke the user from the other organization - var response = await _client.PutAsync($"/public/members/{orgUser.Id}/revoke", null); + var response = await _client.PostAsync($"/public/members/{orgUser.Id}/revoke", null); Assert.Equal(HttpStatusCode.NotFound, response.StatusCode); } @@ -332,10 +332,10 @@ public class MembersControllerTests : IClassFixture, IAsy var (_, orgUser) = await OrganizationTestHelpers.CreateNewUserWithAccountAsync( _factory, _organization.Id, OrganizationUserType.User); - var revokeResponse = await _client.PutAsync($"/public/members/{orgUser.Id}/revoke", null); + var revokeResponse = await _client.PostAsync($"/public/members/{orgUser.Id}/revoke", null); Assert.Equal(HttpStatusCode.OK, revokeResponse.StatusCode); - var response = await _client.PutAsync($"/public/members/{orgUser.Id}/restore", null); + var response = await _client.PostAsync($"/public/members/{orgUser.Id}/restore", null); Assert.Equal(HttpStatusCode.OK, response.StatusCode); @@ -351,7 +351,7 @@ public class MembersControllerTests : IClassFixture, IAsy var (_, orgUser) = await OrganizationTestHelpers.CreateNewUserWithAccountAsync( _factory, _organization.Id, OrganizationUserType.User); - var response = await _client.PutAsync($"/public/members/{orgUser.Id}/restore", null); + var response = await _client.PostAsync($"/public/members/{orgUser.Id}/restore", null); Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode); var error = await response.Content.ReadFromJsonAsync(); @@ -361,7 +361,7 @@ public class MembersControllerTests : IClassFixture, IAsy [Fact] public async Task PutRestore_NotFound_ReturnsNotFound() { - var response = await _client.PutAsync($"/public/members/{Guid.NewGuid()}/restore", null); + var response = await _client.PostAsync($"/public/members/{Guid.NewGuid()}/restore", null); Assert.Equal(HttpStatusCode.NotFound, response.StatusCode); } @@ -382,7 +382,7 @@ public class MembersControllerTests : IClassFixture, IAsy await _loginHelper.LoginWithOrganizationApiKeyAsync(_organization.Id); // Try to restore the user from the other organization - var response = await _client.PutAsync($"/public/members/{orgUser.Id}/restore", null); + var response = await _client.PostAsync($"/public/members/{orgUser.Id}/restore", null); Assert.Equal(HttpStatusCode.NotFound, response.StatusCode); }