Menu

Expand
Rate this page:

Function Version

Function Versions are specific versions of JavaScript Node.js code that execute at a particular domain.

The steps to create Functions are as follows:

  1. Create a Function
  2. Create a Function Version (this resource) by making a POST request to https://serverless-upload.twilio.com

You will need the Function Version SID that the create request returns to include this Function in a Build.

Function Version properties

Resource Properties in REST API format
sid
sid<ZN> Not PII

The unique string that we created to identify the Function Version resource.

account_sid
sid<AC> Not PII

The SID of the Account that created the Function Version resource.

service_sid
sid<ZS> Not PII

The SID of the Service that the Function Version resource is associated with.

function_sid
sid<ZH> Not PII

The SID of the Function resource that is the parent of the Function Version resource.

path

The URL-friendly string by which the Function Version resource can be referenced. It can be a maximum of 255 characters. All paths begin with a forward slash ('/'). If a Function Version creation request is submitted with a path not containing a leading slash, the path will automatically be prepended with one.

visibility
enum:visibility Not PII

The access control that determines how the Function Version resource can be accessed. Can be: public, protected, or private.

date_created
date_time<iso8601> Not PII

The date and time in GMT when the Function Version resource was created specified in ISO 8601 format.

url
url Not PII

The absolute URL of the Function Version resource.

links
uri_map Not PII

Create a Function Version resource

A Function Version resource is created by making a POST request to the following, dedicated URL:

https://serverless-upload.twilio.com/v1/Services/{ServiceSid}/Functions/{FunctionSid}/Versions

The following example creates a Function Version resource using the language of your choice (or curl) and an external file, firstfunc.js, which contains the function body.

Loading Code Sample...
        
        

        Upload Function body

        Note that the Serverless upload endpoint is on a different subdomain from the rest of the Serverless API (serverless-upload.twilio.com instead of serverless.twilio.com), and is not supported by the Twilio Helper Libraries at this time.

        The create action accepts these parameters:

        Parameter Description
        Content The Function code to upload as a JavaScript file.
        FunctionSid The SID of the Function resource to upload this code to.
        Path The path to assign the Function. Must be URL Friendly, without fragments, and the characters ;,?:@+&$()' " are disallowed.
        ServiceSid The SID of the Function's Service.
        Visibility The visibility of the Function. Can be public, protected, or private.

        Fetch a FunctionVersion resource

        get
        https://serverless.twilio.com/v1/Services/{ServiceSid}/Functions/{FunctionSid}/Versions/{Sid}
        Parameters
        Parameters in REST API format
        service_sid
        Path
        get sid_like<ZS> Not PII

        The SID of the Service to fetch the Function Version resource from.

        function_sid
        Path
        get sid<ZH> Not PII

        The SID of the function that is the parent of the Function Version resource to fetch.

        sid
        Path
        get sid<ZN> Not PII

        The SID of the Function Version resource to fetch.

        Example 1
        Loading Code Sample...
              
              

              Fetch a Function Version resource

              Read multiple FunctionVersion resources

              get
              https://serverless.twilio.com/v1/Services/{ServiceSid}/Functions/{FunctionSid}/Versions
              Parameters
              Parameters in REST API format
              service_sid
              Path
              get sid_like<ZS> Not PII

              The SID of the Service to read the Function Version resources from.

              function_sid
              Path
              get sid<ZH> Not PII

              The SID of the function that is the parent of the Function Version resources to read.

              Example 1
              Loading Code Sample...
                    
                    

                    Read multiple Function Version resources

                    There is no API endpoint for deleting a Function Version, only Functions. Function Versions are automatically purged if they are not used by a Build for 30 days. See our retention policy to learn more.

                    Rate this page:

                    Need some help?

                    We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd by visiting Twilio's Stack Overflow Collective or browsing the Twilio tag on Stack Overflow.

                    Loading Code Sample...
                          
                          
                          

                          Thank you for your feedback!

                          Please select the reason(s) for your feedback. The additional information you provide helps us improve our documentation:

                          Sending your feedback...
                          🎉 Thank you for your feedback!
                          Something went wrong. Please try again.

                          Thanks for your feedback!

                          thanks-feedback-gif