Skip to content

Categorias - Lojas

bling_erp_api.resources.store_categories.StoreCategoriesResource

StoreCategoriesResource(transport: Transport)

Bases: BaseResource

Operações de categorias de lojas do Bling.

Este recurso mapeia os endpoints /categorias/lojas. Os métodos canônicos usam português para acompanhar a documentação oficial; os métodos em inglês continuam disponíveis como aliases de compatibilidade.

Source code in src/bling_erp_api/resources/base.py
def __init__(self, transport: Transport) -> None:
    """Create a resource bound to a transport."""
    self._transport = transport

listar

listar(
    *,
    pagina: int = 1,
    limite: int = 100,
    id_loja: int | None = None,
    id_categoria_produto: int | None = None,
    id_categoria_produto_pai: int | None = None,
) -> CategoriasLojasGetResponse200

Lista categorias de lojas.

Endpoint: GET /categorias/lojas

Obtém lista paginada de vínculos entre categorias de lojas e produtos.

Parameters:

Name Type Description Default
pagina int

N° da página (Bling: pagina, integer, opcional)

1
limite int

Registros por página (Bling: limite, integer, opcional)

100
id_loja int | None

ID da loja (Bling: idLoja, integer, opcional)

None
id_categoria_produto int | None

ID da categoria de produto (Bling: idCategoriaProduto, integer, opcional)

None
id_categoria_produto_pai int | None

ID da categoria de produto pai (Bling: idCategoriaProdutoPai, integer, opcional)

None

Returns:

Type Description
CategoriasLojasGetResponse200

Bling API response. Response schemas: 200: CategoriasLojasDadosDTO

Source code in src/bling_erp_api/resources/store_categories.py
def listar(
    self,
    *,
    pagina: int = 1,
    limite: int = 100,
    id_loja: int | None = None,
    id_categoria_produto: int | None = None,
    id_categoria_produto_pai: int | None = None,
) -> CategoriasLojasGetResponse200:
    """Lista categorias de lojas.

    Endpoint: GET /categorias/lojas

    Obtém lista paginada de vínculos entre categorias de lojas e produtos.

    Args:
        pagina: N° da página (Bling: ``pagina``, integer, opcional)
        limite: Registros por página (Bling: ``limite``, integer, opcional)
        id_loja: ID da loja (Bling: ``idLoja``, integer, opcional)
        id_categoria_produto: ID da categoria de produto (Bling: ``idCategoriaProduto``, integer, opcional)
        id_categoria_produto_pai: ID da categoria de produto pai (Bling: ``idCategoriaProdutoPai``, integer, opcional)

    Returns:
        Bling API response. Response schemas: 200: CategoriasLojasDadosDTO
    """
    params: QueryParams = {
        "pagina": pagina,
        "limite": limite,
        **_store_categories_list_params(
            id_loja=id_loja,
            id_categoria_produto=id_categoria_produto,
            id_categoria_produto_pai=id_categoria_produto_pai,
        ),
    }
    raw = self._get("/categorias/lojas", params=params)
    return self._validate_response(CategoriasLojasGetResponse200, raw)

obter

obter(id_categoria_loja: int) -> CategoriasLojasIdCategoriaLojaGetResponse200

Obtém uma categoria de loja.

Endpoint: GET /categorias/lojas/{idCategoriaLoja}

Obtém o vínculo de uma categoria de loja com a de produto pelo ID.

Parameters:

Name Type Description Default
id_categoria_loja int

ID do vínculo (Bling: idCategoriaLoja, integer, obrigatório)

required

Returns:

Type Description
CategoriasLojasIdCategoriaLojaGetResponse200

Bling API response. Response schemas: 200: CategoriasLojasDadosDTO; 404: ErrorResponse

Source code in src/bling_erp_api/resources/store_categories.py
def obter(self, id_categoria_loja: int) -> CategoriasLojasIdCategoriaLojaGetResponse200:
    """Obtém uma categoria de loja.

    Endpoint: GET /categorias/lojas/{idCategoriaLoja}

    Obtém o vínculo de uma categoria de loja com a de produto pelo ID.

    Args:
        id_categoria_loja: ID do vínculo (Bling: ``idCategoriaLoja``, integer, obrigatório)

    Returns:
        Bling API response. Response schemas: 200: CategoriasLojasDadosDTO; 404: ErrorResponse
    """
    raw = self._get(f"/categorias/lojas/{id_categoria_loja}")
    return self._validate_response(CategoriasLojasIdCategoriaLojaGetResponse200, raw)

criar

criar(dados: CategoriasLojasDadosDTO) -> CategoriasLojasPostResponse201

Cria um vínculo de categoria da loja com a de produto.

Endpoint: POST /categorias/lojas

Cria o vínculo de uma categoria da loja com a de produto.

Parameters:

Name Type Description Default
dados CategoriasLojasDadosDTO

Dados do vínculo. Request body schema: CategoriasLojasDadosDTO

required

Returns:

Type Description
CategoriasLojasPostResponse201

Bling API response. Response schemas: 201: BasePostResponse; 400: ErrorResponse

Source code in src/bling_erp_api/resources/store_categories.py
def criar(
    self,
    dados: CategoriasLojasDadosDTO,
) -> CategoriasLojasPostResponse201:
    """Cria um vínculo de categoria da loja com a de produto.

    Endpoint: POST /categorias/lojas

    Cria o vínculo de uma categoria da loja com a de produto.

    Args:
        dados: Dados do vínculo. Request body schema: CategoriasLojasDadosDTO

    Returns:
        Bling API response. Response schemas: 201: BasePostResponse; 400: ErrorResponse
    """
    raw = self._post("/categorias/lojas", json=to_json_object(dados))
    return self._validate_response(CategoriasLojasPostResponse201, raw)

alterar

alterar(id_categoria_loja: int, dados: CategoriasLojasDadosDTO) -> JsonObject

Altera um vínculo de categoria da loja com a de produto.

Endpoint: PUT /categorias/lojas/{idCategoriaLoja}

Altera o vínculo de uma categoria da loja com a de produto pelo ID.

Parameters:

Name Type Description Default
id_categoria_loja int

ID do vínculo (Bling: idCategoriaLoja, integer, obrigatório)

required
dados CategoriasLojasDadosDTO

Dados do vínculo para atualização. Request body schema: CategoriasLojasDadosDTO

required

Returns:

Type Description
JsonObject

Bling API response. Response schemas: 204: NoContent; 400: ErrorResponse; 404: ErrorResponse

Source code in src/bling_erp_api/resources/store_categories.py
def alterar(
    self,
    id_categoria_loja: int,
    dados: CategoriasLojasDadosDTO,
) -> JsonObject:
    """Altera um vínculo de categoria da loja com a de produto.

    Endpoint: PUT /categorias/lojas/{idCategoriaLoja}

    Altera o vínculo de uma categoria da loja com a de produto pelo ID.

    Args:
        id_categoria_loja: ID do vínculo (Bling: ``idCategoriaLoja``, integer, obrigatório)
        dados: Dados do vínculo para atualização. Request body schema: CategoriasLojasDadosDTO

    Returns:
        Bling API response. Response schemas: 204: NoContent; 400: ErrorResponse; 404: ErrorResponse
    """
    return self._put(f"/categorias/lojas/{id_categoria_loja}", json=to_json_object(dados))

remover

remover(id_categoria_loja: int) -> JsonObject

Remove um vínculo de categoria da loja.

Endpoint: DELETE /categorias/lojas/{idCategoriaLoja}

Remove o vínculo de uma categoria da loja com a de produto pelo ID.

Parameters:

Name Type Description Default
id_categoria_loja int

ID do vínculo (Bling: idCategoriaLoja, integer, obrigatório)

required

Returns:

Type Description
JsonObject

Bling API response. Response schemas: 204: NoContent; 404: ErrorResponse

Source code in src/bling_erp_api/resources/store_categories.py
def remover(self, id_categoria_loja: int) -> JsonObject:
    """Remove um vínculo de categoria da loja.

    Endpoint: DELETE /categorias/lojas/{idCategoriaLoja}

    Remove o vínculo de uma categoria da loja com a de produto pelo ID.

    Args:
        id_categoria_loja: ID do vínculo (Bling: ``idCategoriaLoja``, integer, obrigatório)

    Returns:
        Bling API response. Response schemas: 204: NoContent; 404: ErrorResponse
    """
    return self._delete(f"/categorias/lojas/{id_categoria_loja}")