{ "$schema": "https://raw.githubusercontent.com/ToolJet/ToolJet/develop/plugins/schemas/manifest.schema.json", "title": "Restapi datasource", "description": "A schema defining restapi datasource", "type": "api", "source": { "name": "Rest API", "kind": "restapi", "options": { "url": { "type": "string" }, "auth_type": { "type": "string" }, "grant_type": { "type": "string" }, "add_token_to": { "type": "string" }, "header_prefix": { "type": "string" }, "access_token_url": { "type": "string" }, "client_id": { "type": "string" }, "client_secret": { "type": "string", "encrypted": true }, "password": { "encrypted": true }, "bearer_token": { "encrypted": true }, "scopes": { "type": "string" }, "auth_url": { "type": "string" }, "client_auth": { "type": "string" }, "headers": { "type": "array" }, "custom_auth_params": { "type": "array" }, "ca_cert": { "encrypted": true }, "client_key": { "encrypted": true }, "client_cert": { "encrypted": true }, "root_cert": { "encrypted": true } }, "exposedVariables": { "isLoading": false, "data": {}, "rawData": {} }, "customTesting": true }, "defaults": { "url": { "value": "" }, "auth_type": { "value": "none" }, "grant_type": { "value": "authorization_code" }, "add_token_to": { "value": "header" }, "header_prefix": { "value": "Bearer " }, "access_token_url": { "value": "" }, "client_id": { "value": "" }, "client_secret": { "value": "" }, "scopes": { "value": "read, write" }, "username": { "value": "" }, "password": { "value": "" }, "bearer_token": { "value": "" }, "auth_url": { "value": "" }, "client_auth": { "value": "header" }, "headers": { "value": [ [ "", "" ] ] }, "custom_query_params": { "value": [ [ "", "" ] ] }, "custom_auth_params": { "value": [ [ "", "" ] ] }, "access_token_custom_headers": { "value": [ [ "", "" ] ] }, "multiple_auth_enabled": { "value": false }, "ssl_certificate": { "value": "none" } }, "properties": { "ssl_certificate": { "label": "SSL Certificate", "key": "ssl_certificate", "type": "dropdown-component-flip", "description": "Single select dropdown for choosing certificates", "list": [ { "value": "ca_certificate", "name": "CA certificate" }, { "value": "client_certificate", "name": "Client certificate" }, { "value": "none", "name": "None" } ], "commonFields": { "url": { "label": "Base URL", "key": "url", "type": "text", "description": "https://api.example.com/v1/" }, "headers": { "label": "Headers", "key": "headers", "type": "react-component-headers", "description": "key-value pair headers for rest api" }, "auth_type": { "label": "Authentication Type", "key": "auth_type", "type": "react-component-oauth-authentication", "description": "key-value pair headers for rest api" } } }, "ca_certificate": { "ca_cert": { "label": "CA Cert", "key": "ca_cert", "type": "textarea", "encrypted": true, "description": "Enter ca certificate" } }, "client_certificate": { "client_key": { "label": "Client Key", "key": "client_key", "type": "textarea", "encrypted": true, "description": "Enter client key" }, "client_cert": { "label": "Client Cert", "key": "client_cert", "type": "textarea", "encrypted": true, "description": "Enter client certificate" }, "ca_cert": { "label": "CA Cert", "key": "ca_cert", "type": "textarea", "encrypted": true, "description": "Enter ca certificate" } } }, "required": [ "url" ] }