Skip to content

Commit 3ce7a3c

Browse files
Move ApiEndpoints in a file for easy maintenance 🎨
1 parent 60886cd commit 3ce7a3c

File tree

3 files changed

+25
-5
lines changed

3 files changed

+25
-5
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
namespace Notion.Client
2+
{
3+
public static class ApiEndpoints
4+
{
5+
public static class DatabasesApiUrls
6+
{
7+
public static string Retrieve(string databaseId) => $"/v1/databases/{databaseId}";
8+
public static string List() => "/v1/databases";
9+
public static string Query(string databaseId) => $"/v1/databases/{databaseId}/query";
10+
}
11+
12+
public static class UsersApiUrls
13+
{
14+
public static string Retrieve(string userId) => $"/v1/users/{userId}";
15+
public static string List() => "/v1/users";
16+
}
17+
}
18+
}

Src/Notion.Client/Api/Databases/DatabasesClient.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System;
22
using System.Collections.Generic;
33
using System.Threading.Tasks;
4+
using static Notion.Client.ApiEndpoints;
45

56
namespace Notion.Client
67
{
@@ -24,7 +25,7 @@ public async Task<Database> RetrieveAsync(string databaseId)
2425
{
2526
try
2627
{
27-
return await _client.GetAsync<Database>($"/v1/databases/{databaseId}");
28+
return await _client.GetAsync<Database>(DatabasesApiUrls.Retrieve(databaseId));
2829
}
2930
catch (Exception e)
3031
{
@@ -44,7 +45,7 @@ public async Task<PaginatedList<Database>> ListAsync(DatabasesListParameters dat
4445
{ "page_size", databasesListQueryParmaters?.PageSize }
4546
};
4647

47-
return await _client.GetAsync<PaginatedList<Database>>("/v1/databases", queryParams);
48+
return await _client.GetAsync<PaginatedList<Database>>(DatabasesApiUrls.List(), queryParams);
4849
}
4950
catch (Exception e)
5051
{
@@ -58,7 +59,7 @@ public async Task<PaginatedList<Page>> QueryAsync(string databaseId, DatabasesQu
5859
try
5960
{
6061
var body = (IDatabaseQueryBodyParameters)databasesQueryParameters;
61-
return await _client.PostAsync<PaginatedList<Page>>($"/v1/databases/{databaseId}/query", body);
62+
return await _client.PostAsync<PaginatedList<Page>>(DatabasesApiUrls.Query(databaseId), body);
6263
}
6364
catch (Exception e)
6465
{

Src/Notion.Client/Api/Users/UsersClient.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System;
22
using System.Threading.Tasks;
3+
using static Notion.Client.ApiEndpoints;
34

45
namespace Notion.Client
56
{
@@ -22,7 +23,7 @@ public async Task<User> RetrieveAsync(string userId)
2223
{
2324
try
2425
{
25-
return await _client.GetAsync<User>($"/v1/users/{userId}");
26+
return await _client.GetAsync<User>(UsersApiUrls.Retrieve(userId));
2627
}
2728
catch (Exception e)
2829
{
@@ -34,7 +35,7 @@ public async Task<PaginatedList<User>> ListAsync()
3435
{
3536
try
3637
{
37-
return await _client.GetAsync<PaginatedList<User>>("/v1/users");
38+
return await _client.GetAsync<PaginatedList<User>>(UsersApiUrls.List());
3839
}
3940
catch (Exception e)
4041
{

0 commit comments

Comments
 (0)