Recursos da loja
Lista os recursos que a loja do seller pode usar pelo plano e consulta se um deles está liberado.
Estas três rotas respondem o que a loja (seller) pode usar de acordo com o plano contratado, não o que uma pessoa específica pode fazer. Para as permissões da pessoa use me/privileges. Vendedores sem permissões de configuração (vendor_settings e afins) não acessam a lista.
/api/v1/vendor/privilegesSellerRecursos liberados à loja
Devolve os recursos que a loja tem: os padrão (is_default: true) mais os extras que o plano ou a administração liberaram. Loja suspensa recebe lista vazia.
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso do usuário (veja Tokens).Exemplo de requisição
curl -X GET "$BASE_URL/api/v1/vendor/privileges" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"privileges": [
{
"privilege": "manage_products",
"section_id": "catalog",
"description": "Create, edit, and delete own products",
"is_default": true
},
{
"privilege": "manage_orders",
"section_id": "orders",
"description": "View and manage orders for own products",
"is_default": true
}
],
"total": 2
}Campos da resposta
privilegesobject[]Os recursos.
privileges[].privilegestringprivileges[].section_idstringprivileges[].descriptionstringprivileges[].is_defaultbooleantrue quando é concedido a toda loja ativa, qualquer plano.totalintegerErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Token ausente, inválido, expirado ou revogado. | {"error":"invalid or expired token"} |
| 403 | Falta ao usuário todos os privilégios de configuração do seller (vendor_settings e afins). | {"error":"insufficient vendor privileges","privilege_required_any":["vendor_settings","vendor_view_settings","..."]} |
| 404 | Usuário sem seller vinculado, ou seller inexistente. | {"error":"VENDOR_NOT_FOUND"} |
| 500 | Falha ao ler. | {"error":"VENDOR_PRIVILEGES_FAILED","detail":"..."} |
/api/v1/vendor/privileges/allSellerTodos os recursos possíveis
Lista o catálogo completo de recursos de seller, tenha a loja o recurso ou não. Útil para montar uma tela de comparação de planos.
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso do usuário (veja Tokens).Exemplo de requisição
curl -X GET "$BASE_URL/api/v1/vendor/privileges/all" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"privileges": [
{
"privilege": "manage_products",
"section_id": "catalog",
"description": "Create, edit, and delete own products",
"is_default": true
},
{
"privilege": "manage_promotions",
"section_id": "marketing",
"description": "Create and manage promotions and coupons",
"is_default": false
}
],
"total": 2
}Campos da resposta
privilegesobject[]Os recursos.
privileges[].privilegestringprivileges[].section_idstringprivileges[].descriptionstringprivileges[].is_defaultbooleantrue quando é concedido a toda loja ativa, qualquer plano.totalintegerErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Token ausente, inválido, expirado ou revogado. | {"error":"invalid or expired token"} |
| 403 | Falta ao usuário todos os privilégios de configuração do seller (vendor_settings e afins). | {"error":"insufficient vendor privileges","privilege_required_any":["vendor_settings","vendor_view_settings","..."]} |
/api/v1/vendor/privileges/checkSellerConferir se um recurso está liberado
Foi desenhada para responder se a loja pode usar um recurso, com allowed e, quando negado, o motivo.
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso do usuário (veja Tokens).Parâmetros de consulta
privilegestringExemplo de requisição
curl -X GET "$BASE_URL/api/v1/vendor/privileges/check?privilege=manage_promotions" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"privilege": "manage_promotions",
"allowed": false,
"reason": "plan upgrade required"
}Campos da resposta
privilegestringallowedbooleantrue se a loja pode usar.reasonstringallowed é true.Erros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Token ausente, inválido, expirado ou revogado. | {"error":"invalid or expired token"} |
| 400 | Nesta versão a rota lê o nome do recurso do caminho, e o caminho registrado não tem esse trecho: toda chamada cai aqui. | {"error":"MISSING_PRIVILEGE"} |
| 404 | Usuário sem seller vinculado. | {"error":"VENDOR_NOT_FOUND"} |