Skip to content

Categorias - Produtos

bling_erp_api.resources.product_categories.ProductCategoriesResource

ProductCategoriesResource(transport: Transport)

Bases: BaseResource

Resource for Bling product category endpoints.

Maps /categorias/produtos operations for product category listing, retrieval, creation, update, and removal. Canonical methods use pt-BR names aligned with the official API; English methods remain compatibility aliases.

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
) -> CategoriasProdutosGetResponse200

Lista categorias de produtos.

Endpoint: GET /categorias/produtos

Obtém lista paginada de categorias de 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

Returns:

Type Description
CategoriasProdutosGetResponse200

Bling API response. Response schemas: 200: CategoriasProdutosDadosDTO

Source code in src/bling_erp_api/resources/product_categories.py
def listar(
    self,
    *,
    pagina: int = 1,
    limite: int = 100,
) -> CategoriasProdutosGetResponse200:
    """Lista categorias de produtos.

    Endpoint: GET /categorias/produtos

    Obtém lista paginada de categorias de produtos.

    Args:
        pagina: N° da página (Bling: ``pagina``, integer, opcional)
        limite: Registros por página (Bling: ``limite``, integer, opcional)

    Returns:
        Bling API response. Response schemas: 200: CategoriasProdutosDadosDTO
    """
    raw = self._get(
        "/categorias/produtos", params=compact_params({"pagina": pagina, "limite": limite})
    )
    return self._validate_response(CategoriasProdutosGetResponse200, raw)

obter

obter(
    id_categoria_produto: int,
) -> CategoriasProdutosIdCategoriaProdutoGetResponse200

Obtém uma categoria de produto.

Endpoint: GET /categorias/produtos/{idCategoriaProduto}

Obtém uma categoria de produto pelo ID.

Parameters:

Name Type Description Default
id_categoria_produto int

ID da categoria de produto (Bling: idCategoriaProduto, integer, obrigatório)

required

Returns:

Type Description
CategoriasProdutosIdCategoriaProdutoGetResponse200

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

Source code in src/bling_erp_api/resources/product_categories.py
def obter(
    self, id_categoria_produto: int
) -> CategoriasProdutosIdCategoriaProdutoGetResponse200:
    """Obtém uma categoria de produto.

    Endpoint: GET /categorias/produtos/{idCategoriaProduto}

    Obtém uma categoria de produto pelo ID.

    Args:
        id_categoria_produto: ID da categoria de produto (Bling: ``idCategoriaProduto``, integer, obrigatório)

    Returns:
        Bling API response. Response schemas: 200: CategoriasProdutosDadosDTO; 404: ErrorResponse
    """
    raw = self._get(f"/categorias/produtos/{id_categoria_produto}")
    return self._validate_response(CategoriasProdutosIdCategoriaProdutoGetResponse200, raw)

criar

criar(dados: CategoriasProdutosDadosDTO) -> CategoriasProdutosPostResponse201

Cria uma categoria de produto.

Endpoint: POST /categorias/produtos

Cria uma categoria de produto.

Parameters:

Name Type Description Default
dados CategoriasProdutosDadosDTO

Dados da categoria. Request body schema: CategoriasProdutosDadosDTO

required

Returns:

Type Description
CategoriasProdutosPostResponse201

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

Source code in src/bling_erp_api/resources/product_categories.py
def criar(
    self,
    dados: CategoriasProdutosDadosDTO,
) -> CategoriasProdutosPostResponse201:
    """Cria uma categoria de produto.

    Endpoint: POST /categorias/produtos

    Cria uma categoria de produto.

    Args:
        dados: Dados da categoria. Request body schema: CategoriasProdutosDadosDTO

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

alterar

alterar(
    id_categoria_produto: int, dados: CategoriasProdutosDadosDTO
) -> JsonObject

Altera uma categoria de produto.

Endpoint: PUT /categorias/produtos/{idCategoriaProduto}

Altera uma categoria de produto pelo ID.

Parameters:

Name Type Description Default
id_categoria_produto int

ID da categoria de produto (Bling: idCategoriaProduto, integer, obrigatório)

required
dados CategoriasProdutosDadosDTO

Dados da categoria para atualização. Request body schema: CategoriasProdutosDadosDTO

required

Returns:

Type Description
JsonObject

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

Source code in src/bling_erp_api/resources/product_categories.py
def alterar(
    self,
    id_categoria_produto: int,
    dados: CategoriasProdutosDadosDTO,
) -> JsonObject:
    """Altera uma categoria de produto.

    Endpoint: PUT /categorias/produtos/{idCategoriaProduto}

    Altera uma categoria de produto pelo ID.

    Args:
        id_categoria_produto: ID da categoria de produto (Bling: ``idCategoriaProduto``, integer, obrigatório)
        dados: Dados da categoria para atualização. Request body schema: CategoriasProdutosDadosDTO

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

remover

remover(id_categoria_produto: int) -> JsonObject

Remove uma categoria de produto.

Endpoint: DELETE /categorias/produtos/{idCategoriaProduto}

Remove uma categoria de produto pelo ID.

Parameters:

Name Type Description Default
id_categoria_produto int

ID da categoria de produto (Bling: idCategoriaProduto, integer, obrigatório)

required

Returns:

Type Description
JsonObject

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

Source code in src/bling_erp_api/resources/product_categories.py
def remover(self, id_categoria_produto: int) -> JsonObject:
    """Remove uma categoria de produto.

    Endpoint: DELETE /categorias/produtos/{idCategoriaProduto}

    Remove uma categoria de produto pelo ID.

    Args:
        id_categoria_produto: ID da categoria de produto (Bling: ``idCategoriaProduto``, integer, obrigatório)

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