forked from LykosAI/StabilityMatrix
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathICivitTRPCApi.cs
More file actions
74 lines (66 loc) · 2.53 KB
/
ICivitTRPCApi.cs
File metadata and controls
74 lines (66 loc) · 2.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
using Refit;
using StabilityMatrix.Core.Models.Api.CivitTRPC;
namespace StabilityMatrix.Core.Api;
[Headers(
"Content-Type: application/x-www-form-urlencoded",
"Referer: https://civitai.com",
"Origin: https://civitai.com"
)]
public interface ICivitTRPCApi
{
[QueryUriFormat(UriFormat.UriEscaped)]
[Get("/api/trpc/userProfile.get")]
Task<CivitUserProfileResponse> GetUserProfile(
[Query] CivitUserProfileRequest input,
[Authorize] string bearerToken,
CancellationToken cancellationToken = default
);
[QueryUriFormat(UriFormat.UriEscaped)]
[Get("/api/trpc/buzz.getUserAccount")]
Task<CivitTrpcArrayResponse<CivitUserAccountResponse>> GetUserAccount(
[Query] string input,
[Authorize] string bearerToken,
CancellationToken cancellationToken = default
);
[QueryUriFormat(UriFormat.UriEscaped)]
[Get("/api/trpc/buzz.getUserAccount")]
Task<CivitTrpcArrayResponse<CivitUserAccountResponse>> GetUserAccount(
[Authorize] string bearerToken,
CancellationToken cancellationToken = default
);
/// <summary>
/// Calls <see cref="GetUserAccount(string, string, CancellationToken)"/> with default JSON input.
/// Not required and returns 401 since Oct 2025 since civit changes.
/// Mainly just use <see cref="GetUserAccount(string, CancellationToken)"/> instead.
/// </summary>
Task<CivitTrpcArrayResponse<CivitUserAccountResponse>> GetUserAccountDefault(
string bearerToken,
CancellationToken cancellationToken = default
)
{
return GetUserAccount(
"{\"json\":null,\"meta\":{\"values\":[\"undefined\"]}}",
bearerToken,
cancellationToken
);
}
[QueryUriFormat(UriFormat.UriEscaped)]
[Get("/api/trpc/user.getById")]
Task<CivitTrpcResponse<CivitGetUserByIdResponse>> GetUserById(
[Query] CivitGetUserByIdRequest input,
[Authorize] string bearerToken,
CancellationToken cancellationToken = default
);
[Post("/api/trpc/user.toggleFavoriteModel")]
Task<HttpResponseMessage> ToggleFavoriteModel(
[Body] CivitUserToggleFavoriteModelRequest request,
[Authorize] string bearerToken,
CancellationToken cancellationToken = default
);
[QueryUriFormat(UriFormat.UriEscaped)]
[Get("/api/trpc/image.getGenerationData")]
Task<CivitTrpcResponse<CivitImageGenerationDataResponse>> GetImageGenerationData(
[Query] string input,
CancellationToken cancellationToken = default
);
}