APIs de tempo de execução

  • Versão de lançamento: Australia
  • Atualizado 12 de mar. de 2026
  • 8 min. de leitura
  • APIs de tempo de execução

    CPQ Fornece um conjunto de APIs para criar aplicações front-end e manipular configurações. Essas APIs são comumente chamadas de buyside ou runtime e são usadas por clientes ou usuários finais para criar, atualizar e salvar CPQ configurações.

    As APIs de tempo de execução são compatíveis com as funções padrão de criação, leitura, atualização e exclusão para CPQ E a capacidade de recuperar dados da lista de materiais (BOM) de CPQ.

    Nota:
    Essas APIs são APIs legadas. Para obter as informações mais atualizadas, consulte o completo CPQ Referência de API:

    Referência da API Logik.io

    Para fazer CPQ APIs de tempo de execução acessíveis e fornecem um início rápido para os desenvolvedores finais, consulte nossos repositórios de código aberto para coleções de APIs que podem ser facilmente importados e usados para iniciar o teste:

    API-Documentation/runtime/Logik Configurator Runtime APIs.postman_collection.json

    Configuração da API de tempo de execução

    O formato de URL base para todas as chamadas de API de tempo de execução é https://<tenant>.<sector>.logik.io/api/ , onde <tenant> é o nome do locatário listado e. <sector> é o setor apropriado no qual o ambiente está localizado (geralmente teste ou prod ).

    No Salesforce, você pode encontrar CPQ URL do locatário acessando Configuração, pesquisando Configurações personalizadas na caixa Localização rápida e clicando em Gerenciar ao lado de CPQ Locatário.

    As chamadas de API de tempo de execução são autenticadas por meio de uma combinação de um token de portador e a origem definida no cliente de tempo de execução. As origens da aplicação de tempo de execução são especificadas quando um cliente de tempo de execução é criado no CPQ Configurações do administrador.

    Para autorizar essas chamadas de API, você deve adicionar dois cabeçalhos a cada solicitação de API de tempo de execução:

    Tabela 1. Cabeçalhos obrigatórios para solicitações de API de tempo de execução
    Cabeçalho Chave Valor
    Cabeçalho de origem origem <runtimeClientOrigin>
    Cabeçalho de autorização autorização <runtimeToken> do portador

    Cabeçalhos de amostra:

    • origem: localhost
    • Autorização: Portador vEqzz4BVkb15Le11En8axEuN71FA6Vt_cw

    Crie uma configuração

    Para iniciar uma nova configuração por meio das APIs, a chamada de criação de configuração passa o ID do produto configurável. Em resposta, ele recebe um CPQ ID de configuração que pode ser usado para especificar esta configuração em chamadas posteriores.

    Tabela 2. POST
    Método HTTP POST
    URL https://<tenant>.<sector>.logik.io/api/
    Parâmetros de caminho N/D
    Parâmetros de consulta N/D

    As duas peças-chave da carga são:

    • O ID de um CPQ produto habilitado, com um blueprint implantado
    • . CPQ UUID de configuração que está sendo reconfigurado

    URL de amostra:

    https://dev1.test.Logik/api/

    Carga de amostra:

    {
      "sessionContext": 
      { 
        "stateful": true
      },
      "partnerData": 
      { 
        "product":
        {
          "configuredProductId": "<Id of a Logik.io Enabled Product>", 
        }
      },
      "fields": []
    }
    Nota:
    A configuração também pode ser inicializada passando valores de campo para a matriz de campos no seguinte formato:
    {
      “variableName”: “<Field Name>”, “value”: “<Field Value>”
    }

    Resposta de amostra:

    {
      "fields": [<ARRAY OF FIELD OBJECTS>],
      "uuid": "08176434-9b1e-4fc8-b2c4-8aba2c35fda3", 
      "revision": 0,
      "relatedChanges": 
      [
        {
          "key": "products",
          "type": "PRODUCT"
        }
      ],
      "valid": true, 
      "messages": [], 
      "productChange": true,
      "products": [<ARRAY OF PRODUCTS IN CONFIGURATION>],
      "total": 30,
      "layouts": [<ARRAY OF LAYOUTS>]
    }

    Reconfigure uma configuração

    A chamada de API de reconfiguração é semelhante à chamada de criação de configuração. A chamada de reconfiguração passa o ID do produto configurável e um existente CPQ ID de configuração e, em troca, recebe um novo ID de configuração com os mesmos dados de campo da configuração anterior, mas permitindo que mudanças sejam feitas.

    Nota:
    O campo UUID na carga de resposta contém o novo CPQ ID de configuração. O novo ID de configuração deve ser usado para todas as operações futuras no processo de reconfiguração, incluindo atualizar, salvar e recuperar BOM.
    Tabela 3. POST
    Método HTTP POST
    URL https://<tenant>.<sector>.logik.io/api/
    Parâmetros de caminho N/D
    Parâmetros de consulta N/D

    As duas peças-chave da carga são:

    • O ID de um CPQ produto habilitado, com um blueprint implantado
    • . CPQ UUID de configuração que está sendo reconfigurado

    URL de amostra:

    https://dev1.test.Logik/api/

    Carga de amostra:

    {
      "sessionContext": 
      { 
        "stateful": true
      },
      "partnerData": 
      { 
        "product": 
        {
          "configuredProductId": "<Id of a Logik.io Enabled Product>", 
          "configurationAttributes": 
          {
            "LGK__ConfigurationId__c": "<uuid>"
          }
        }
      },
      "fields": []
    }

    Resposta de amostra:

    {
      "fields": [<ARRAY OF FIELD OBJECTS>],
      "uuid": "d98d60cd-9379-4b7b-86fd-de828c340f80", 
      "revision": 0,
      "relatedChanges": 
      [
        {
          "key": "products",
          "type": "PRODUCT"
        }
      ],
      "valid": true, 
      "messages": [], 
      "productChange": true,
      "products": [<ARRAY OF PRODUCTS IN CONFIGURATION>],
      "total": 30,
      "layouts": [<ARRAY OF LAYOUTS>]
    }

    Atualize uma configuração

    A atualização de uma configuração requer que uma configuração seja carregada usando as chamadas de API Criar configuração ou Reconfigurar configuração. A chamada Atualizar configuração passa por CPQ ID de configuração e todos os valores de campo desejados e em resposta recebe a configuração atualizada de CPQ.

    Tabela 4. PATCH
    Método HTTP PATCH
    URL https://<tenant>.<sector>.logik.io/api/
    Parâmetros de caminho N/D
    Parâmetros de consulta Nome Valor permitido Necessário? Se não for especificado, padrão
    delta verdadeiro | falso opcional verdadeiro
    Salvar verdadeiro | falso opcional falso

    Parâmetros de consulta:

    delta

    Se delta for verdadeiro, CPQ envia de volta somente os dados que foram alterados com base na atualização enviada. Esse é o comportamento padrão.

    Se delta for falso, CPQ Envia de volta a configuração inteira e os dados da BOM em resposta.

    save

    Se salvar for verdadeiro, CPQ Salva esta configuração e (dependendo das configurações) executa ações adicionais, como enviar os dados para um webhook ou gravar os dados em objetos personalizados no Salesforce. Este é o comportamento da chamada de salvar configuração.

    Se salvar for falso, CPQ atualiza esta configuração e envia os dados atualizados de volta na resposta. Este é o comportamento padrão e este é o comportamento da chamada de atualização.

    URL de amostra:

    https://dev1.test.logik.io/api/fbc3d32c-7f86-4461-b144-986a0e8a5768

    Carga de amostra:

    {
      "fields": 
      [
        {
          "variableName": "orderQty", 
          "value": 3
        }
      ]
    }

    Resposta de amostra:

    {
      "fields": [],
      "uuid": "fbc3d32c-7f86-4461-b144-986a0e8a5768", 
      "revision": 0,
      "relatedChanges": 
      [
        {
          "key": "products",
          "type": "PRODUCT"
        }
      ],
      "valid": true, 
      "messages": [], 
      "productChange": true, 
      "products": null
    }

    Salve uma configuração

    Salvar uma configuração é um subconjunto da configuração de atualização. É necessário que uma configuração seja carregada usando as chamadas de API Criar configuração ou Reconfigurar configuração. A chamada de salvar configuração passa por CPQ ID de configuração e todos os valores de campo desejados e em resposta recebe a configuração atualizada de CPQ.

    Nota:
    A única diferença entre uma chamada de atualização normal e uma chamada de salvamento é a adição do parâmetro de consulta save=trueNa URL. Se definido como falso ou excluído, esta é uma chamada de atualização normal.

    Se você estiver usando o Salesforce como back-end, quando a SAVE API for chamada, CPQ cria e preenche de forma assíncrona o. CPQ Conjuntos de dados do campo de configuração de objetos personalizados e itens de linha de configuração com os dados apropriados.

    . CPQ A instância tem um webhook configurado. Quando a SAVE API é chamada, os dados são enviados para o endpoint especificado na configuração do webhook. Consulte Webhooks.

    Nota:
    Isso encerra a sessão de configuração. Outras edições ou atualizações na configuração devem ser iniciadas a partir das chamadas de API Criar configuração ou Reconfigurar configuração.
    Tabela 5. PATCH
    Método HTTP PATCH
    URL https://<tenant>.<sector>.logik.io/api/
    Parâmetros de caminho N/D
    Parâmetros de consulta Nome Valor permitido Necessário? Se não for especificado, padrão
    delta verdadeiro | falso opcional verdadeiro
    Salvar verdadeiro | falso opcional falso

    Parâmetros de consulta:

    delta

    Se delta for verdadeiro, CPQ envia de volta somente os dados que foram alterados com base na atualização enviada. Esse é o comportamento padrão.

    Se delta for falso, CPQ Envia de volta a configuração inteira e os dados da BOM em resposta.

    save

    Se salvar for verdadeiro, CPQ Salva esta configuração e (dependendo das configurações) executa ações adicionais, como enviar os dados para um webhook ou gravar os dados em objetos personalizados no Salesforce.

    Se salvar for falso, CPQ atualiza esta configuração e envia os dados atualizados de volta na resposta. Este é o comportamento da chamada de atualização.

    Solicitação de curl de amostra:

    curl --location --request PATCH 'https://mpanigrahi-demo.demo01.logik.io/api/6d0ef6fd-4c88-44f3-a296-b03421c369c6' \
    --header 'Content-Type: application/json' \
    --header 'Accept: application/json' \
    --header 'Origin: https://mpanigrahi-demo.demo01.logik.io' \
    --header 'Authorization: <<RUNTIME TOKEN>>' \
    --header 'Cookie: LGKSESSION=NDA5OWJmNmEtNDhhOS00YTc4LTk3ODktZTg0OGYyOGIwMjZk' \
    --data '{"fields":[{"variableName":"name_d1","value":"megha","dataType":"text"}],"responseState":{"setPagination":{"collections":{"pageSize":10,"pageNumber":0},"fields":{"pageSize":10,"pageNumber":0},"componentTypes":{"pageSize":10,"pageNumber":0}},"defaultPagination":{"pageSize":10,"pageNumber":0},"searchValues":{}}}'

    Resposta de amostra:

    {
    "fields": [<ARRAY OF FIELD OBJECTS>],
    "uuid": "8817655d-7a11-41ef-a9fd-59c2855a3e4b", 
    "revision": 1,
    "valid": true, 
    "messages": [], 
    "productChange": false,
    "products": [<ARRAY OF PRODUCTS IN CONFIGURATION>],
    "total": 0
    }

    APIs DA BOM

    As APIs da BOM são úteis para recuperar a saída final da configuração. As APIs de BOM podem ser usadas para recuperar toda a BOM ou subconjuntos específicos, como BOMs de vendas ou de fabricação.

    A chamada Obter BOM passa por A. CPQ O ID de configuração e em retorno recebe a BOM atual gerada pelo estado atual da configuração. Há 3 tipos de BOM integrados: "Todos", "vendas" e "fabricação". Tipos de BOM adicionais podem ser adicionados dinamicamente definindo o campo bomType no produto.

    Nota:
    Se o tipo de BOM não estiver incluído, a API retornará a BOM inteira.
    Tabela 6. GET
    Método HTTP GET
    URL https://<tenant>.<sector>.logik.io/api/<uuid>/BOM/<bomType>
    Parâmetros de caminho Nome Valor permitido Necessário?
    <uuid> 32 caractere CPQ UUID de configuração obrigatório
    <bomType> Nome da BOM a ser recuperada opcional
    Parâmetros de consulta N/D

    Resposta de amostra:

    {"products": [
            {
                "id": "01t5f000006QKysAAG",
                "quantity": 1,
                "bomType": "Sales",
                "orderNumber": 10,
                "type": "accessory",
                "name": "Amend Flow Bundle Sub",
                "partnerId": "01t5f000006QKysAAG",
                "productCode": "AFBC-SC",
                "externalId": "",
                "productFamily": "Miscellaneous",
                "description": "",
                "uom": "",
                "price": 5,
                "extPrice": 5,
                "level": 0,
                "rollUpPrice": 5
            },
            {
                "id": "01t5f000006QKz2AAG",
                "quantity": 1,
                "bomType": "Sales",
                "orderNumber": 20,
                "type": "accessory",
                "name": "Amend Flow Bundle Asset",
                "partnerId": "01t5f000006QKz2AAG",
                "productCode": "AFBC2-SC",
                "externalId": "",
                "productFamily": "Miscellaneous",
                "description": "",
                "uom": "",
                "price": 25,
                "extPrice": 25,
                "level": 0,
                "rollUpPrice": 25
            }
        ]}

    Para obter informações sobre APIs de configuração adicionais e cenários de amostra, consulte APIs de configuração adicionais.