Skip to main content

Eu tenho um bot simples onde o usuário envia algumas informações no chat como nome, sobrenome, aniversário e etc… Gostaria de saber se é possível fazer algo como um ‘POST’ para o bucket manager para armazenar essas informações lá.

Lembrando que não estou trabalhando com nenhuma API externa, estou fazendo tudo dentro do builder.

Olá @Pedro_Barros tudo bem?

É possível sim, segue o exemplo: Blip Docs | API Reference


@Rafael_Figueiredo no caso eu tenho que dentro do bloco adicionar uma ação de entrada de requisição HTTP ou de executar um Script (JavaScript)?

O exemplo da documentação está da seguinte maneira em HTTP:

POST https://{{contract_id}}.http.msging.net/commands HTTP/1.1
Content-Type: application/json
Authorization: Key {YOUR_TOKEN}

{  
  "id": "{{$guid}}",
  "method": "set",
  "uri": "/buckets/abcd%c3%a9%201234",
  "type": "application/json",
  "resource": {  
    "key1": "value1",
    "key2": 2,
    "key3": [  
      "3a", "3b", "3c"
    ]
  }
}
HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "1",
  "from": "[email protected]/#irismsging1",
  "to": "[email protected]/default",
  "method": "set",
  "status": "success"
}

O que seria este contract_id e onde posso gerar uma token também? Também fiquei na duvida do que é este {{$guid}}


@Pedro_Barros você vai usar requisição http. {{contract_id}} = o nome do seu contrato aparece na url do blip exemplo rafae.blip.ai id=rafael . Referente ao guid e o random guid o id gerado aleatório para as request


@Rafael_Figueiredo e o token de autorização para colocar no Authorization? Onde consigo gerar ele?


@Pedro_Barros você pega essa chave nas configurações do bot :


Então em vez de enviar:

POST https://{{contract_id}}.http.msging.net/commands HTTP/1.1
Content-Type: application/json
Authorization: Key {YOUR_TOKEN}

{  
  "id": "{{$guid}}",
  "method": "set",
  "uri": "/buckets/abcd%c3%a9%201234",
  "type": "application/json",
  "resource": {  
    "key1": "value1",
    "key2": 2,
    "key3": [  
      "3a", "3b", "3c"
    ]
  }
}
HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "1",
  "from": "[email protected]/#irismsging1",
  "to": "[email protected]/default",
  "method": "set",
  "status": "success"
}

Posso enviar só:

POST https://{{contract_id}}.http.msging.net/commands HTTP/1.1
Content-Type: application/json
Authorization: Key {YOUR_TOKEN}

{  
  "resource": {  
    "key1": "value1",
    "key2": 2,
    "key3": [  
      "3a", "3b", "3c"
    ]
  }
}
HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "1",
  "from": "[email protected]/#irismsging1",
  "to": "[email protected]/default",
  "method": "set",
  "status": "success"
}

Olá @Pedro_Barros o corpo da requisição é apenas isso :

{  
  "id": "{{$guid}}",
  "method": "set",
  "uri": "/buckets/abcd%c3%a9%201234",
  "type": "application/json",
  "resource": {  
    "key1": "value1",
    "key2": 2,
    "key3": [  
      "3a", "3b", "3c"
    ]
  }
}

ai você pode customizar do jeito que você quiser. Repare que tem 3 chaves no objeto ai você pode customizar o objeto e as chaves tanto em quantidade quanto em valor armazenado.


Uma última dúvida. a uri "uri": "/buckets/abcd%c3%a9%201234" é padrão?


Na verdade é /buckets/{{nome_documento}} 😊