1. Packages
  2. Snowflake
  3. API Docs
  4. ExternalFunction
Snowflake v0.55.0 published on Friday, Jun 7, 2024 by Pulumi

snowflake.ExternalFunction

Explore with Pulumi AI

snowflake logo
Snowflake v0.55.0 published on Friday, Jun 7, 2024 by Pulumi

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as snowflake from "@pulumi/snowflake";
    
    const testExtFunc = new snowflake.ExternalFunction("test_ext_func", {
        name: "my_function",
        database: "my_test_db",
        schema: "my_test_schema",
        args: [
            {
                name: "arg1",
                type: "varchar",
            },
            {
                name: "arg2",
                type: "varchar",
            },
        ],
        returnType: "variant",
        returnBehavior: "IMMUTABLE",
        apiIntegration: "api_integration_name",
        urlOfProxyAndResource: "https://123456.execute-api.us-west-2.amazonaws.com/prod/test_func",
    });
    
    import pulumi
    import pulumi_snowflake as snowflake
    
    test_ext_func = snowflake.ExternalFunction("test_ext_func",
        name="my_function",
        database="my_test_db",
        schema="my_test_schema",
        args=[
            snowflake.ExternalFunctionArgArgs(
                name="arg1",
                type="varchar",
            ),
            snowflake.ExternalFunctionArgArgs(
                name="arg2",
                type="varchar",
            ),
        ],
        return_type="variant",
        return_behavior="IMMUTABLE",
        api_integration="api_integration_name",
        url_of_proxy_and_resource="https://123456.execute-api.us-west-2.amazonaws.com/prod/test_func")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-snowflake/sdk/go/snowflake"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := snowflake.NewExternalFunction(ctx, "test_ext_func", &snowflake.ExternalFunctionArgs{
    			Name:     pulumi.String("my_function"),
    			Database: pulumi.String("my_test_db"),
    			Schema:   pulumi.String("my_test_schema"),
    			Args: snowflake.ExternalFunctionArgArray{
    				&snowflake.ExternalFunctionArgArgs{
    					Name: pulumi.String("arg1"),
    					Type: pulumi.String("varchar"),
    				},
    				&snowflake.ExternalFunctionArgArgs{
    					Name: pulumi.String("arg2"),
    					Type: pulumi.String("varchar"),
    				},
    			},
    			ReturnType:            pulumi.String("variant"),
    			ReturnBehavior:        pulumi.String("IMMUTABLE"),
    			ApiIntegration:        pulumi.String("api_integration_name"),
    			UrlOfProxyAndResource: pulumi.String("https://123456.execute-api.us-west-2.amazonaws.com/prod/test_func"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Snowflake = Pulumi.Snowflake;
    
    return await Deployment.RunAsync(() => 
    {
        var testExtFunc = new Snowflake.ExternalFunction("test_ext_func", new()
        {
            Name = "my_function",
            Database = "my_test_db",
            Schema = "my_test_schema",
            Args = new[]
            {
                new Snowflake.Inputs.ExternalFunctionArgArgs
                {
                    Name = "arg1",
                    Type = "varchar",
                },
                new Snowflake.Inputs.ExternalFunctionArgArgs
                {
                    Name = "arg2",
                    Type = "varchar",
                },
            },
            ReturnType = "variant",
            ReturnBehavior = "IMMUTABLE",
            ApiIntegration = "api_integration_name",
            UrlOfProxyAndResource = "https://123456.execute-api.us-west-2.amazonaws.com/prod/test_func",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.snowflake.ExternalFunction;
    import com.pulumi.snowflake.ExternalFunctionArgs;
    import com.pulumi.snowflake.inputs.ExternalFunctionArgArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var testExtFunc = new ExternalFunction("testExtFunc", ExternalFunctionArgs.builder()
                .name("my_function")
                .database("my_test_db")
                .schema("my_test_schema")
                .args(            
                    ExternalFunctionArgArgs.builder()
                        .name("arg1")
                        .type("varchar")
                        .build(),
                    ExternalFunctionArgArgs.builder()
                        .name("arg2")
                        .type("varchar")
                        .build())
                .returnType("variant")
                .returnBehavior("IMMUTABLE")
                .apiIntegration("api_integration_name")
                .urlOfProxyAndResource("https://123456.execute-api.us-west-2.amazonaws.com/prod/test_func")
                .build());
    
        }
    }
    
    resources:
      testExtFunc:
        type: snowflake:ExternalFunction
        name: test_ext_func
        properties:
          name: my_function
          database: my_test_db
          schema: my_test_schema
          args:
            - name: arg1
              type: varchar
            - name: arg2
              type: varchar
          returnType: variant
          returnBehavior: IMMUTABLE
          apiIntegration: api_integration_name
          urlOfProxyAndResource: https://123456.execute-api.us-west-2.amazonaws.com/prod/test_func
    

    Create ExternalFunction Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ExternalFunction(name: string, args: ExternalFunctionArgs, opts?: CustomResourceOptions);
    @overload
    def ExternalFunction(resource_name: str,
                         args: ExternalFunctionArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def ExternalFunction(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         return_behavior: Optional[str] = None,
                         url_of_proxy_and_resource: Optional[str] = None,
                         schema: Optional[str] = None,
                         return_type: Optional[str] = None,
                         api_integration: Optional[str] = None,
                         database: Optional[str] = None,
                         context_headers: Optional[Sequence[str]] = None,
                         max_batch_rows: Optional[int] = None,
                         name: Optional[str] = None,
                         null_input_behavior: Optional[str] = None,
                         request_translator: Optional[str] = None,
                         response_translator: Optional[str] = None,
                         headers: Optional[Sequence[ExternalFunctionHeaderArgs]] = None,
                         return_null_allowed: Optional[bool] = None,
                         compression: Optional[str] = None,
                         comment: Optional[str] = None,
                         args: Optional[Sequence[ExternalFunctionArgArgs]] = None)
    func NewExternalFunction(ctx *Context, name string, args ExternalFunctionArgs, opts ...ResourceOption) (*ExternalFunction, error)
    public ExternalFunction(string name, ExternalFunctionArgs args, CustomResourceOptions? opts = null)
    public ExternalFunction(String name, ExternalFunctionArgs args)
    public ExternalFunction(String name, ExternalFunctionArgs args, CustomResourceOptions options)
    
    type: snowflake:ExternalFunction
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ExternalFunctionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ExternalFunctionArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ExternalFunctionArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ExternalFunctionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ExternalFunctionArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var externalFunctionResource = new Snowflake.ExternalFunction("externalFunctionResource", new()
    {
        ReturnBehavior = "string",
        UrlOfProxyAndResource = "string",
        Schema = "string",
        ReturnType = "string",
        ApiIntegration = "string",
        Database = "string",
        ContextHeaders = new[]
        {
            "string",
        },
        MaxBatchRows = 0,
        Name = "string",
        NullInputBehavior = "string",
        RequestTranslator = "string",
        ResponseTranslator = "string",
        Headers = new[]
        {
            new Snowflake.Inputs.ExternalFunctionHeaderArgs
            {
                Name = "string",
                Value = "string",
            },
        },
        ReturnNullAllowed = false,
        Compression = "string",
        Comment = "string",
        Args = new[]
        {
            new Snowflake.Inputs.ExternalFunctionArgArgs
            {
                Name = "string",
                Type = "string",
            },
        },
    });
    
    example, err := snowflake.NewExternalFunction(ctx, "externalFunctionResource", &snowflake.ExternalFunctionArgs{
    	ReturnBehavior:        pulumi.String("string"),
    	UrlOfProxyAndResource: pulumi.String("string"),
    	Schema:                pulumi.String("string"),
    	ReturnType:            pulumi.String("string"),
    	ApiIntegration:        pulumi.String("string"),
    	Database:              pulumi.String("string"),
    	ContextHeaders: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	MaxBatchRows:       pulumi.Int(0),
    	Name:               pulumi.String("string"),
    	NullInputBehavior:  pulumi.String("string"),
    	RequestTranslator:  pulumi.String("string"),
    	ResponseTranslator: pulumi.String("string"),
    	Headers: snowflake.ExternalFunctionHeaderArray{
    		&snowflake.ExternalFunctionHeaderArgs{
    			Name:  pulumi.String("string"),
    			Value: pulumi.String("string"),
    		},
    	},
    	ReturnNullAllowed: pulumi.Bool(false),
    	Compression:       pulumi.String("string"),
    	Comment:           pulumi.String("string"),
    	Args: snowflake.ExternalFunctionArgArray{
    		&snowflake.ExternalFunctionArgArgs{
    			Name: pulumi.String("string"),
    			Type: pulumi.String("string"),
    		},
    	},
    })
    
    var externalFunctionResource = new ExternalFunction("externalFunctionResource", ExternalFunctionArgs.builder()
        .returnBehavior("string")
        .urlOfProxyAndResource("string")
        .schema("string")
        .returnType("string")
        .apiIntegration("string")
        .database("string")
        .contextHeaders("string")
        .maxBatchRows(0)
        .name("string")
        .nullInputBehavior("string")
        .requestTranslator("string")
        .responseTranslator("string")
        .headers(ExternalFunctionHeaderArgs.builder()
            .name("string")
            .value("string")
            .build())
        .returnNullAllowed(false)
        .compression("string")
        .comment("string")
        .args(ExternalFunctionArgArgs.builder()
            .name("string")
            .type("string")
            .build())
        .build());
    
    external_function_resource = snowflake.ExternalFunction("externalFunctionResource",
        return_behavior="string",
        url_of_proxy_and_resource="string",
        schema="string",
        return_type="string",
        api_integration="string",
        database="string",
        context_headers=["string"],
        max_batch_rows=0,
        name="string",
        null_input_behavior="string",
        request_translator="string",
        response_translator="string",
        headers=[snowflake.ExternalFunctionHeaderArgs(
            name="string",
            value="string",
        )],
        return_null_allowed=False,
        compression="string",
        comment="string",
        args=[snowflake.ExternalFunctionArgArgs(
            name="string",
            type="string",
        )])
    
    const externalFunctionResource = new snowflake.ExternalFunction("externalFunctionResource", {
        returnBehavior: "string",
        urlOfProxyAndResource: "string",
        schema: "string",
        returnType: "string",
        apiIntegration: "string",
        database: "string",
        contextHeaders: ["string"],
        maxBatchRows: 0,
        name: "string",
        nullInputBehavior: "string",
        requestTranslator: "string",
        responseTranslator: "string",
        headers: [{
            name: "string",
            value: "string",
        }],
        returnNullAllowed: false,
        compression: "string",
        comment: "string",
        args: [{
            name: "string",
            type: "string",
        }],
    });
    
    type: snowflake:ExternalFunction
    properties:
        apiIntegration: string
        args:
            - name: string
              type: string
        comment: string
        compression: string
        contextHeaders:
            - string
        database: string
        headers:
            - name: string
              value: string
        maxBatchRows: 0
        name: string
        nullInputBehavior: string
        requestTranslator: string
        responseTranslator: string
        returnBehavior: string
        returnNullAllowed: false
        returnType: string
        schema: string
        urlOfProxyAndResource: string
    

    ExternalFunction Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The ExternalFunction resource accepts the following input properties:

    ApiIntegration string
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    Database string
    The database in which to create the external function.
    ReturnBehavior string
    Specifies the behavior of the function when returning results
    ReturnType string
    Specifies the data type returned by the external function.
    Schema string
    The schema in which to create the external function.
    UrlOfProxyAndResource string
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    Args List<ExternalFunctionArg>
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    Comment string
    A description of the external function.
    Compression string
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    ContextHeaders List<string>
    Binds Snowflake context function results to HTTP headers.
    Headers List<ExternalFunctionHeader>
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    MaxBatchRows int
    This specifies the maximum number of rows in each batch sent to the proxy service.
    Name string
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    NullInputBehavior string
    Specifies the behavior of the external function when called with null inputs.
    RequestTranslator string
    This specifies the name of the request translator function
    ResponseTranslator string
    This specifies the name of the response translator function.
    ReturnNullAllowed bool
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    ApiIntegration string
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    Database string
    The database in which to create the external function.
    ReturnBehavior string
    Specifies the behavior of the function when returning results
    ReturnType string
    Specifies the data type returned by the external function.
    Schema string
    The schema in which to create the external function.
    UrlOfProxyAndResource string
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    Args []ExternalFunctionArgArgs
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    Comment string
    A description of the external function.
    Compression string
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    ContextHeaders []string
    Binds Snowflake context function results to HTTP headers.
    Headers []ExternalFunctionHeaderArgs
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    MaxBatchRows int
    This specifies the maximum number of rows in each batch sent to the proxy service.
    Name string
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    NullInputBehavior string
    Specifies the behavior of the external function when called with null inputs.
    RequestTranslator string
    This specifies the name of the request translator function
    ResponseTranslator string
    This specifies the name of the response translator function.
    ReturnNullAllowed bool
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    apiIntegration String
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    database String
    The database in which to create the external function.
    returnBehavior String
    Specifies the behavior of the function when returning results
    returnType String
    Specifies the data type returned by the external function.
    schema String
    The schema in which to create the external function.
    urlOfProxyAndResource String
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    args List<ExternalFunctionArg>
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    comment String
    A description of the external function.
    compression String
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    contextHeaders List<String>
    Binds Snowflake context function results to HTTP headers.
    headers List<ExternalFunctionHeader>
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    maxBatchRows Integer
    This specifies the maximum number of rows in each batch sent to the proxy service.
    name String
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    nullInputBehavior String
    Specifies the behavior of the external function when called with null inputs.
    requestTranslator String
    This specifies the name of the request translator function
    responseTranslator String
    This specifies the name of the response translator function.
    returnNullAllowed Boolean
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    apiIntegration string
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    database string
    The database in which to create the external function.
    returnBehavior string
    Specifies the behavior of the function when returning results
    returnType string
    Specifies the data type returned by the external function.
    schema string
    The schema in which to create the external function.
    urlOfProxyAndResource string
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    args ExternalFunctionArg[]
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    comment string
    A description of the external function.
    compression string
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    contextHeaders string[]
    Binds Snowflake context function results to HTTP headers.
    headers ExternalFunctionHeader[]
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    maxBatchRows number
    This specifies the maximum number of rows in each batch sent to the proxy service.
    name string
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    nullInputBehavior string
    Specifies the behavior of the external function when called with null inputs.
    requestTranslator string
    This specifies the name of the request translator function
    responseTranslator string
    This specifies the name of the response translator function.
    returnNullAllowed boolean
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    api_integration str
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    database str
    The database in which to create the external function.
    return_behavior str
    Specifies the behavior of the function when returning results
    return_type str
    Specifies the data type returned by the external function.
    schema str
    The schema in which to create the external function.
    url_of_proxy_and_resource str
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    args Sequence[ExternalFunctionArgArgs]
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    comment str
    A description of the external function.
    compression str
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    context_headers Sequence[str]
    Binds Snowflake context function results to HTTP headers.
    headers Sequence[ExternalFunctionHeaderArgs]
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    max_batch_rows int
    This specifies the maximum number of rows in each batch sent to the proxy service.
    name str
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    null_input_behavior str
    Specifies the behavior of the external function when called with null inputs.
    request_translator str
    This specifies the name of the request translator function
    response_translator str
    This specifies the name of the response translator function.
    return_null_allowed bool
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    apiIntegration String
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    database String
    The database in which to create the external function.
    returnBehavior String
    Specifies the behavior of the function when returning results
    returnType String
    Specifies the data type returned by the external function.
    schema String
    The schema in which to create the external function.
    urlOfProxyAndResource String
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    args List<Property Map>
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    comment String
    A description of the external function.
    compression String
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    contextHeaders List<String>
    Binds Snowflake context function results to HTTP headers.
    headers List<Property Map>
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    maxBatchRows Number
    This specifies the maximum number of rows in each batch sent to the proxy service.
    name String
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    nullInputBehavior String
    Specifies the behavior of the external function when called with null inputs.
    requestTranslator String
    This specifies the name of the request translator function
    responseTranslator String
    This specifies the name of the response translator function.
    returnNullAllowed Boolean
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ExternalFunction resource produces the following output properties:

    CreatedOn string
    Date and time when the external function was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    CreatedOn string
    Date and time when the external function was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    createdOn String
    Date and time when the external function was created.
    id String
    The provider-assigned unique ID for this managed resource.
    createdOn string
    Date and time when the external function was created.
    id string
    The provider-assigned unique ID for this managed resource.
    created_on str
    Date and time when the external function was created.
    id str
    The provider-assigned unique ID for this managed resource.
    createdOn String
    Date and time when the external function was created.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ExternalFunction Resource

    Get an existing ExternalFunction resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ExternalFunctionState, opts?: CustomResourceOptions): ExternalFunction
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            api_integration: Optional[str] = None,
            args: Optional[Sequence[ExternalFunctionArgArgs]] = None,
            comment: Optional[str] = None,
            compression: Optional[str] = None,
            context_headers: Optional[Sequence[str]] = None,
            created_on: Optional[str] = None,
            database: Optional[str] = None,
            headers: Optional[Sequence[ExternalFunctionHeaderArgs]] = None,
            max_batch_rows: Optional[int] = None,
            name: Optional[str] = None,
            null_input_behavior: Optional[str] = None,
            request_translator: Optional[str] = None,
            response_translator: Optional[str] = None,
            return_behavior: Optional[str] = None,
            return_null_allowed: Optional[bool] = None,
            return_type: Optional[str] = None,
            schema: Optional[str] = None,
            url_of_proxy_and_resource: Optional[str] = None) -> ExternalFunction
    func GetExternalFunction(ctx *Context, name string, id IDInput, state *ExternalFunctionState, opts ...ResourceOption) (*ExternalFunction, error)
    public static ExternalFunction Get(string name, Input<string> id, ExternalFunctionState? state, CustomResourceOptions? opts = null)
    public static ExternalFunction get(String name, Output<String> id, ExternalFunctionState state, CustomResourceOptions options)
    Resource lookup is not supported in YAML
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    ApiIntegration string
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    Args List<ExternalFunctionArg>
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    Comment string
    A description of the external function.
    Compression string
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    ContextHeaders List<string>
    Binds Snowflake context function results to HTTP headers.
    CreatedOn string
    Date and time when the external function was created.
    Database string
    The database in which to create the external function.
    Headers List<ExternalFunctionHeader>
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    MaxBatchRows int
    This specifies the maximum number of rows in each batch sent to the proxy service.
    Name string
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    NullInputBehavior string
    Specifies the behavior of the external function when called with null inputs.
    RequestTranslator string
    This specifies the name of the request translator function
    ResponseTranslator string
    This specifies the name of the response translator function.
    ReturnBehavior string
    Specifies the behavior of the function when returning results
    ReturnNullAllowed bool
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    ReturnType string
    Specifies the data type returned by the external function.
    Schema string
    The schema in which to create the external function.
    UrlOfProxyAndResource string
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    ApiIntegration string
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    Args []ExternalFunctionArgArgs
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    Comment string
    A description of the external function.
    Compression string
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    ContextHeaders []string
    Binds Snowflake context function results to HTTP headers.
    CreatedOn string
    Date and time when the external function was created.
    Database string
    The database in which to create the external function.
    Headers []ExternalFunctionHeaderArgs
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    MaxBatchRows int
    This specifies the maximum number of rows in each batch sent to the proxy service.
    Name string
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    NullInputBehavior string
    Specifies the behavior of the external function when called with null inputs.
    RequestTranslator string
    This specifies the name of the request translator function
    ResponseTranslator string
    This specifies the name of the response translator function.
    ReturnBehavior string
    Specifies the behavior of the function when returning results
    ReturnNullAllowed bool
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    ReturnType string
    Specifies the data type returned by the external function.
    Schema string
    The schema in which to create the external function.
    UrlOfProxyAndResource string
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    apiIntegration String
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    args List<ExternalFunctionArg>
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    comment String
    A description of the external function.
    compression String
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    contextHeaders List<String>
    Binds Snowflake context function results to HTTP headers.
    createdOn String
    Date and time when the external function was created.
    database String
    The database in which to create the external function.
    headers List<ExternalFunctionHeader>
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    maxBatchRows Integer
    This specifies the maximum number of rows in each batch sent to the proxy service.
    name String
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    nullInputBehavior String
    Specifies the behavior of the external function when called with null inputs.
    requestTranslator String
    This specifies the name of the request translator function
    responseTranslator String
    This specifies the name of the response translator function.
    returnBehavior String
    Specifies the behavior of the function when returning results
    returnNullAllowed Boolean
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    returnType String
    Specifies the data type returned by the external function.
    schema String
    The schema in which to create the external function.
    urlOfProxyAndResource String
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    apiIntegration string
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    args ExternalFunctionArg[]
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    comment string
    A description of the external function.
    compression string
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    contextHeaders string[]
    Binds Snowflake context function results to HTTP headers.
    createdOn string
    Date and time when the external function was created.
    database string
    The database in which to create the external function.
    headers ExternalFunctionHeader[]
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    maxBatchRows number
    This specifies the maximum number of rows in each batch sent to the proxy service.
    name string
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    nullInputBehavior string
    Specifies the behavior of the external function when called with null inputs.
    requestTranslator string
    This specifies the name of the request translator function
    responseTranslator string
    This specifies the name of the response translator function.
    returnBehavior string
    Specifies the behavior of the function when returning results
    returnNullAllowed boolean
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    returnType string
    Specifies the data type returned by the external function.
    schema string
    The schema in which to create the external function.
    urlOfProxyAndResource string
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    api_integration str
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    args Sequence[ExternalFunctionArgArgs]
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    comment str
    A description of the external function.
    compression str
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    context_headers Sequence[str]
    Binds Snowflake context function results to HTTP headers.
    created_on str
    Date and time when the external function was created.
    database str
    The database in which to create the external function.
    headers Sequence[ExternalFunctionHeaderArgs]
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    max_batch_rows int
    This specifies the maximum number of rows in each batch sent to the proxy service.
    name str
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    null_input_behavior str
    Specifies the behavior of the external function when called with null inputs.
    request_translator str
    This specifies the name of the request translator function
    response_translator str
    This specifies the name of the response translator function.
    return_behavior str
    Specifies the behavior of the function when returning results
    return_null_allowed bool
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    return_type str
    Specifies the data type returned by the external function.
    schema str
    The schema in which to create the external function.
    url_of_proxy_and_resource str
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.
    apiIntegration String
    The name of the API integration object that should be used to authenticate the call to the proxy service.
    args List<Property Map>
    Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
    comment String
    A description of the external function.
    compression String
    If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
    contextHeaders List<String>
    Binds Snowflake context function results to HTTP headers.
    createdOn String
    Date and time when the external function was created.
    database String
    The database in which to create the external function.
    headers List<Property Map>
    Allows users to specify key-value metadata that is sent with every request as HTTP headers.
    maxBatchRows Number
    This specifies the maximum number of rows in each batch sent to the proxy service.
    name String
    Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
    nullInputBehavior String
    Specifies the behavior of the external function when called with null inputs.
    requestTranslator String
    This specifies the name of the request translator function
    responseTranslator String
    This specifies the name of the response translator function.
    returnBehavior String
    Specifies the behavior of the function when returning results
    returnNullAllowed Boolean
    Indicates whether the function can return NULL values (true) or must return only NON-NULL values (false).
    returnType String
    Specifies the data type returned by the external function.
    schema String
    The schema in which to create the external function.
    urlOfProxyAndResource String
    This is the invocation URL of the proxy service and resource through which Snowflake calls the remote service.

    Supporting Types

    ExternalFunctionArg, ExternalFunctionArgArgs

    Name string
    Argument name
    Type string
    Argument type, e.g. VARCHAR
    Name string
    Argument name
    Type string
    Argument type, e.g. VARCHAR
    name String
    Argument name
    type String
    Argument type, e.g. VARCHAR
    name string
    Argument name
    type string
    Argument type, e.g. VARCHAR
    name str
    Argument name
    type str
    Argument type, e.g. VARCHAR
    name String
    Argument name
    type String
    Argument type, e.g. VARCHAR

    ExternalFunctionHeader, ExternalFunctionHeaderArgs

    Name string
    Header name
    Value string
    Header value
    Name string
    Header name
    Value string
    Header value
    name String
    Header name
    value String
    Header value
    name string
    Header name
    value string
    Header value
    name str
    Header name
    value str
    Header value
    name String
    Header name
    value String
    Header value

    Import

    format is <database_name>.<schema_name>.<external_function_name>(<arg types, separated with ‘,’>)

    $ pulumi import snowflake:index/externalFunction:ExternalFunction example 'dbName.schemaName.externalFunctionName(varchar, varchar, varchar)'
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Snowflake pulumi/pulumi-snowflake
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the snowflake Terraform Provider.
    snowflake logo
    Snowflake v0.55.0 published on Friday, Jun 7, 2024 by Pulumi