Writing external functions

External functions are user-defined functions that are stored and executed outside of Snowflake.

External functions make it easier to access external API services such as geocoders, machine learning models, and other custom code running outside of Snowflake. This feature eliminates the need to export and reimport data when using third-party services, significantly simplifying your data pipelines.

Note

When using external functions in China, use the syntax and workflow described for AWS.

Introduction to external functions

Learn about external functions, which call executable code that is developed, maintained, stored, and executed outside Snowflake.

Remote service input and output data formats

Understand the data formats sent and received by Snowflake.

Using request and response translators with data for a remote service

Change the format of data sent to and received from remote services.

Designing high-performance external functions

Design high-performance functions with these tips on asynchronous services, scalability, concurrency, and reliability.

External functions best practices

Improve efficiency and prevent unexpected results with these best practices.

Securing an external function

Create secure external functions.

Remote services

Creating external functions on AWS

Create an external function from functionality on AWS.

Creating external functions on GCP

Create an external function from functionality on GCP.

Creating external functions on Microsoft Azure

Create an external function from functionality on Azure.