Validate SQL
client.Pipelines.ValidateSql(ctx, params) (*PipelineValidateSqlResponse, error)
POST/accounts/{account_id}/pipelines/v1/validate_sql
Validate Arroyo SQL.
Security
API Token
The preferred authorization scheme for interacting with the Cloudflare API. Create a token.
Example:
API Email + API Key
The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.
Example:
The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.
Example:
Accepted Permissions (at least one required)
Validate SQL
package main
import (
"context"
"fmt"
"github.com/cloudflare/cloudflare-go"
"github.com/cloudflare/cloudflare-go/option"
"github.com/cloudflare/cloudflare-go/pipelines"
)
func main() {
client := cloudflare.NewClient(
option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
)
response, err := client.Pipelines.ValidateSql(context.TODO(), pipelines.PipelineValidateSqlParams{
AccountID: cloudflare.F("0123105f4ecef8ad9ca31a8372d0c353"),
Sql: cloudflare.F("insert into sink select * from source;"),
})
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", response.Tables)
}
{
"result": {
"tables": {
"foo": {
"id": "id",
"name": "name",
"type": "type",
"version": 0
}
},
"graph": {
"edges": [
{
"dest_id": 0,
"edge_type": "edge_type",
"key_type": "key_type",
"src_id": 0,
"value_type": "value_type"
}
],
"nodes": [
{
"description": "description",
"node_id": 0,
"operator": "operator",
"parallelism": 0
}
]
}
},
"success": true
}Returns Examples
{
"result": {
"tables": {
"foo": {
"id": "id",
"name": "name",
"type": "type",
"version": 0
}
},
"graph": {
"edges": [
{
"dest_id": 0,
"edge_type": "edge_type",
"key_type": "key_type",
"src_id": 0,
"value_type": "value_type"
}
],
"nodes": [
{
"description": "description",
"node_id": 0,
"operator": "operator",
"parallelism": 0
}
]
}
},
"success": true
}