published on Saturday, Jul 25, 2026 by Pulumi
published on Saturday, Jul 25, 2026 by Pulumi
Provides a Datadog Cost Custom Forecast resource. This resource manages the custom forecast override entries for a datadog.CostBudget. Note: each entry’s (month, tag_filters) combination must correspond to an existing entry on the referenced budget, and the budget must exist before this resource is created.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as datadog from "@pulumi/datadog";
// A budget with two monthly entries for the same tag combination, plus a
// custom forecast override for the first month. The entry's (month, tag_filters)
// must match one of the budget's own entries.
const example = new datadog.CostBudget("example", {
name: "Engineering Q1 Budget",
metricsQuery: "sum:aws.cost.amortized{service:ec2} by {service}",
startMonth: 202601,
endMonth: 202602,
entries: [
{
amount: 1000,
month: 202601,
tagFilters: [{
tagKey: "service",
tagValue: "ec2",
}],
},
{
amount: 1200,
month: 202602,
tagFilters: [{
tagKey: "service",
tagValue: "ec2",
}],
},
],
});
const exampleCostCustomForecast = new datadog.CostCustomForecast("example", {
budgetUid: example.budgetId,
entries: [{
amount: 900,
month: 202601,
tagFilters: [{
tagKey: "service",
tagValue: "ec2",
}],
}],
});
import pulumi
import pulumi_datadog as datadog
# A budget with two monthly entries for the same tag combination, plus a
# custom forecast override for the first month. The entry's (month, tag_filters)
# must match one of the budget's own entries.
example = datadog.CostBudget("example",
name="Engineering Q1 Budget",
metrics_query="sum:aws.cost.amortized{service:ec2} by {service}",
start_month=202601,
end_month=202602,
entries=[
{
"amount": float(1000),
"month": 202601,
"tag_filters": [{
"tag_key": "service",
"tag_value": "ec2",
}],
},
{
"amount": float(1200),
"month": 202602,
"tag_filters": [{
"tag_key": "service",
"tag_value": "ec2",
}],
},
])
example_cost_custom_forecast = datadog.CostCustomForecast("example",
budget_uid=example.budget_id,
entries=[{
"amount": float(900),
"month": 202601,
"tag_filters": [{
"tag_key": "service",
"tag_value": "ec2",
}],
}])
package main
import (
"github.com/pulumi/pulumi-datadog/sdk/v5/go/datadog"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// A budget with two monthly entries for the same tag combination, plus a
// custom forecast override for the first month. The entry's (month, tag_filters)
// must match one of the budget's own entries.
example, err := datadog.NewCostBudget(ctx, "example", &datadog.CostBudgetArgs{
Name: pulumi.String("Engineering Q1 Budget"),
MetricsQuery: pulumi.String("sum:aws.cost.amortized{service:ec2} by {service}"),
StartMonth: pulumi.Int(202601),
EndMonth: pulumi.Int(202602),
Entries: datadog.CostBudgetEntryArray{
&datadog.CostBudgetEntryArgs{
Amount: pulumi.Float64(1000),
Month: pulumi.Int(202601),
TagFilters: datadog.CostBudgetEntryTagFilterArray{
&datadog.CostBudgetEntryTagFilterArgs{
TagKey: pulumi.String("service"),
TagValue: pulumi.String("ec2"),
},
},
},
&datadog.CostBudgetEntryArgs{
Amount: pulumi.Float64(1200),
Month: pulumi.Int(202602),
TagFilters: datadog.CostBudgetEntryTagFilterArray{
&datadog.CostBudgetEntryTagFilterArgs{
TagKey: pulumi.String("service"),
TagValue: pulumi.String("ec2"),
},
},
},
},
})
if err != nil {
return err
}
_, err = datadog.NewCostCustomForecast(ctx, "example", &datadog.CostCustomForecastArgs{
BudgetUid: example.BudgetId,
Entries: datadog.CostCustomForecastEntryArray{
&datadog.CostCustomForecastEntryArgs{
Amount: pulumi.Float64(900),
Month: pulumi.Int(202601),
TagFilters: datadog.CostCustomForecastEntryTagFilterArray{
&datadog.CostCustomForecastEntryTagFilterArgs{
TagKey: pulumi.String("service"),
TagValue: pulumi.String("ec2"),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Datadog = Pulumi.Datadog;
return await Deployment.RunAsync(() =>
{
// A budget with two monthly entries for the same tag combination, plus a
// custom forecast override for the first month. The entry's (month, tag_filters)
// must match one of the budget's own entries.
var example = new Datadog.CostBudget("example", new()
{
Name = "Engineering Q1 Budget",
MetricsQuery = "sum:aws.cost.amortized{service:ec2} by {service}",
StartMonth = 202601,
EndMonth = 202602,
Entries = new[]
{
new Datadog.Inputs.CostBudgetEntryArgs
{
Amount = 1000,
Month = 202601,
TagFilters = new[]
{
new Datadog.Inputs.CostBudgetEntryTagFilterArgs
{
TagKey = "service",
TagValue = "ec2",
},
},
},
new Datadog.Inputs.CostBudgetEntryArgs
{
Amount = 1200,
Month = 202602,
TagFilters = new[]
{
new Datadog.Inputs.CostBudgetEntryTagFilterArgs
{
TagKey = "service",
TagValue = "ec2",
},
},
},
},
});
var exampleCostCustomForecast = new Datadog.CostCustomForecast("example", new()
{
BudgetUid = example.BudgetId,
Entries = new[]
{
new Datadog.Inputs.CostCustomForecastEntryArgs
{
Amount = 900,
Month = 202601,
TagFilters = new[]
{
new Datadog.Inputs.CostCustomForecastEntryTagFilterArgs
{
TagKey = "service",
TagValue = "ec2",
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.datadog.CostBudget;
import com.pulumi.datadog.CostBudgetArgs;
import com.pulumi.datadog.inputs.CostBudgetEntryArgs;
import com.pulumi.datadog.inputs.CostBudgetEntryTagFilterArgs;
import com.pulumi.datadog.CostCustomForecast;
import com.pulumi.datadog.CostCustomForecastArgs;
import com.pulumi.datadog.inputs.CostCustomForecastEntryArgs;
import com.pulumi.datadog.inputs.CostCustomForecastEntryTagFilterArgs;
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) {
// A budget with two monthly entries for the same tag combination, plus a
// custom forecast override for the first month. The entry's (month, tag_filters)
// must match one of the budget's own entries.
var example = new CostBudget("example", CostBudgetArgs.builder()
.name("Engineering Q1 Budget")
.metricsQuery("sum:aws.cost.amortized{service:ec2} by {service}")
.startMonth(202601)
.endMonth(202602)
.entries(
CostBudgetEntryArgs.builder()
.amount(1000.0)
.month(202601)
.tagFilters(CostBudgetEntryTagFilterArgs.builder()
.tagKey("service")
.tagValue("ec2")
.build())
.build(),
CostBudgetEntryArgs.builder()
.amount(1200.0)
.month(202602)
.tagFilters(CostBudgetEntryTagFilterArgs.builder()
.tagKey("service")
.tagValue("ec2")
.build())
.build())
.build());
var exampleCostCustomForecast = new CostCustomForecast("exampleCostCustomForecast", CostCustomForecastArgs.builder()
.budgetUid(example.budgetId())
.entries(CostCustomForecastEntryArgs.builder()
.amount(900.0)
.month(202601)
.tagFilters(CostCustomForecastEntryTagFilterArgs.builder()
.tagKey("service")
.tagValue("ec2")
.build())
.build())
.build());
}
}
resources:
# A budget with two monthly entries for the same tag combination, plus a
# custom forecast override for the first month. The entry's (month, tag_filters)
# must match one of the budget's own entries.
example:
type: datadog:CostBudget
properties:
name: Engineering Q1 Budget
metricsQuery: sum:aws.cost.amortized{service:ec2} by {service}
startMonth: 202601
endMonth: 202602
entries:
- amount: 1000
month: 202601
tagFilters:
- tagKey: service
tagValue: ec2
- amount: 1200
month: 202602
tagFilters:
- tagKey: service
tagValue: ec2
exampleCostCustomForecast:
type: datadog:CostCustomForecast
name: example
properties:
budgetUid: ${example.budgetId}
entries:
- amount: 900
month: 202601
tagFilters:
- tagKey: service
tagValue: ec2
pulumi {
required_providers {
datadog = {
source = "pulumi/datadog"
}
}
}
# A budget with two monthly entries for the same tag combination, plus a
# custom forecast override for the first month. The entry's (month, tag_filters)
# must match one of the budget's own entries.
resource "datadog_costbudget" "example" {
name = "Engineering Q1 Budget"
metrics_query = "sum:aws.cost.amortized{service:ec2} by {service}"
start_month = 202601
end_month = 202602
entries {
amount = 1000
month = 202601
tag_filters {
tag_key = "service"
tag_value = "ec2"
}
}
entries {
amount = 1200
month = 202602
tag_filters {
tag_key = "service"
tag_value = "ec2"
}
}
}
resource "datadog_costcustomforecast" "example" {
budget_uid = datadog_costbudget.example.budget_id
entries {
amount = 900
month = 202601
tag_filters {
tag_key = "service"
tag_value = "ec2"
}
}
}
Create CostCustomForecast Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new CostCustomForecast(name: string, args: CostCustomForecastArgs, opts?: CustomResourceOptions);@overload
def CostCustomForecast(resource_name: str,
args: CostCustomForecastArgs,
opts: Optional[ResourceOptions] = None)
@overload
def CostCustomForecast(resource_name: str,
opts: Optional[ResourceOptions] = None,
budget_uid: Optional[str] = None,
entries: Optional[Sequence[CostCustomForecastEntryArgs]] = None)func NewCostCustomForecast(ctx *Context, name string, args CostCustomForecastArgs, opts ...ResourceOption) (*CostCustomForecast, error)public CostCustomForecast(string name, CostCustomForecastArgs args, CustomResourceOptions? opts = null)
public CostCustomForecast(String name, CostCustomForecastArgs args)
public CostCustomForecast(String name, CostCustomForecastArgs args, CustomResourceOptions options)
type: datadog:CostCustomForecast
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "datadog_cost_custom_forecast" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args CostCustomForecastArgs
- 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 CostCustomForecastArgs
- 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 CostCustomForecastArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CostCustomForecastArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CostCustomForecastArgs
- 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 costCustomForecastResource = new Datadog.CostCustomForecast("costCustomForecastResource", new()
{
BudgetUid = "string",
Entries = new[]
{
new Datadog.Inputs.CostCustomForecastEntryArgs
{
Amount = 0,
Month = 0,
TagFilters = new[]
{
new Datadog.Inputs.CostCustomForecastEntryTagFilterArgs
{
TagKey = "string",
TagValue = "string",
},
},
},
},
});
example, err := datadog.NewCostCustomForecast(ctx, "costCustomForecastResource", &datadog.CostCustomForecastArgs{
BudgetUid: pulumi.String("string"),
Entries: datadog.CostCustomForecastEntryArray{
&datadog.CostCustomForecastEntryArgs{
Amount: pulumi.Float64(0),
Month: pulumi.Int(0),
TagFilters: datadog.CostCustomForecastEntryTagFilterArray{
&datadog.CostCustomForecastEntryTagFilterArgs{
TagKey: pulumi.String("string"),
TagValue: pulumi.String("string"),
},
},
},
},
})
resource "datadog_cost_custom_forecast" "costCustomForecastResource" {
lifecycle {
create_before_destroy = true
}
budget_uid = "string"
entries {
amount = 0
month = 0
tag_filters {
tag_key = "string"
tag_value = "string"
}
}
}
var costCustomForecastResource = new CostCustomForecast("costCustomForecastResource", CostCustomForecastArgs.builder()
.budgetUid("string")
.entries(CostCustomForecastEntryArgs.builder()
.amount(0.0)
.month(0)
.tagFilters(CostCustomForecastEntryTagFilterArgs.builder()
.tagKey("string")
.tagValue("string")
.build())
.build())
.build());
cost_custom_forecast_resource = datadog.CostCustomForecast("costCustomForecastResource",
budget_uid="string",
entries=[{
"amount": float(0),
"month": 0,
"tag_filters": [{
"tag_key": "string",
"tag_value": "string",
}],
}])
const costCustomForecastResource = new datadog.CostCustomForecast("costCustomForecastResource", {
budgetUid: "string",
entries: [{
amount: 0,
month: 0,
tagFilters: [{
tagKey: "string",
tagValue: "string",
}],
}],
});
type: datadog:CostCustomForecast
properties:
budgetUid: string
entries:
- amount: 0
month: 0
tagFilters:
- tagKey: string
tagValue: string
CostCustomForecast 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 CostCustomForecast resource accepts the following input properties:
- Budget
Uid string - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- Entries
List<Cost
Custom Forecast Entry> - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset.
- Budget
Uid string - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- Entries
[]Cost
Custom Forecast Entry Args - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset.
- budget_
uid string - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- entries list(object)
- Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset.
- budget
Uid String - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- entries
List<Cost
Custom Forecast Entry> - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset.
- budget
Uid string - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- entries
Cost
Custom Forecast Entry[] - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset.
- budget_
uid str - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- entries
Sequence[Cost
Custom Forecast Entry Args] - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset.
- budget
Uid String - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- entries List<Property Map>
- Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset.
Outputs
All input properties are implicitly available as output properties. Additionally, the CostCustomForecast resource produces the following output properties:
- Created
At int - Timestamp the custom forecast was created, in Unix milliseconds.
- Created
By string - The ID of the user that created the custom forecast.
- Id string
- The provider-assigned unique ID for this managed resource.
- Updated
At int - Timestamp the custom forecast was last updated, in Unix milliseconds.
- Updated
By string - The ID of the user that last updated the custom forecast.
- Created
At int - Timestamp the custom forecast was created, in Unix milliseconds.
- Created
By string - The ID of the user that created the custom forecast.
- Id string
- The provider-assigned unique ID for this managed resource.
- Updated
At int - Timestamp the custom forecast was last updated, in Unix milliseconds.
- Updated
By string - The ID of the user that last updated the custom forecast.
- created_
at number - Timestamp the custom forecast was created, in Unix milliseconds.
- created_
by string - The ID of the user that created the custom forecast.
- id string
- The provider-assigned unique ID for this managed resource.
- updated_
at number - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated_
by string - The ID of the user that last updated the custom forecast.
- created
At Integer - Timestamp the custom forecast was created, in Unix milliseconds.
- created
By String - The ID of the user that created the custom forecast.
- id String
- The provider-assigned unique ID for this managed resource.
- updated
At Integer - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated
By String - The ID of the user that last updated the custom forecast.
- created
At number - Timestamp the custom forecast was created, in Unix milliseconds.
- created
By string - The ID of the user that created the custom forecast.
- id string
- The provider-assigned unique ID for this managed resource.
- updated
At number - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated
By string - The ID of the user that last updated the custom forecast.
- created_
at int - Timestamp the custom forecast was created, in Unix milliseconds.
- created_
by str - The ID of the user that created the custom forecast.
- id str
- The provider-assigned unique ID for this managed resource.
- updated_
at int - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated_
by str - The ID of the user that last updated the custom forecast.
- created
At Number - Timestamp the custom forecast was created, in Unix milliseconds.
- created
By String - The ID of the user that created the custom forecast.
- id String
- The provider-assigned unique ID for this managed resource.
- updated
At Number - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated
By String - The ID of the user that last updated the custom forecast.
Look up Existing CostCustomForecast Resource
Get an existing CostCustomForecast 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?: CostCustomForecastState, opts?: CustomResourceOptions): CostCustomForecast@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
budget_uid: Optional[str] = None,
created_at: Optional[int] = None,
created_by: Optional[str] = None,
entries: Optional[Sequence[CostCustomForecastEntryArgs]] = None,
updated_at: Optional[int] = None,
updated_by: Optional[str] = None) -> CostCustomForecastfunc GetCostCustomForecast(ctx *Context, name string, id IDInput, state *CostCustomForecastState, opts ...ResourceOption) (*CostCustomForecast, error)public static CostCustomForecast Get(string name, Input<string> id, CostCustomForecastState? state, CustomResourceOptions? opts = null)public static CostCustomForecast get(String name, Output<String> id, CostCustomForecastState state, CustomResourceOptions options)resources: _: type: datadog:CostCustomForecast get: id: ${id}import {
to = datadog_cost_custom_forecast.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.
- Budget
Uid string - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- Created
At int - Timestamp the custom forecast was created, in Unix milliseconds.
- Created
By string - The ID of the user that created the custom forecast.
- Entries
List<Cost
Custom Forecast Entry> - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset. - Updated
At int - Timestamp the custom forecast was last updated, in Unix milliseconds.
- Updated
By string - The ID of the user that last updated the custom forecast.
- Budget
Uid string - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- Created
At int - Timestamp the custom forecast was created, in Unix milliseconds.
- Created
By string - The ID of the user that created the custom forecast.
- Entries
[]Cost
Custom Forecast Entry Args - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset. - Updated
At int - Timestamp the custom forecast was last updated, in Unix milliseconds.
- Updated
By string - The ID of the user that last updated the custom forecast.
- budget_
uid string - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- created_
at number - Timestamp the custom forecast was created, in Unix milliseconds.
- created_
by string - The ID of the user that created the custom forecast.
- entries list(object)
- Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset. - updated_
at number - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated_
by string - The ID of the user that last updated the custom forecast.
- budget
Uid String - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- created
At Integer - Timestamp the custom forecast was created, in Unix milliseconds.
- created
By String - The ID of the user that created the custom forecast.
- entries
List<Cost
Custom Forecast Entry> - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset. - updated
At Integer - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated
By String - The ID of the user that last updated the custom forecast.
- budget
Uid string - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- created
At number - Timestamp the custom forecast was created, in Unix milliseconds.
- created
By string - The ID of the user that created the custom forecast.
- entries
Cost
Custom Forecast Entry[] - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset. - updated
At number - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated
By string - The ID of the user that last updated the custom forecast.
- budget_
uid str - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- created_
at int - Timestamp the custom forecast was created, in Unix milliseconds.
- created_
by str - The ID of the user that created the custom forecast.
- entries
Sequence[Cost
Custom Forecast Entry Args] - Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset. - updated_
at int - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated_
by str - The ID of the user that last updated the custom forecast.
- budget
Uid String - The UUID of the budget that this custom forecast belongs to. Changing this value forces a new resource to be created.
- created
At Number - Timestamp the custom forecast was created, in Unix milliseconds.
- created
By String - The ID of the user that created the custom forecast.
- entries List<Property Map>
- Monthly custom forecast entries. Each entry overrides the forecast for one
(month, tag_filters)combination that must already exist as a budget entry. To remove all custom forecast entries, destroy this resource rather than setting an emptyentriesset. - updated
At Number - Timestamp the custom forecast was last updated, in Unix milliseconds.
- updated
By String - The ID of the user that last updated the custom forecast.
Supporting Types
CostCustomForecastEntry, CostCustomForecastEntryArgs
- Amount double
- The forecast override amount for the month. Value must be at least 0.000000.
- Month int
- The month the entry applies to, in
YYYYMMformat. - Tag
Filters List<CostCustom Forecast Entry Tag Filter> - Tag filters that scope this entry to a specific budget entry tag combination.
- Amount float64
- The forecast override amount for the month. Value must be at least 0.000000.
- Month int
- The month the entry applies to, in
YYYYMMformat. - Tag
Filters []CostCustom Forecast Entry Tag Filter - Tag filters that scope this entry to a specific budget entry tag combination.
- amount number
- The forecast override amount for the month. Value must be at least 0.000000.
- month number
- The month the entry applies to, in
YYYYMMformat. - tag_
filters list(object) - Tag filters that scope this entry to a specific budget entry tag combination.
- amount Double
- The forecast override amount for the month. Value must be at least 0.000000.
- month Integer
- The month the entry applies to, in
YYYYMMformat. - tag
Filters List<CostCustom Forecast Entry Tag Filter> - Tag filters that scope this entry to a specific budget entry tag combination.
- amount number
- The forecast override amount for the month. Value must be at least 0.000000.
- month number
- The month the entry applies to, in
YYYYMMformat. - tag
Filters CostCustom Forecast Entry Tag Filter[] - Tag filters that scope this entry to a specific budget entry tag combination.
- amount float
- The forecast override amount for the month. Value must be at least 0.000000.
- month int
- The month the entry applies to, in
YYYYMMformat. - tag_
filters Sequence[CostCustom Forecast Entry Tag Filter] - Tag filters that scope this entry to a specific budget entry tag combination.
- amount Number
- The forecast override amount for the month. Value must be at least 0.000000.
- month Number
- The month the entry applies to, in
YYYYMMformat. - tag
Filters List<Property Map> - Tag filters that scope this entry to a specific budget entry tag combination.
CostCustomForecastEntryTagFilter, CostCustomForecastEntryTagFilterArgs
Import
The pulumi import command can be used, for example:
Cost custom forecasts are imported using the parent budget’s UUID, e.g.
$ pulumi import datadog:index/costCustomForecast:CostCustomForecast example a1b2c3d4-e5f6-7890-abcd-ef1234567890
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Datadog pulumi/pulumi-datadog
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
datadogTerraform Provider.
published on Saturday, Jul 25, 2026 by Pulumi