Skip to content

Estruturas de Produtos

bling_erp_api.resources.product_structures.ProductStructuresResource

ProductStructuresResource(transport: Transport)

Bases: BaseResource

Resource para estruturas de produtos do Bling.

Mapeia os endpoints /produtos/estruturas para operações de composição de produtos e seus componentes. Métodos canônicos em pt-BR; aliases em inglês disponíveis para 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

obter

obter(
    id_produto_estrutura: int,
) -> ProdutosEstruturasIdProdutoEstruturaGetResponse200

Obtém a estrutura de um produto com composição.

Endpoint: GET /produtos/estruturas/{idProdutoEstrutura}

Obtém a estrutura de um produto com composição pelo ID.

Parameters:

Name Type Description Default
id_produto_estrutura int

ID do produto com composição (Bling: idProdutoEstrutura, integer, obrigatório)

required

Returns:

Type Description
ProdutosEstruturasIdProdutoEstruturaGetResponse200

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

Source code in src/bling_erp_api/resources/product_structures.py
def obter(
    self, id_produto_estrutura: int
) -> ProdutosEstruturasIdProdutoEstruturaGetResponse200:
    """Obtém a estrutura de um produto com composição.

    Endpoint: GET /produtos/estruturas/{idProdutoEstrutura}

    Obtém a estrutura de um produto com composição pelo ID.

    Args:
        id_produto_estrutura: ID do produto com composição (Bling: ``idProdutoEstrutura``, integer, obrigatório)

    Returns:
        Bling API response. Response schemas: 200: ProdutosEstruturaDTO; 404: ErrorResponse
    """
    raw = self._get(f"/produtos/estruturas/{id_produto_estrutura}")
    return self._validate_response(ProdutosEstruturasIdProdutoEstruturaGetResponse200, raw)

remover_varios

remover_varios(
    ids_produtos: Sequence[int],
) -> ProdutosEstruturasDeleteResponse200

Remove a estrutura de múltiplos produtos.

Endpoint: DELETE /produtos/estruturas

Remove a estrutura de múltiplos produtos com composição pelos IDs.

Parameters:

Name Type Description Default
ids_produtos Sequence[int]

IDs dos produtos (Bling: idsProdutos[], array, obrigatório)

required

Returns:

Type Description
ProdutosEstruturasDeleteResponse200

Bling API response. Response schemas: 200: Error; 400: ErrorResponse

Source code in src/bling_erp_api/resources/product_structures.py
def remover_varios(self, ids_produtos: Sequence[int]) -> ProdutosEstruturasDeleteResponse200:
    """Remove a estrutura de múltiplos produtos.

    Endpoint: DELETE /produtos/estruturas

    Remove a estrutura de múltiplos produtos com composição pelos IDs.

    Args:
        ids_produtos: IDs dos produtos (Bling: ``idsProdutos[]``, array, obrigatório)

    Returns:
        Bling API response. Response schemas: 200: Error; 400: ErrorResponse
    """
    raw = self._delete(
        "/produtos/estruturas",
        params=compact_params({"idsProdutos[]": list(ids_produtos)}),
    )
    return self._validate_response(ProdutosEstruturasDeleteResponse200, raw)