From fd3dd57cd74999acde86934b045f121cba757c4d Mon Sep 17 00:00:00 2001 From: dinosoeren Date: Tue, 24 Mar 2026 11:32:15 -0600 Subject: [PATCH] feat(catalog): optional Section.groups + CatalogGroupDisplayType SLIDING_WINDOW Adds nested Group under catalog sections, enum for per-group layout, and regenerates merged OpenAPI docs. part of ENG-12026 --- docs/gen/redoc.ingress.v1.html | 762 +- docs/gen/redoc.v1.html | 4 +- docs/gen/swagger.v1.json | 12104 +++++++++++++----- server/egress/shop/catalog/v1/enums.proto | 8 + server/egress/shop/catalog/v1/service.proto | 26 +- 5 files changed, 9349 insertions(+), 3555 deletions(-) diff --git a/docs/gen/redoc.ingress.v1.html b/docs/gen/redoc.ingress.v1.html index cd97840..a79de60 100644 --- a/docs/gen/redoc.ingress.v1.html +++ b/docs/gen/redoc.ingress.v1.html @@ -12,377 +12,377 @@ margin: 0; } - -

Stash Managed Catalog API (1.0.0)

Download OpenAPI specification:

Read-only API for querying the Stash managed product catalog. Designed for server-to-server communication between partner backends and Stash services.

-

Base URLs

Stash Managed Catalog API (1.0.0)

Download OpenAPI specification:

Read-only API for querying the Stash managed product catalog. Designed for server-to-server communication between partner backends and Stash services.

+

Base URLs

://test-api.stash.gg/api/v1/studio/{shop_id}/products -

Authentication

Authentication

Example (curl) curl -H "stash-hmac-signature: $SIGNATURE" \ "https://test-api.stash.gg/api/v1/studio/{shop_id}/products" -

ManagedCatalog

ManagedCatalog

Read-only endpoints for querying the managed product catalog

-

List published products

Retrieves a paginated list of published products for a shop. Results are ordered by creation date (most recent first). Only published products are returned; drafts and deleted products are excluded.

-
Authorizations:
hmac
path Parameters
shopId
required
string

Shop identifier from Stash Studio

-
query Parameters
limit
integer <int64>

Maximum results per page. Defaults to 50. Maximum allowed value is 100.

-
offset
integer <int64>

Pagination offset. Use next_offset from the previous response to fetch the next page. Defaults to 0.

-

Responses

Response samples

Content type
application/json
{
  • "products": [
    ],
  • "nextOffset": 0
}

Get a single published product

Retrieves a single published product by its GUID. Returns NOT_FOUND if the product does not exist or is not published.

-
Authorizations:
hmac
path Parameters
shopId
required
string

Shop identifier from Stash Studio

-
guid
required
string

Stash-internal unique product identifier (UUID)

-

Responses

Response samples

Content type
application/json
{
  • "product": {
    }
}
+

List published products

Retrieves a paginated list of published products for a shop. Results are ordered by creation date (most recent first). Only published products are returned; drafts and deleted products are excluded.

+
Authorizations:
hmac
path Parameters
shopId
required
string

Shop identifier from Stash Studio

+
query Parameters
limit
integer <int64>

Maximum results per page. Defaults to 50. Maximum allowed value is 100.

+
offset
integer <int64>

Pagination offset. Use next_offset from the previous response to fetch the next page. Defaults to 0.

+

Responses

Response samples

Content type
application/json
{
  • "products": [
    ],
  • "nextOffset": 0
}

Get a single published product

Retrieves a single published product by its GUID. Returns NOT_FOUND if the product does not exist or is not published.

+
Authorizations:
hmac
path Parameters
shopId
required
string

Shop identifier from Stash Studio

+
guid
required
string

Stash-internal unique product identifier (UUID)

+

Responses

Response samples

Content type
application/json
{
  • "product": {
    }
}