Welcome to ZendaNext!
ZendaNext enables simple SQL access to complex, secured, asynchronous JSON APIs.
D SELECT name, address, occupation FROM zenda("peeps", auth=true, max_concurrent_requests=10);
┌────────────────┬────────────────┬────────────┐
│ name │ address │ occupation │
│ varchar │ varchar │ varchar │
├────────────────┼────────────────┼────────────┤
│ John Doe │ 123 Main St │ Engineer │
│ Jane Smith │ 456 Oak St │ Designer │
│ Sam Johnson │ 789 Pine St │ Teacher │
│ Emily Davis │ 101 Birch St │ Artist │
│ Michael Lee │ 202 Cedar St │ Developer │
│ Linda Brown │ 303 Maple St │ Scientist │
│ David Wilson │ 404 Spruce St │ Consultant │
│ Susan Martinez │ 505 Oak St │ Manager │
│ Robert Clark │ 606 Elm St │ Analyst │
│ Karen Lewis │ 707 Willow St │ Accountant │
│ Nancy Robinson │ 1010 Forest St │ Retired │
│ │ │ │
├────────────────┴────────────────┴────────────┤
│ 12 rows 3 columns │
└──────────────────────────────────────────────┘
config
[
{
"name": "peeps",
"config": {
"host": "localhost",
"port": 3000,
"root_uri": "",
"endpoints": {
"data": {
"uri": "data"
},
"schema": {
"uri": "schema"
},
"auth":{
"url": "https://auth.localhost:3443",
"user": "myaccount",
"scope": "myscope",
"type": "oidc"
}
},
"async": {
"submit": {
"method": "POST",
"uri": "async/submit",
"headers": [
{ "key": "Content-Type",
"value": "application/json"
}
]
},
"check": {
"method": "GET",
"uri": "async/check/{id}",
"params": [
{
"key": "id",
"value": "{id}"
}
]
},
"fetch": {
"method": "GET",
"uri": "async/fetch/{id}",
"params": [
{
"key": "id",
"value": "{id}"
}
]
}
}
}
},
{
"name": "animals",
"config": {
"host": "freetestapi.com",
"port": 443,
"root_uri": "api",
"endpoints": {
"data": {
"uri": "v1/animals"
},
"schema": {
"uri": "site/animals"
}
}
}
},
{
"name": "cars",
"config": {
"host": "freetestapi.com",
"port": 443,
"root_uri": "api",
"endpoints": {
"data": {
"uri": "v1/cars"
},
"schema": {
"uri": "site/cars"
}
},
"schema": [
{
"name": "id",
"type": "number"
},
{
"name": "make",
"type": "string"
},
{
"name": "model",
"type": "string"
},
{
"name": "year",
"type": "number"
},
{
"name": "color",
"type": "string"
},
{
"name": "mileage",
"type": "number"
},
{
"name": "price",
"type": "number"
},
{
"name": "fuelType",
"type": "string"
},
{
"name": "transmission",
"type": "string"
},
{
"name": "engine",
"type": "string"
},
{
"name": "horsepower",
"type": "number"
},
{
"name": "features",
"type": "array"
},
{
"name": "owners",
"type": "number"
},
{
"name": "image",
"type": "string"
}
]
}
}
]