diff --git a/docs/changelog/0.3.0.md b/docs/changelog/0.3.0.md index 0fd5cae3..1d45bf2f 100644 --- a/docs/changelog/0.3.0.md +++ b/docs/changelog/0.3.0.md @@ -11,6 +11,7 @@ _Not Released Yet_ - Added support for `/v2/guild/upgrades`. [[GH-92](https://github.com/GW2ToolBelt/api-generator/issues/92)] - Added support for `/v2/minis`. [[GH-104](https://github.com/GW2ToolBelt/api-generator/issues/104)] - Added support for `/v2/mounts`. [[GH-105](https://github.com/GW2ToolBelt/api-generator/issues/105)] + - Added support for `/v2/mounts/skins`. [[GH-106](https://github.com/GW2ToolBelt/api-generator/issues/106)] - Added support for `/v2/pets`. [[GH-110](https://github.com/GW2ToolBelt/api-generator/issues/110)] - Added support for `/v2/quaggans`. [[GH-122](https://github.com/GW2ToolBelt/api-generator/issues/122)] - Added support for `/v2/raids`. [[GH-125](https://github.com/GW2ToolBelt/api-generator/issues/125)] diff --git a/src/main/kotlin/com/gw2tb/apigen/internal/spec/GW2v2.kt b/src/main/kotlin/com/gw2tb/apigen/internal/spec/GW2v2.kt index ff225a76..144e1250 100644 --- a/src/main/kotlin/com/gw2tb/apigen/internal/spec/GW2v2.kt +++ b/src/main/kotlin/com/gw2tb/apigen/internal/spec/GW2v2.kt @@ -1049,6 +1049,26 @@ internal val GW2v2 = GW2APIVersion { schema(array(STRING, "the available sub-endpoints")) } + "/Mounts/Skins" { + summary = "Returns information about mount skins." + cache = 1.hours + isLocalized = true + + supportedQueries(BY_ID, BY_IDS, BY_PAGE) + schema(record(name = "MountSkin", description = "Information about a mount skin.") { + CamelCase("id").."ID"(INTEGER, "the mount skin's ID") + "Name"(STRING, "the mount skin's name") + "Icon"(STRING, "a render service URL for the mount skin's icon") + "Mount"(STRING, "the mount type id for the mount skin") + SerialName("dye_slots").."DyeSlots"( + description = "the mount skin's dye slots", + type = array(record(name = "DyeSlot", description = "Information about a dye slot.") { + CamelCase("color_id").."ColorID"(STRING, "the ID of the color") + "Material"(STRING, "the slot's material") + }) + ) + }) + } "/Outfits" { summary = "Returns information about outfits." cache = 1.hours diff --git a/src/test/kotlin/com/gw2tb/apigen/test/spec/GW2v2.kt b/src/test/kotlin/com/gw2tb/apigen/test/spec/GW2v2.kt index 810b7d29..4038750c 100644 --- a/src/test/kotlin/com/gw2tb/apigen/test/spec/GW2v2.kt +++ b/src/test/kotlin/com/gw2tb/apigen/test/spec/GW2v2.kt @@ -260,6 +260,11 @@ class GW2v2 : SpecTest( expectEndpoint("/Mounts") .cacheTime(DURATION_INFINITE) + expectEndpoint("/Mounts/Skins") + .cacheTime(1.hours) + .localized() + .queryTypes(BY_ID, BY_IDS, BY_PAGE) + expectEndpoint("/Outfits") .cacheTime(1.hours) .localized()