summaryrefslogtreecommitdiff
path: root/Media.cs
diff options
context:
space:
mode:
authorJake Mannens <jake@asger.xyz>2026-05-09 02:58:04 +1000
committerJake Mannens <jake@asger.xyz>2026-05-09 02:58:04 +1000
commit477c6c7a4f2ccb2123a89dce1cc51db2dc643833 (patch)
tree49b1f17e8d9ddd65942c4c81fa2a74abb3b0c279 /Media.cs
parent1c2427084ba610553c49140a2ce604fa63ba37c9 (diff)
v0.15av0.15a
Diffstat (limited to 'Media.cs')
-rw-r--r--Media.cs18
1 files changed, 18 insertions, 0 deletions
diff --git a/Media.cs b/Media.cs
index 794e5f2..dc2f623 100644
--- a/Media.cs
+++ b/Media.cs
@@ -69,4 +69,22 @@ public class Media {
return responseContent!;
}
+
+ public async Task<TagDefinition[]> GetTagsAsync(Guid mediaId) =>
+ (await session.HttpClient.GetFromJsonAsync<TagDefinition[]>($"/api/media/{mediaId}/tags"))!;
+
+ public async Task<TagDefinition[]> AddTagsAsync(Guid mediaId, Guid[] tagIds) {
+ var response = await session.HttpClient.PatchAsJsonAsync($"/api/media/{mediaId}/tags", tagIds);
+ return (await response.Content.ReadFromJsonAsync<TagDefinition[]>())!;
+ }
+
+ public async Task<TagDefinition[]> ReplaceTagsAsync(Guid mediaId, Guid[] tagIds) {
+ var response = await session.HttpClient.PutAsJsonAsync($"/api/media/{mediaId}/tags", tagIds);
+ return (await response.Content.ReadFromJsonAsync<TagDefinition[]>())!;
+ }
+
+ public async Task<TagDefinition[]> DeleteTagsAsync(Guid mediaId, Guid[] tagIds) {
+ var response = await session.HttpClient.PatchAsJsonAsync($"/api/media/{mediaId}/tags/delete", tagIds);
+ return (await response.Content.ReadFromJsonAsync<TagDefinition[]>())!;
+ }
}