Skip to main content
Pergunta

Transferência de usuário entre bots via API


Oie,

Estou tentando fazer a transferência do usuário de um bot a outro com um "input fantasma", via api, mas não estou conseguindo.

Bot 1 - Main
Bot 2 - Atendimento
Router geral dos bots

O cliente entra no bot 1 e caso ele digite que quer falar com atendimento ele deveria ser direcionado ao bot 2, sem a necessidade de ter um input, e segue o fluxo com o input fantasma.

Essas são as requisições que estamos fazendo.

https://http.msging.net/commands
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{id}}/Master-State",
"type": "text/plain",
"resource": " [removed by moderator] "
}

https://http.msging.net/commands

KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{ 9S }}/stateid@ab1cae8a-af6e-474b",
"type": "text/plain",
"resource": "onboarding"
}

https://http.msging.net/messages
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": "{{ id }}",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": " [removed by moderator] ",
"context": {
"type": "application/json",
"value": {
"team": "Service Desk"
}
}
}
}

12 comentários

Rafael_Figueiredo
Blipper
Forum|alt.badge.img+6

Oie,

Estou tentando fazer a transferência do usuário de um bot a outro com um "input fantasma", via api, mas não estou conseguindo.

Bot 1 - Main
Bot 2 - Atendimento
Router geral dos bots

O cliente entra no bot 1 e caso ele digite que quer falar com atendimento ele deveria ser direcionado ao bot 2, sem a necessidade de ter um input, e segue o fluxo com o input fantasma.

Essas são as requisições que estamos fazendo.

https://http.msging.net/commands
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{id}}/Master-State",
"type": "text/plain",
"resource": " [removed by moderator] "
}

https://http.msging.net/commands

KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{ 9S }}/stateid@ab1cae8a-af6e-474b",
"type": "text/plain",
"resource": "onboarding"
}

https://http.msging.net/messages
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": "{{ id }}",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": " [removed by moderator] ",
"context": {
"type": "application/json",
"value": {
"team": "Service Desk"
}
}
}
}

@Aline D. tudo bem ? 

Informo que para fazer isso sem a necessidade do cliente mandar uma mensagem para o bot é necessário usar essas requests acima e adicionar mais um que faz a simulação do processo do usuário, mas a parte difícil é obter o tunnel dele pois vai usar a chave do bot builder onde está o atendimento : 

 

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

{
"id": "2",
"to": "[email protected]",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": "[email protected]",
"context": {
"type": "text/plain",
"value": "Get started"
}
}
}

Para obter o id do tunnel de um get contacts no bot builder  e procure pelo usuário que deseja fazer o redirecionamento. O “de para” vai ser o tunnel owner e owner id, caso o fluxo esteja configurado para ir atualizando você pode encontrar esse dado pelo telefone ou outro dado em comun entre o usuário no builder e no router..

ref: https://docs.blip.ai/?http#redirect


  • Autor
  • Inspiring
  • January 28, 2026

Oie,

Estou tentando fazer a transferência do usuário de um bot a outro com um "input fantasma", via api, mas não estou conseguindo.

Bot 1 - Main
Bot 2 - Atendimento
Router geral dos bots

O cliente entra no bot 1 e caso ele digite que quer falar com atendimento ele deveria ser direcionado ao bot 2, sem a necessidade de ter um input, e segue o fluxo com o input fantasma.

Essas são as requisições que estamos fazendo.

https://http.msging.net/commands
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{id}}/Master-State",
"type": "text/plain",
"resource": " [removed by moderator] "
}

https://http.msging.net/commands

KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{ 9S }}/stateid@ab1cae8a-af6e-474b",
"type": "text/plain",
"resource": "onboarding"
}

https://http.msging.net/messages
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": "{{ id }}",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": " [removed by moderator] ",
"context": {
"type": "application/json",
"value": {
"team": "Service Desk"
}
}
}
}

@Aline D. tudo bem ?

Informo que para fazer isso sem a necessidade do cliente mandar uma mensagem para o bot é necessário usar essas requests acima e adicionar mais um que faz a simulação do processo do usuário, mas a parte difícil é obter o tunnel dele pois vai usar a chave do bot builder onde está o atendimento :

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

{
"id": "2",
"to": " [removed by moderator] ",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": " [removed by moderator] ",
"context": {
"type": "text/plain",
"value": "Get started"
}
}
}

Para obter o id do tunnel de um get contacts no bot builder e procure pelo usuário que deseja fazer o redirecionamento. O “de para” vai ser o tunnel owner e owner id, caso o fluxo esteja configurado para ir atualizando você pode encontrar esse dado pelo telefone ou outro dado em comun entre o usuário no builder e no router..

ref: https://docs.blip.ai/?http#redirect

Bom dia, tudo bem?

O tunnel tecnicamente já vem na nossa requisição, então acho que não teríamos que fazer o get pra obter isso:

"lime-from": " [removed by moderator] ",

Mas tentei seguir com esse novo request e ainda não funciona. O usuário é direcionado pro Bot 2, mas o input não funciona, coloquei até um timer pra esperar alguns segundos pra não atropelar as requisições e não funcionou.


Rafael_Figueiredo
Blipper
Forum|alt.badge.img+6

Oie,

Estou tentando fazer a transferência do usuário de um bot a outro com um "input fantasma", via api, mas não estou conseguindo.

Bot 1 - Main
Bot 2 - Atendimento
Router geral dos bots

O cliente entra no bot 1 e caso ele digite que quer falar com atendimento ele deveria ser direcionado ao bot 2, sem a necessidade de ter um input, e segue o fluxo com o input fantasma.

Essas são as requisições que estamos fazendo.

https://http.msging.net/commands
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{id}}/Master-State",
"type": "text/plain",
"resource": " [removed by moderator] "
}

https://http.msging.net/commands

KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{ 9S }}/stateid@ab1cae8a-af6e-474b",
"type": "text/plain",
"resource": "onboarding"
}

https://http.msging.net/messages
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": "{{ id }}",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": " [removed by moderator] ",
"context": {
"type": "application/json",
"value": {
"team": "Service Desk"
}
}
}
}

@Aline D. tudo bem ?

Informo que para fazer isso sem a necessidade do cliente mandar uma mensagem para o bot é necessário usar essas requests acima e adicionar mais um que faz a simulação do processo do usuário, mas a parte difícil é obter o tunnel dele pois vai usar a chave do bot builder onde está o atendimento :

 

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

{
"id": "2",
"to": " [removed by moderator] ",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": " [removed by moderator] ",
"context": {
"type": "text/plain",
"value": "Get started"
}
}
}

Para obter o id do tunnel de um get contacts no bot builder e procure pelo usuário que deseja fazer o redirecionamento. O “de para” vai ser o tunnel owner e owner id, caso o fluxo esteja configurado para ir atualizando você pode encontrar esse dado pelo telefone ou outro dado em comun entre o usuário no builder e no router..

ref: https://docs.blip.ai/?http#redirect

 

 

Bom dia, tudo bem?

 

O tunnel tecnicamente já vem na nossa requisição, então acho que não teríamos que fazer o get pra obter isso:

"lime-from": " [removed by moderator] ",

 

Mas tentei seguir com esse novo request e ainda não funciona. O usuário é direcionado pro Bot 2, mas o input não funciona, coloquei até um timer pra esperar alguns segundos pra não atropelar as requisições e não funcionou.

@Aline D.  valide a ordem das request e qual chave está usando em cada um pois a chave tem que ser bot de destino com o tunnel id do usuario no bot de destino e o input.
 


  • Autor
  • Inspiring
  • January 28, 2026

Oie,

Estou tentando fazer a transferência do usuário de um bot a outro com um "input fantasma", via api, mas não estou conseguindo.

Bot 1 - Main
Bot 2 - Atendimento
Router geral dos bots

O cliente entra no bot 1 e caso ele digite que quer falar com atendimento ele deveria ser direcionado ao bot 2, sem a necessidade de ter um input, e segue o fluxo com o input fantasma.

Essas são as requisições que estamos fazendo.

https://http.msging.net/commands
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{id}}/Master-State",
"type": "text/plain",
"resource": " [removed by moderator] "
}

https://http.msging.net/commands

KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/{{ 9S }}/stateid@ab1cae8a-af6e-474b",
"type": "text/plain",
"resource": "onboarding"
}

https://http.msging.net/messages
KEY: ROUTER

{
"id": "={{$execution.id}}",
"to": "{{ id }}",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": " [removed by moderator] ",
"context": {
"type": "application/json",
"value": {
"team": "Service Desk"
}
}
}
}

@Aline D. tudo bem ?

Informo que para fazer isso sem a necessidade do cliente mandar uma mensagem para o bot é necessário usar essas requests acima e adicionar mais um que faz a simulação do processo do usuário, mas a parte difícil é obter o tunnel dele pois vai usar a chave do bot builder onde está o atendimento :

 

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

{
"id": "2",
"to": " [removed by moderator] ",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": " [removed by moderator] ",
"context": {
"type": "text/plain",
"value": "Get started"
}
}
}

Para obter o id do tunnel de um get contacts no bot builder e procure pelo usuário que deseja fazer o redirecionamento. O “de para” vai ser o tunnel owner e owner id, caso o fluxo esteja configurado para ir atualizando você pode encontrar esse dado pelo telefone ou outro dado em comun entre o usuário no builder e no router..

ref: https://docs.blip.ai/?http#redirect

 

 

Bom dia, tudo bem?

 

O tunnel tecnicamente já vem na nossa requisição, então acho que não teríamos que fazer o get pra obter isso:

"lime-from": " [removed by moderator] ",

 

Mas tentei seguir com esse novo request e ainda não funciona. O usuário é direcionado pro Bot 2, mas o input não funciona, coloquei até um timer pra esperar alguns segundos pra não atropelar as requisições e não funcionou.

@Aline D.  valide a ordem das request e qual chave está usando em cada um pois a chave tem que ser bot de destino com o tunnel id do usuario no bot de destino e o input.
 

@Rafael_Figueiredo 

Está dessa forma: 
1. Definir Bot (Master-State)   - KEY ROUTER
2.Definir Fluxo (State ID) - KEY ROUTER
3.Direcionar Usuário (Redirect) - KEY ROUTER
4.Input - KEY DO BOT DE DESTINO


Rafael_Figueiredo
Blipper
Forum|alt.badge.img+6

@Aline D. 

Certo parece que está correto valide a request conforme o  meu último comentário : 

Se  tiver igual a request valie isso : 

Bot 1 - Main
Bot 2 - Atendimento
Router geral dos bots

a chave para o input é a do bot 2 caso o usuario tenha sido movido para lá.


  • Autor
  • Inspiring
  • January 29, 2026

@Aline D.

Certo parece que está correto valide a request conforme o meu último comentário :

Se tiver igual a request valie isso :

Bot 1 - Main
Bot 2 - Atendimento
Router geral dos bots

a chave para o input é a do bot 2 caso o usuario tenha sido movido para lá.

@Rafael_Figueiredo Eu agradeço. Pode analisar se as requisições estão certas, por favor?

E que mesmo assim ele redireciona mas o input não funciona.

1. Master-State

Endpoint: POST /commands

{
"id": "xxxx",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/ [removed by moderator] /Master-State",
"type": "text/plain",
"resource": " [removed by moderator] "
}

2. State ID

Endpoint: POST /commands

{
"id": "xxxx",
"to": " [removed by moderator] ",
"method": "set",
"uri": "/contexts/ [removed by moderator] /stateid@xxxxxx-xxx-xxx-xxxx",
"type": "text/plain",
"resource": "onboarding"
}

3. Redirect

Endpoint: POST /messages

{
"id": "xxxx",
"to": " [removed by moderator] }",
"type": "application/vnd.lime.redirect+json",
"content": {
"address": "atendimento",
"context": {
"type": "application/json",
"value": {
"team": "SD"
}
}
}
}


Rafael_Figueiredo
Blipper
Forum|alt.badge.img+6

@Aline D.  A 3 está errada o padrão é : 

{

    "id": "2",

    "to": "[email protected]",//troque pelo seu tunnel que esta no bot de destino

    "type": "application/vnd.lime.redirect+json",

    "content": {

        "address": "[email protected]",//troque pelo id do seu bot de destino

        "context": {

            "type": "text/plain",

            "value": "oi"

        }

    }

}


  • Autor
  • Inspiring
  • January 29, 2026

@Aline D. A 3 está errada o padrão é :

{

"id": "2",

"to": " [removed by moderator] ",//troque pelo seu tunnel que esta no bot de destino

"type": "application/vnd.lime.redirect+json",

"content": {

"address": "[email protected]",//troque pelo id do seu bot de destino

"context": {

"type": "text/plain",

"value": "oi"

}

}

}

@Rafael_Figueiredo, ainda sem sucesso kk

Sabe se a Blip teve alguma atualização recente sobre isso? parece que até no usando o próprio fluxo do builder invés da API não está funcionando.

Se tiver alguma outra alternativa pra uso da API eu fico aberta pra testar.


Rafael_Figueiredo
Blipper
Forum|alt.badge.img+6

@Aline D. A 3 está errada o padrão é :

{

"id": "2",

"to": " [removed by moderator] ",//troque pelo seu tunnel que esta no bot de destino

"type": "application/vnd.lime.redirect+json",

"content": {

"address": "[email protected]",//troque pelo id do seu bot de destino

"context": {

"type": "text/plain",

"value": "oi"

}

}

}

@Rafael_Figueiredo, ainda sem sucesso kk

 

Sabe se a Blip teve alguma atualização recente sobre isso? parece que até no usando o próprio fluxo do builder invés da API não está funcionando.

Se tiver alguma outra alternativa pra uso da API eu fico aberta pra testar.

@Aline D. você pode usar a função redirecionar a um serviço e passar o input dentro do objeto para que o usuário não tenha que digitar nada : 
https://help.blip.ai/hc/pt-br/articles/4474414030359-A%C3%A7%C3%A3o-Redirecionar-a-um-servi%C3%A7o


  • Autor
  • Inspiring
  • January 29, 2026

@Aline D. A 3 está errada o padrão é :

{

"id": "2",

"to": " [removed by moderator] ",//troque pelo seu tunnel que esta no bot de destino

"type": "application/vnd.lime.redirect+json",

"content": {

"address": "[email protected]",//troque pelo id do seu bot de destino

"context": {

"type": "text/plain",

"value": "oi"

}

}

}

@Rafael_Figueiredo, ainda sem sucesso kk

Sabe se a Blip teve alguma atualização recente sobre isso? parece que até no usando o próprio fluxo do builder invés da API não está funcionando.

Se tiver alguma outra alternativa pra uso da API eu fico aberta pra testar.

@Aline D. você pode usar a função redirecionar a um serviço e passar o input dentro do objeto para que o usuário não tenha que digitar nada :
https://help.blip.ai/hc/pt-br/articles/ [removed by moderator] -A%C3%A7%C3%A3o-Redirecionar-a-um-servi%C3%A7o

@Rafael_Figueiredo

Tentamos também, e não chega.

"order": 0,
"type": "Redirect",
"parsedSettings": {
"address": "xx-atendimento",
"context": {
"type": "text/plain",
"value": "{\n \"team\": \"CA \"\n}"
}
},
"continueOrError": false,
"timestamp": "2026-01-29T17:32:23.550221+00:00",
"elapsedMilliseconds": 1,
"warning": null,
"error": null
}
],
"outputs": [
{
"stateId": "onboarding",
"conditionsCount": 0,
"timestamp": "2026-01-29T17:32:23.5513561+00:00",
"elapsedMilliseconds": 0,
"warning": null,
"error": null
}
],
"extensionData": {
"name": "Transbordo - Fila de atendimento"
},
"timestamp": "2026-01-29T17:32:23.5074838+00:00",
"elapsedMilliseconds": 48,
"warning": null,
"error": null
},
{
"id": "onboarding",
"inputActions": [],
"outputActions": [],
"outputs": [],
"extensionData": {
"name": "Início"
},
"timestamp": "2026-01-29T17:32:23.5557329+00:00",
"elapsedMilliseconds": 6,
"warning": null,
"error": null
}
],
"inputActions": [],
"outputActions": [],
"timestamp": "2026-01-29T17:32:23.6254642+00:00",
"elapsedMilliseconds": 150,
"warning": null,
"error": null
}


Rafael_Figueiredo
Blipper
Forum|alt.badge.img+6

@Aline D. eu testei aqui e funcionou no meu teste.

Nesse caso peço que valide com o time de support, pois eles pode te ajudar com as request e validar o que ocorreu : https://support.blip.ai/hc/pt-br


  • Autor
  • Inspiring
  • January 29, 2026

@Aline D. eu testei aqui e funcionou no meu teste.

Nesse caso peço que valide com o time de support, pois eles pode te ajudar com as request e validar o que ocorreu : https://support.blip.ai/hc/pt-br

Obrigada!