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": k
"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": 3
"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}} 😊


Comente