Permite a configuração de um banco SQL de onde as mensagens serão consumidas.
Copy curl --location '<HOST>/v1/configs' \
--header 'Content-Type: application/json' \
--header 'Authorization: <ACCESS-TOKEN>' \
--data '{
"input": {
"type": "SQL",
"sql": {
"driver": "postgres",
"uri": "postgres://[user[:password]@][netloc][:port][/dbname][?param1=value1&...]",
"scheduler": {
"seconds": 60
},
"query": {
"select": "*",
"from": "TABLE",
"where": "key == ' value '",
"group_by": "key",
"order_by": "date",
"limit": 1000
}
}
},
"output": {...}
}'
Copy {
"id" : "FIREHOSE-ID" ,
"input" : {
"type" : "SQL" ,
"sql" : {
"driver" : "postgres" ,
"uri" : "*" ,
"scheduler" : {
"seconds" : 60
} ,
"query" : {
"select" : "*" ,
"from" : "TABLE" ,
"where" : "key == 'value'" ,
"group_by" : "key" ,
"order_by" : "date" ,
"limit" : 1000
}
}
} ,
"output" : {...}
}
Hoje existe um limite máximo de registros a serem recuperados por busca de 10000, porém ocorre a paginação da resposta utilizando offset
internamente pelo Firehose garantindo a entrega de todos os registros que satisfaçam à uma query.