Skip to main content

Frontend — Diferenças de Contrato

POST /api/show-case-new/

O que mudou no request: campo showCaseType adicionado.

{
"schema": "arezzo",
"storeId": 123,
"storeName": "Loja Centro",
"maxInstallments": 10,
"userId": 456,
"userName": "João Silva",
"userPhone": "11999999999",
"name": "Vitrine de Verão",
"codeBrand": 1,
"dateExpiration": "2026-07-25T00:00:00",
"showCaseItems": [],
+ "showCaseType": 4
}

Response: sem alteração.

Valores de showCaseType:

ValorTipo
1Store (vitrine normal)
4SellerStock (estoque do vendedor)

Regras:

  • showCaseType = 4 (SellerStock)showCaseItems ignorado
  • showCaseType = 4 (SellerStock) → só pode existir uma por (userId, storeId) — API retorna erro se já existir

PUT /api/show-case-new/

O que mudou no request: campo showCaseType adicionado.

{
"id": "ce30e80b-88c8-4e6c-806f-abbca51940cc",
"dateCreated": "2026-06-01T10:00:00",
"schema": "arezzo",
"storeId": 123,
"storeName": "Loja Centro",
"maxInstallments": 10,
"userId": 456,
"userName": "João Silva",
"userPhone": "11999999999",
"name": "Vitrine de Verão",
"codeBrand": 1,
"dateExpiration": "2026-07-25T00:00:00",
"showCaseItems": [101, 102, 103],
+ "showCaseType": 4
}

Response: sem alteração.

Regras:

  • showCaseType = 4 (SellerStock) → API ignora todos os campos exceto dateExpiration

GET /api/show-case-new/v2/store/{storeId}NOVO ENDPOINT

Versão evoluída do GET /api/show-case-new/store/{storeId}. Usar este no lugar do v1 para a tela de listagem de vitrines.

Request: igual ao v1.

GET /api/show-case-new/v2/store/123?pageNumber=1&pageSize=10&termSearch=vitrine&orderBy=1
Authorization: Bearer {token}

O que mudou no response: estrutura de paginação alterada + campo hasSellerStock adicionado.

- {
- "items": [...],
- "total": 1,
- "pageNumber": 1,
- "pageSize": 10
- }

+ {
+ "data": [...],
+ "total": 1,
+ "pageNumber": 1,
+ "pageSize": 10,
+ "hasSellerStock": true
+ }

Uso do hasSellerStock:

  • true → vendedor já tem vitrine SellerStock ativa → desabilitar botão de criação
  • false → vendedor não tem → habilitar botão de criação

GET /api/show-case-new/products?id={showCaseId}

Sem alteração de contrato. Request e response idênticos. A mudança é apenas interna na API.


GET /api/show-case-new/app/{showCaseId}

O que mudou no response: campos showCaseType e totalItems adicionados.

{
"id": "ce30e80b-88c8-4e6c-806f-abbca51940cc",
"dateCreated": "2026-06-01T10:00:00",
"dateExpiration": "2026-07-25T00:00:00",
"schema": "arezzo",
"storeid": 123,
"storename": "Loja Centro",
"codeBrand": 1,
"url": "https://...",
"maxinstallments": 10,
"userid": 456,
"username": "João Silva",
"userphone": "11999999999",
"name": "Vitrine de Verão",
+ "showCaseType": 4,
+ "totalItems": 87,
"showCaseitems": [...]
}

Comportamento do showCaseitems por tipo:

showCaseTypeshowCaseitemstotalItems
1 (Store)Lista completa dos produtos curadosQuantidade da lista
4 (SellerStock)4 primeiros produtos (preview)Count total do estoque da loja no ES