ToolJet/plugins/packages/bigquery/lib/manifest.json
2026-05-07 21:55:42 +05:30

280 lines
12 KiB
JSON

{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Bigquery datasource",
"description": "A schema defining BigQuery datasource",
"type": "object",
"tj:version": "1.0.0",
"tj:source": {
"name": "BigQuery",
"kind": "bigquery",
"type": "api"
},
"properties": {
"authentication_type": {
"type": "string",
"title": "Authentication type",
"enum": ["oauth2", "service_account"],
"default": "oauth2"
},
"access_type": {
"type": "string",
"title": "Access type",
"enum": ["read", "write"],
"default": "read"
},
"project_id": {
"type": "string",
"title": "Project ID"
},
"location": {
"type": "string",
"title": "Region"
},
"private_key": {
"type": "string",
"title": "Private key"
},
"client_secret": {
"type": "string",
"title": "Client secret"
},
"scope": {
"type": "string",
"title": "Scope"
},
"oauth_type": {
"type": "string",
"title": "OAuth type",
"default": "custom_app"
},
"auth_url": {
"type": "string",
"title": "Authorization URL",
"default": "https://accounts.google.com/o/oauth2/v2/auth"
},
"access_token_url": {
"type": "string",
"title": "Access token URL",
"default": "https://oauth2.googleapis.com/token"
},
"redirect_url": {
"type": "string",
"title": "Redirect URL",
"default": "http://localhost:8082/oauth2/authorize"
},
"auth_type": {
"type": "string",
"title": "Auth type",
"default": "oauth2"
},
"grant_type": {
"type": "string",
"title": "Grant type",
"default": "authorization_code"
},
"allowed_auth_types": {
"type": "string",
"title": "Allowed auth types",
"default": "oauth2"
}
},
"tj:encrypted": ["private_key", "client_secret"],
"required": ["authentication_type"],
"allOf": [
{
"if": {
"properties": {
"authentication_type": { "const": "service_account" }
}
},
"then": {
"required": ["private_key"]
}
}
],
"tj:ui:properties": {
"authentication_type": {
"order": 1,
"$ref": "#/properties/authentication_type",
"key": "authentication_type",
"label": "Authentication type",
"description": "Single select dropdown for choosing authentication type",
"widget": "dropdown-component-flip",
"list": [
{ "value": "oauth2", "name": "OAuth 2.0" },
{ "value": "service_account", "name": "Service Account" }
]
},
"oauth2": {
"access_type": {
"order": 10,
"$ref": "#/properties/access_type",
"key": "access_type",
"label": "Access type",
"description": "Select read or read/write access",
"widget": "dropdown",
"list": [
{ "value": "read", "name": "Read only" },
{ "value": "write", "name": "Read and Write" }
]
},
"project_id": {
"order": 20,
"$ref": "#/properties/project_id",
"key": "project_id",
"label": "Project ID",
"description": "Enter your Google Cloud Project ID",
"widget": "text-v3"
},
"location": {
"order": 30,
"$ref": "#/properties/location",
"key": "location",
"label": "Region",
"description": "Geographic location of datasets. Leave empty for default.",
"widget": "dropdown",
"list": [
{ "name": "Multi-region: United States (US)", "value": "US" },
{ "name": "Multi-region: European Union (EU)", "value": "EU" },
{ "name": "Iowa (us-central1)", "value": "us-central1" },
{ "name": "South Carolina (us-east1)", "value": "us-east1" },
{ "name": "Northern Virginia (us-east4)", "value": "us-east4" },
{ "name": "Columbus (us-east5)", "value": "us-east5" },
{ "name": "Dallas (us-south1)", "value": "us-south1" },
{ "name": "Oregon (us-west1)", "value": "us-west1" },
{ "name": "Los Angeles (us-west2)", "value": "us-west2" },
{ "name": "Salt Lake City (us-west3)", "value": "us-west3" },
{ "name": "Las Vegas (us-west4)", "value": "us-west4" },
{ "name": "Montréal (northamerica-northeast1)", "value": "northamerica-northeast1" },
{ "name": "Toronto (northamerica-northeast2)", "value": "northamerica-northeast2" },
{ "name": "Querétaro (northamerica-south1)", "value": "northamerica-south1" },
{ "name": "São Paulo (southamerica-east1)", "value": "southamerica-east1" },
{ "name": "Santiago (southamerica-west1)", "value": "southamerica-west1" },
{ "name": "Belgium (europe-west1)", "value": "europe-west1" },
{ "name": "London (europe-west2)", "value": "europe-west2" },
{ "name": "Frankfurt (europe-west3)", "value": "europe-west3" },
{ "name": "Netherlands (europe-west4)", "value": "europe-west4" },
{ "name": "Zürich (europe-west6)", "value": "europe-west6" },
{ "name": "Milan (europe-west8)", "value": "europe-west8" },
{ "name": "Paris (europe-west9)", "value": "europe-west9" },
{ "name": "Berlin (europe-west10)", "value": "europe-west10" },
{ "name": "Turin (europe-west12)", "value": "europe-west12" },
{ "name": "Warsaw (europe-central2)", "value": "europe-central2" },
{ "name": "Finland (europe-north1)", "value": "europe-north1" },
{ "name": "Stockholm (europe-north2)", "value": "europe-north2" },
{ "name": "Madrid (europe-southwest1)", "value": "europe-southwest1" },
{ "name": "Taiwan (asia-east1)", "value": "asia-east1" },
{ "name": "Hong Kong (asia-east2)", "value": "asia-east2" },
{ "name": "Tokyo (asia-northeast1)", "value": "asia-northeast1" },
{ "name": "Osaka (asia-northeast2)", "value": "asia-northeast2" },
{ "name": "Seoul (asia-northeast3)", "value": "asia-northeast3" },
{ "name": "Mumbai (asia-south1)", "value": "asia-south1" },
{ "name": "Delhi (asia-south2)", "value": "asia-south2" },
{ "name": "Singapore (asia-southeast1)", "value": "asia-southeast1" },
{ "name": "Jakarta (asia-southeast2)", "value": "asia-southeast2" },
{ "name": "Sydney (australia-southeast1)", "value": "australia-southeast1" },
{ "name": "Melbourne (australia-southeast2)", "value": "australia-southeast2" },
{ "name": "Doha (me-central1)", "value": "me-central1" },
{ "name": "Dammam (me-central2)", "value": "me-central2" },
{ "name": "Tel Aviv (me-west1)", "value": "me-west1" },
{ "name": "Johannesburg (africa-south1)", "value": "africa-south1" }
]
},
"oauth": {
"order": 40,
"key": "oauth",
"widget": "react-component-oauth",
"description": "A component for BigQuery OAuth",
"oauth_configs": {
"allowed_auth_types": ["oauth2"],
"allowed_grant_types": ["authorization_code"],
"allowed_field_groups": {
"authorization_code": ["client_id", "client_secret"]
},
"oauthTypes": {
"required": true,
"default_value": "custom_app",
"editions": {
"ce": ["custom_app"],
"ee": ["custom_app"],
"cloud": ["custom_app", "tooljet_app"]
}
},
"allowed_scope_field": false
}
}
},
"service_account": {
"private_key": {
"order": 10,
"$ref": "#/properties/private_key",
"key": "private_key",
"label": "Private key",
"description": "Enter JSON private key for service account",
"widget": "password-v3-textarea"
},
"scope": {
"order": 20,
"$ref": "#/properties/scope",
"key": "scope",
"label": "Scope",
"description": "Enter required scopes",
"widget": "text-v3"
},
"location": {
"order": 30,
"$ref": "#/properties/location",
"key": "location",
"label": "Region",
"description": "Geographic location of datasets. Leave empty for default.",
"widget": "dropdown",
"list": [
{ "name": "Multi-region: United States (US)", "value": "US" },
{ "name": "Multi-region: European Union (EU)", "value": "EU" },
{ "name": "Iowa (us-central1)", "value": "us-central1" },
{ "name": "South Carolina (us-east1)", "value": "us-east1" },
{ "name": "Northern Virginia (us-east4)", "value": "us-east4" },
{ "name": "Columbus (us-east5)", "value": "us-east5" },
{ "name": "Dallas (us-south1)", "value": "us-south1" },
{ "name": "Oregon (us-west1)", "value": "us-west1" },
{ "name": "Los Angeles (us-west2)", "value": "us-west2" },
{ "name": "Salt Lake City (us-west3)", "value": "us-west3" },
{ "name": "Las Vegas (us-west4)", "value": "us-west4" },
{ "name": "Montréal (northamerica-northeast1)", "value": "northamerica-northeast1" },
{ "name": "Toronto (northamerica-northeast2)", "value": "northamerica-northeast2" },
{ "name": "Querétaro (northamerica-south1)", "value": "northamerica-south1" },
{ "name": "São Paulo (southamerica-east1)", "value": "southamerica-east1" },
{ "name": "Santiago (southamerica-west1)", "value": "southamerica-west1" },
{ "name": "Belgium (europe-west1)", "value": "europe-west1" },
{ "name": "London (europe-west2)", "value": "europe-west2" },
{ "name": "Frankfurt (europe-west3)", "value": "europe-west3" },
{ "name": "Netherlands (europe-west4)", "value": "europe-west4" },
{ "name": "Zürich (europe-west6)", "value": "europe-west6" },
{ "name": "Milan (europe-west8)", "value": "europe-west8" },
{ "name": "Paris (europe-west9)", "value": "europe-west9" },
{ "name": "Berlin (europe-west10)", "value": "europe-west10" },
{ "name": "Turin (europe-west12)", "value": "europe-west12" },
{ "name": "Warsaw (europe-central2)", "value": "europe-central2" },
{ "name": "Finland (europe-north1)", "value": "europe-north1" },
{ "name": "Stockholm (europe-north2)", "value": "europe-north2" },
{ "name": "Madrid (europe-southwest1)", "value": "europe-southwest1" },
{ "name": "Taiwan (asia-east1)", "value": "asia-east1" },
{ "name": "Hong Kong (asia-east2)", "value": "asia-east2" },
{ "name": "Tokyo (asia-northeast1)", "value": "asia-northeast1" },
{ "name": "Osaka (asia-northeast2)", "value": "asia-northeast2" },
{ "name": "Seoul (asia-northeast3)", "value": "asia-northeast3" },
{ "name": "Mumbai (asia-south1)", "value": "asia-south1" },
{ "name": "Delhi (asia-south2)", "value": "asia-south2" },
{ "name": "Singapore (asia-southeast1)", "value": "asia-southeast1" },
{ "name": "Jakarta (asia-southeast2)", "value": "asia-southeast2" },
{ "name": "Sydney (australia-southeast1)", "value": "australia-southeast1" },
{ "name": "Melbourne (australia-southeast2)", "value": "australia-southeast2" },
{ "name": "Doha (me-central1)", "value": "me-central1" },
{ "name": "Dammam (me-central2)", "value": "me-central2" },
{ "name": "Tel Aviv (me-west1)", "value": "me-west1" },
{ "name": "Johannesburg (africa-south1)", "value": "africa-south1" }
]
}
}
}
}