1. Registry
  2. Packages
  3. Fastly Provider
  4. API Docs
  5. AiRuntimeControlProviderConnection
Viewing docs for Fastly v12.7.0
published on Friday, Sep 18, 2026 by Pulumi
fastly logo
Viewing docs for Fastly v12.7.0
published on Friday, Sep 18, 2026 by Pulumi

    Provides a Fastly AI Runtime Control provider connection, which stores the authentication details and the set of allowed models for an AI model provider.

    Note: The API never returns the provider’s apiKey, so its value cannot be reconciled against the remote state. Terraform will only update it when the configured value changes.

    Example Usage

    Basic usage:

    import * as pulumi from "@pulumi/pulumi";
    import * as fastly from "@pulumi/fastly";
    
    const demo = new fastly.AiRuntimeControlProviderConnection("demo", {
        name: "OpenAI",
        baseUrl: "https://api.openai.com",
        apiKey: openaiApiKey,
        models: [
            "gpt-4o",
            "gpt-4o-mini",
        ],
    });
    
    import pulumi
    import pulumi_fastly as fastly
    
    demo = fastly.AiRuntimeControlProviderConnection("demo",
        name="OpenAI",
        base_url="https://api.openai.com",
        api_key=openai_api_key,
        models=[
            "gpt-4o",
            "gpt-4o-mini",
        ])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-fastly/sdk/v12/go/fastly"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := fastly.NewAiRuntimeControlProviderConnection(ctx, "demo", &fastly.AiRuntimeControlProviderConnectionArgs{
    			Name:    pulumi.String("OpenAI"),
    			BaseUrl: pulumi.String("https://api.openai.com"),
    			ApiKey:  pulumi.Any(openaiApiKey),
    			Models: pulumi.StringArray{
    				pulumi.String("gpt-4o"),
    				pulumi.String("gpt-4o-mini"),
    			},
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Fastly = Pulumi.Fastly;
    
    return await Deployment.RunAsync(() => 
    {
        var demo = new Fastly.AiRuntimeControlProviderConnection("demo", new()
        {
            Name = "OpenAI",
            BaseUrl = "https://api.openai.com",
            ApiKey = openaiApiKey,
            Models = new[]
            {
                "gpt-4o",
                "gpt-4o-mini",
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.fastly.AiRuntimeControlProviderConnection;
    import com.pulumi.fastly.AiRuntimeControlProviderConnectionArgs;
    import java.util.ArrayList;
    import java.util.Arrays;
    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 demo = new AiRuntimeControlProviderConnection("demo", AiRuntimeControlProviderConnectionArgs.builder()
                .name("OpenAI")
                .baseUrl("https://api.openai.com")
                .apiKey(openaiApiKey)
                .models(            
                    "gpt-4o",
                    "gpt-4o-mini")
                .build());
    
        }
    }
    
    resources:
      demo:
        type: fastly:AiRuntimeControlProviderConnection
        properties:
          name: OpenAI
          baseUrl: https://api.openai.com
          apiKey: ${openaiApiKey}
          models:
            - gpt-4o
            - gpt-4o-mini
    
    pulumi {
      required_providers {
        fastly = {
          source = "pulumi/fastly"
        }
      }
    }
    
    resource "fastly_airuntimecontrolproviderconnection" "demo" {
      name     = "OpenAI"
      base_url = "https://api.openai.com"
      api_key  = openaiApiKey
      models   = ["gpt-4o", "gpt-4o-mini"]
    }
    

    Create AiRuntimeControlProviderConnection Resource

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

    Constructor syntax

    new AiRuntimeControlProviderConnection(name: string, args: AiRuntimeControlProviderConnectionArgs, opts?: CustomResourceOptions);
    @overload
    def AiRuntimeControlProviderConnection(resource_name: str,
                                           args: AiRuntimeControlProviderConnectionArgs,
                                           opts: Optional[ResourceOptions] = None)
    
    @overload
    def AiRuntimeControlProviderConnection(resource_name: str,
                                           opts: Optional[ResourceOptions] = None,
                                           api_key: Optional[str] = None,
                                           base_url: Optional[str] = None,
                                           models: Optional[Sequence[str]] = None,
                                           name: Optional[str] = None)
    func NewAiRuntimeControlProviderConnection(ctx *Context, name string, args AiRuntimeControlProviderConnectionArgs, opts ...ResourceOption) (*AiRuntimeControlProviderConnection, error)
    public AiRuntimeControlProviderConnection(string name, AiRuntimeControlProviderConnectionArgs args, CustomResourceOptions? opts = null)
    public AiRuntimeControlProviderConnection(String name, AiRuntimeControlProviderConnectionArgs args)
    public AiRuntimeControlProviderConnection(String name, AiRuntimeControlProviderConnectionArgs args, CustomResourceOptions options)
    
    type: fastly:AiRuntimeControlProviderConnection
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "fastly_ai_runtime_control_provider_connection" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args AiRuntimeControlProviderConnectionArgs
    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 AiRuntimeControlProviderConnectionArgs
    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 AiRuntimeControlProviderConnectionArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args AiRuntimeControlProviderConnectionArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args AiRuntimeControlProviderConnectionArgs
    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 aiRuntimeControlProviderConnectionResource = new Fastly.AiRuntimeControlProviderConnection("aiRuntimeControlProviderConnectionResource", new()
    {
        ApiKey = "string",
        BaseUrl = "string",
        Models = new[]
        {
            "string",
        },
        Name = "string",
    });
    
    example, err := fastly.NewAiRuntimeControlProviderConnection(ctx, "aiRuntimeControlProviderConnectionResource", &fastly.AiRuntimeControlProviderConnectionArgs{
    	ApiKey:  pulumi.String("string"),
    	BaseUrl: pulumi.String("string"),
    	Models: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Name: pulumi.String("string"),
    })
    
    resource "fastly_ai_runtime_control_provider_connection" "aiRuntimeControlProviderConnectionResource" {
      lifecycle {
        create_before_destroy = true
      }
      api_key  = "string"
      base_url = "string"
      models   = ["string"]
      name     = "string"
    }
    
    var aiRuntimeControlProviderConnectionResource = new AiRuntimeControlProviderConnection("aiRuntimeControlProviderConnectionResource", AiRuntimeControlProviderConnectionArgs.builder()
        .apiKey("string")
        .baseUrl("string")
        .models("string")
        .name("string")
        .build());
    
    ai_runtime_control_provider_connection_resource = fastly.AiRuntimeControlProviderConnection("aiRuntimeControlProviderConnectionResource",
        api_key="string",
        base_url="string",
        models=["string"],
        name="string")
    
    const aiRuntimeControlProviderConnectionResource = new fastly.AiRuntimeControlProviderConnection("aiRuntimeControlProviderConnectionResource", {
        apiKey: "string",
        baseUrl: "string",
        models: ["string"],
        name: "string",
    });
    
    type: fastly:AiRuntimeControlProviderConnection
    properties:
        apiKey: string
        baseUrl: string
        models:
            - string
        name: string
    

    AiRuntimeControlProviderConnection Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The AiRuntimeControlProviderConnection resource accepts the following input properties:

    ApiKey string
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    BaseUrl string
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    Models List<string>
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    Name string
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    ApiKey string
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    BaseUrl string
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    Models []string
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    Name string
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    api_key string
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    base_url string
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    models list(string)
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name string
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    apiKey String
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    baseUrl String
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    models List<String>
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name String
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    apiKey string
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    baseUrl string
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    models string[]
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name string
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    api_key str
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    base_url str
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    models Sequence[str]
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name str
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    apiKey String
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    baseUrl String
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    models List<String>
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name String
    A human-readable name for the provider. Changing this forces a new provider connection to be created.

    Outputs

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

    CreatedAt string
    Timestamp (UTC) of when the provider connection was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    SecretId string
    A hash representing the apiKey used to create the provider connection.
    UpdatedAt string
    Timestamp (UTC) of when the provider connection was last updated.
    CreatedAt string
    Timestamp (UTC) of when the provider connection was created.
    Id string
    The provider-assigned unique ID for this managed resource.
    SecretId string
    A hash representing the apiKey used to create the provider connection.
    UpdatedAt string
    Timestamp (UTC) of when the provider connection was last updated.
    created_at string
    Timestamp (UTC) of when the provider connection was created.
    id string
    The provider-assigned unique ID for this managed resource.
    secret_id string
    A hash representing the apiKey used to create the provider connection.
    updated_at string
    Timestamp (UTC) of when the provider connection was last updated.
    createdAt String
    Timestamp (UTC) of when the provider connection was created.
    id String
    The provider-assigned unique ID for this managed resource.
    secretId String
    A hash representing the apiKey used to create the provider connection.
    updatedAt String
    Timestamp (UTC) of when the provider connection was last updated.
    createdAt string
    Timestamp (UTC) of when the provider connection was created.
    id string
    The provider-assigned unique ID for this managed resource.
    secretId string
    A hash representing the apiKey used to create the provider connection.
    updatedAt string
    Timestamp (UTC) of when the provider connection was last updated.
    created_at str
    Timestamp (UTC) of when the provider connection was created.
    id str
    The provider-assigned unique ID for this managed resource.
    secret_id str
    A hash representing the apiKey used to create the provider connection.
    updated_at str
    Timestamp (UTC) of when the provider connection was last updated.
    createdAt String
    Timestamp (UTC) of when the provider connection was created.
    id String
    The provider-assigned unique ID for this managed resource.
    secretId String
    A hash representing the apiKey used to create the provider connection.
    updatedAt String
    Timestamp (UTC) of when the provider connection was last updated.

    Look up Existing AiRuntimeControlProviderConnection Resource

    Get an existing AiRuntimeControlProviderConnection 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?: AiRuntimeControlProviderConnectionState, opts?: CustomResourceOptions): AiRuntimeControlProviderConnection
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            api_key: Optional[str] = None,
            base_url: Optional[str] = None,
            created_at: Optional[str] = None,
            models: Optional[Sequence[str]] = None,
            name: Optional[str] = None,
            secret_id: Optional[str] = None,
            updated_at: Optional[str] = None) -> AiRuntimeControlProviderConnection
    func GetAiRuntimeControlProviderConnection(ctx *Context, name string, id IDInput, state *AiRuntimeControlProviderConnectionState, opts ...ResourceOption) (*AiRuntimeControlProviderConnection, error)
    public static AiRuntimeControlProviderConnection Get(string name, Input<string> id, AiRuntimeControlProviderConnectionState? state, CustomResourceOptions? opts = null)
    public static AiRuntimeControlProviderConnection get(String name, Output<String> id, AiRuntimeControlProviderConnectionState state, CustomResourceOptions options)
    resources:  _:    type: fastly:AiRuntimeControlProviderConnection    get:      id: ${id}
    import {
      to = fastly_ai_runtime_control_provider_connection.example
      id = "${id}"
    }
    
    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:
    ApiKey string
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    BaseUrl string
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    CreatedAt string
    Timestamp (UTC) of when the provider connection was created.
    Models List<string>
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    Name string
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    SecretId string
    A hash representing the apiKey used to create the provider connection.
    UpdatedAt string
    Timestamp (UTC) of when the provider connection was last updated.
    ApiKey string
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    BaseUrl string
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    CreatedAt string
    Timestamp (UTC) of when the provider connection was created.
    Models []string
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    Name string
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    SecretId string
    A hash representing the apiKey used to create the provider connection.
    UpdatedAt string
    Timestamp (UTC) of when the provider connection was last updated.
    api_key string
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    base_url string
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    created_at string
    Timestamp (UTC) of when the provider connection was created.
    models list(string)
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name string
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    secret_id string
    A hash representing the apiKey used to create the provider connection.
    updated_at string
    Timestamp (UTC) of when the provider connection was last updated.
    apiKey String
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    baseUrl String
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    createdAt String
    Timestamp (UTC) of when the provider connection was created.
    models List<String>
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name String
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    secretId String
    A hash representing the apiKey used to create the provider connection.
    updatedAt String
    Timestamp (UTC) of when the provider connection was last updated.
    apiKey string
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    baseUrl string
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    createdAt string
    Timestamp (UTC) of when the provider connection was created.
    models string[]
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name string
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    secretId string
    A hash representing the apiKey used to create the provider connection.
    updatedAt string
    Timestamp (UTC) of when the provider connection was last updated.
    api_key str
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    base_url str
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    created_at str
    Timestamp (UTC) of when the provider connection was created.
    models Sequence[str]
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name str
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    secret_id str
    A hash representing the apiKey used to create the provider connection.
    updated_at str
    Timestamp (UTC) of when the provider connection was last updated.
    apiKey String
    The provider's secret key used for authentication. Never returned by the API, so it cannot be reconciled with the remote state.
    baseUrl String
    The base URL for the provider's API, e.g. https://api.openai.com. Must not include a /v1 suffix, which the API appends automatically. Trailing slashes are stripped.
    createdAt String
    Timestamp (UTC) of when the provider connection was created.
    models List<String>
    The set of allowed AI model identifiers, e.g. ["gpt-4o", "gpt-4o-mini"].
    name String
    A human-readable name for the provider. Changing this forces a new provider connection to be created.
    secretId String
    A hash representing the apiKey used to create the provider connection.
    updatedAt String
    Timestamp (UTC) of when the provider connection was last updated.

    Import

    Fastly AI Runtime Control provider connections can be imported using their ID, e.g.

    $ pulumi import fastly:index/aiRuntimeControlProviderConnection:AiRuntimeControlProviderConnection demo xxxxxxxxxxxxxxxxxxxx
    

    Note that apiKey cannot be imported, since the API does not return it.

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

    Package Details

    Repository
    Fastly pulumi/pulumi-fastly
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the fastly Terraform Provider.
    fastly logo
    Viewing docs for Fastly v12.7.0
    published on Friday, Sep 18, 2026 by Pulumi

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial