1. Packages
  2. Packages
  3. AWS
  4. API Docs
  5. savingsplans
  6. getOfferings
Viewing docs for AWS v7.27.0
published on Thursday, Apr 23, 2026 by Pulumi
aws logo
Viewing docs for AWS v7.27.0
published on Thursday, Apr 23, 2026 by Pulumi

    Data source for getting AWS Savings Plans Offerings.

    Example Usage

    Basic Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as aws from "@pulumi/aws";
    
    const example = aws.savingsplans.getOfferings({
        productType: "EC2",
        filters: [{
            name: "region",
            values: ["us-west-2"],
        }],
    });
    
    import pulumi
    import pulumi_aws as aws
    
    example = aws.savingsplans.get_offerings(product_type="EC2",
        filters=[{
            "name": "region",
            "values": ["us-west-2"],
        }])
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-aws/sdk/v7/go/aws/savingsplans"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := savingsplans.GetOfferings(ctx, &savingsplans.GetOfferingsArgs{
    			ProductType: pulumi.StringRef("EC2"),
    			Filters: []savingsplans.GetOfferingsFilter{
    				{
    					Name: "region",
    					Values: []string{
    						"us-west-2",
    					},
    				},
    			},
    		}, nil)
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Aws = Pulumi.Aws;
    
    return await Deployment.RunAsync(() => 
    {
        var example = Aws.SavingsPlans.GetOfferings.Invoke(new()
        {
            ProductType = "EC2",
            Filters = new[]
            {
                new Aws.SavingsPlans.Inputs.GetOfferingsFilterInputArgs
                {
                    Name = "region",
                    Values = new[]
                    {
                        "us-west-2",
                    },
                },
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.aws.savingsplans.SavingsplansFunctions;
    import com.pulumi.aws.savingsplans.inputs.GetOfferingsArgs;
    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) {
            final var example = SavingsplansFunctions.getOfferings(GetOfferingsArgs.builder()
                .productType("EC2")
                .filters(GetOfferingsFilterArgs.builder()
                    .name("region")
                    .values("us-west-2")
                    .build())
                .build());
    
        }
    }
    
    variables:
      example:
        fn::invoke:
          function: aws:savingsplans:getOfferings
          arguments:
            productType: EC2
            filters:
              - name: region
                values:
                  - us-west-2
    

    Using getOfferings

    Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.

    function getOfferings(args: GetOfferingsArgs, opts?: InvokeOptions): Promise<GetOfferingsResult>
    function getOfferingsOutput(args: GetOfferingsOutputArgs, opts?: InvokeOptions): Output<GetOfferingsResult>
    def get_offerings(currencies: Optional[Sequence[str]] = None,
                      descriptions: Optional[Sequence[str]] = None,
                      durations: Optional[Sequence[int]] = None,
                      filters: Optional[Sequence[GetOfferingsFilter]] = None,
                      offering_ids: Optional[Sequence[str]] = None,
                      operations: Optional[Sequence[str]] = None,
                      payment_options: Optional[Sequence[str]] = None,
                      plan_types: Optional[Sequence[str]] = None,
                      product_type: Optional[str] = None,
                      service_codes: Optional[Sequence[str]] = None,
                      usage_types: Optional[Sequence[str]] = None,
                      opts: Optional[InvokeOptions] = None) -> GetOfferingsResult
    def get_offerings_output(currencies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      descriptions: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      durations: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
                      filters: Optional[pulumi.Input[Sequence[pulumi.Input[GetOfferingsFilterArgs]]]] = None,
                      offering_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      operations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      payment_options: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      plan_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      product_type: Optional[pulumi.Input[str]] = None,
                      service_codes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      usage_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      opts: Optional[InvokeOptions] = None) -> Output[GetOfferingsResult]
    func GetOfferings(ctx *Context, args *GetOfferingsArgs, opts ...InvokeOption) (*GetOfferingsResult, error)
    func GetOfferingsOutput(ctx *Context, args *GetOfferingsOutputArgs, opts ...InvokeOption) GetOfferingsResultOutput

    > Note: This function is named GetOfferings in the Go SDK.

    public static class GetOfferings 
    {
        public static Task<GetOfferingsResult> InvokeAsync(GetOfferingsArgs args, InvokeOptions? opts = null)
        public static Output<GetOfferingsResult> Invoke(GetOfferingsInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetOfferingsResult> getOfferings(GetOfferingsArgs args, InvokeOptions options)
    public static Output<GetOfferingsResult> getOfferings(GetOfferingsArgs args, InvokeOptions options)
    
    fn::invoke:
      function: aws:savingsplans/getOfferings:getOfferings
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Currencies List<string>
    List of currencies.
    Descriptions List<string>
    List of descriptions.
    Durations List<int>
    List of durations, in seconds.
    Filters List<GetOfferingsFilter>
    List of filters. See Filter.
    OfferingIds List<string>
    List of offering IDs.
    Operations List<string>
    List of operations.
    PaymentOptions List<string>
    List of payment options.
    PlanTypes List<string>
    List of plan types.
    ProductType string
    Product type.
    ServiceCodes List<string>
    List of service codes.
    UsageTypes List<string>
    List of usage types.
    Currencies []string
    List of currencies.
    Descriptions []string
    List of descriptions.
    Durations []int
    List of durations, in seconds.
    Filters []GetOfferingsFilter
    List of filters. See Filter.
    OfferingIds []string
    List of offering IDs.
    Operations []string
    List of operations.
    PaymentOptions []string
    List of payment options.
    PlanTypes []string
    List of plan types.
    ProductType string
    Product type.
    ServiceCodes []string
    List of service codes.
    UsageTypes []string
    List of usage types.
    currencies List<String>
    List of currencies.
    descriptions List<String>
    List of descriptions.
    durations List<Integer>
    List of durations, in seconds.
    filters List<GetOfferingsFilter>
    List of filters. See Filter.
    offeringIds List<String>
    List of offering IDs.
    operations List<String>
    List of operations.
    paymentOptions List<String>
    List of payment options.
    planTypes List<String>
    List of plan types.
    productType String
    Product type.
    serviceCodes List<String>
    List of service codes.
    usageTypes List<String>
    List of usage types.
    currencies string[]
    List of currencies.
    descriptions string[]
    List of descriptions.
    durations number[]
    List of durations, in seconds.
    filters GetOfferingsFilter[]
    List of filters. See Filter.
    offeringIds string[]
    List of offering IDs.
    operations string[]
    List of operations.
    paymentOptions string[]
    List of payment options.
    planTypes string[]
    List of plan types.
    productType string
    Product type.
    serviceCodes string[]
    List of service codes.
    usageTypes string[]
    List of usage types.
    currencies Sequence[str]
    List of currencies.
    descriptions Sequence[str]
    List of descriptions.
    durations Sequence[int]
    List of durations, in seconds.
    filters Sequence[GetOfferingsFilter]
    List of filters. See Filter.
    offering_ids Sequence[str]
    List of offering IDs.
    operations Sequence[str]
    List of operations.
    payment_options Sequence[str]
    List of payment options.
    plan_types Sequence[str]
    List of plan types.
    product_type str
    Product type.
    service_codes Sequence[str]
    List of service codes.
    usage_types Sequence[str]
    List of usage types.
    currencies List<String>
    List of currencies.
    descriptions List<String>
    List of descriptions.
    durations List<Number>
    List of durations, in seconds.
    filters List<Property Map>
    List of filters. See Filter.
    offeringIds List<String>
    List of offering IDs.
    operations List<String>
    List of operations.
    paymentOptions List<String>
    List of payment options.
    planTypes List<String>
    List of plan types.
    productType String
    Product type.
    serviceCodes List<String>
    List of service codes.
    usageTypes List<String>
    List of usage types.

    getOfferings Result

    The following output properties are available:

    Id string
    The provider-assigned unique ID for this managed resource.
    Offerings List<GetOfferingsOffering>
    List of Savings Plans Offerings. See offerings Attribute Reference.
    Currencies List<string>
    Descriptions List<string>
    Durations List<int>
    Filters List<GetOfferingsFilter>
    OfferingIds List<string>
    Operations List<string>
    PaymentOptions List<string>
    PlanTypes List<string>
    ProductType string
    ServiceCodes List<string>
    UsageTypes List<string>
    Id string
    The provider-assigned unique ID for this managed resource.
    Offerings []GetOfferingsOffering
    List of Savings Plans Offerings. See offerings Attribute Reference.
    Currencies []string
    Descriptions []string
    Durations []int
    Filters []GetOfferingsFilter
    OfferingIds []string
    Operations []string
    PaymentOptions []string
    PlanTypes []string
    ProductType string
    ServiceCodes []string
    UsageTypes []string
    id String
    The provider-assigned unique ID for this managed resource.
    offerings List<GetOfferingsOffering>
    List of Savings Plans Offerings. See offerings Attribute Reference.
    currencies List<String>
    descriptions List<String>
    durations List<Integer>
    filters List<GetOfferingsFilter>
    offeringIds List<String>
    operations List<String>
    paymentOptions List<String>
    planTypes List<String>
    productType String
    serviceCodes List<String>
    usageTypes List<String>
    id string
    The provider-assigned unique ID for this managed resource.
    offerings GetOfferingsOffering[]
    List of Savings Plans Offerings. See offerings Attribute Reference.
    currencies string[]
    descriptions string[]
    durations number[]
    filters GetOfferingsFilter[]
    offeringIds string[]
    operations string[]
    paymentOptions string[]
    planTypes string[]
    productType string
    serviceCodes string[]
    usageTypes string[]
    id str
    The provider-assigned unique ID for this managed resource.
    offerings Sequence[GetOfferingsOffering]
    List of Savings Plans Offerings. See offerings Attribute Reference.
    currencies Sequence[str]
    descriptions Sequence[str]
    durations Sequence[int]
    filters Sequence[GetOfferingsFilter]
    offering_ids Sequence[str]
    operations Sequence[str]
    payment_options Sequence[str]
    plan_types Sequence[str]
    product_type str
    service_codes Sequence[str]
    usage_types Sequence[str]
    id String
    The provider-assigned unique ID for this managed resource.
    offerings List<Property Map>
    List of Savings Plans Offerings. See offerings Attribute Reference.
    currencies List<String>
    descriptions List<String>
    durations List<Number>
    filters List<Property Map>
    offeringIds List<String>
    operations List<String>
    paymentOptions List<String>
    planTypes List<String>
    productType String
    serviceCodes List<String>
    usageTypes List<String>

    Supporting Types

    GetOfferingsFilter

    Name string
    Filter name.
    Values List<string>
    List of filter values.
    Name string
    Filter name.
    Values []string
    List of filter values.
    name String
    Filter name.
    values List<String>
    List of filter values.
    name string
    Filter name.
    values string[]
    List of filter values.
    name str
    Filter name.
    values Sequence[str]
    List of filter values.
    name String
    Filter name.
    values List<String>
    List of filter values.

    GetOfferingsOffering

    Currency string
    Currency.
    Description string
    Description.
    DurationSeconds int
    Duration, in seconds.
    OfferingId string
    Offering ID.
    Operation string
    Operation.
    PaymentOption string
    Payment option.
    PlanType string
    Plan type.
    ProductTypes List<string>
    List of product types.
    Properties List<GetOfferingsOfferingProperty>
    List of properties. See properties Attribute Reference.
    ServiceCode string
    Service code.
    UsageType string
    Usage type.
    Currency string
    Currency.
    Description string
    Description.
    DurationSeconds int
    Duration, in seconds.
    OfferingId string
    Offering ID.
    Operation string
    Operation.
    PaymentOption string
    Payment option.
    PlanType string
    Plan type.
    ProductTypes []string
    List of product types.
    Properties []GetOfferingsOfferingProperty
    List of properties. See properties Attribute Reference.
    ServiceCode string
    Service code.
    UsageType string
    Usage type.
    currency String
    Currency.
    description String
    Description.
    durationSeconds Integer
    Duration, in seconds.
    offeringId String
    Offering ID.
    operation String
    Operation.
    paymentOption String
    Payment option.
    planType String
    Plan type.
    productTypes List<String>
    List of product types.
    properties List<GetOfferingsOfferingProperty>
    List of properties. See properties Attribute Reference.
    serviceCode String
    Service code.
    usageType String
    Usage type.
    currency string
    Currency.
    description string
    Description.
    durationSeconds number
    Duration, in seconds.
    offeringId string
    Offering ID.
    operation string
    Operation.
    paymentOption string
    Payment option.
    planType string
    Plan type.
    productTypes string[]
    List of product types.
    properties GetOfferingsOfferingProperty[]
    List of properties. See properties Attribute Reference.
    serviceCode string
    Service code.
    usageType string
    Usage type.
    currency str
    Currency.
    description str
    Description.
    duration_seconds int
    Duration, in seconds.
    offering_id str
    Offering ID.
    operation str
    Operation.
    payment_option str
    Payment option.
    plan_type str
    Plan type.
    product_types Sequence[str]
    List of product types.
    properties Sequence[GetOfferingsOfferingProperty]
    List of properties. See properties Attribute Reference.
    service_code str
    Service code.
    usage_type str
    Usage type.
    currency String
    Currency.
    description String
    Description.
    durationSeconds Number
    Duration, in seconds.
    offeringId String
    Offering ID.
    operation String
    Operation.
    paymentOption String
    Payment option.
    planType String
    Plan type.
    productTypes List<String>
    List of product types.
    properties List<Property Map>
    List of properties. See properties Attribute Reference.
    serviceCode String
    Service code.
    usageType String
    Usage type.

    GetOfferingsOfferingProperty

    Name string
    Property name.
    Value string
    Property value.
    Name string
    Property name.
    Value string
    Property value.
    name String
    Property name.
    value String
    Property value.
    name string
    Property name.
    value string
    Property value.
    name str
    Property name.
    value str
    Property value.
    name String
    Property name.
    value String
    Property value.

    Package Details

    Repository
    AWS Classic pulumi/pulumi-aws
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the aws Terraform Provider.
    aws logo
    Viewing docs for AWS v7.27.0
    published on Thursday, Apr 23, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.