We recommend using Azure Native.
Azure v6.28.0 published on Friday, Oct 3, 2025 by Pulumi
azure.marketplace.getAgreement
Uses this data source to access information about an existing Marketplace Agreement.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const barracuda = azure.marketplace.getAgreement({
publisher: "barracudanetworks",
offer: "waf",
plan: "hourly",
});
export const azurermMarketplaceAgreementId = id;
export const azurermMarketplaceAgreementAccepted = accepted;
import pulumi
import pulumi_azure as azure
barracuda = azure.marketplace.get_agreement(publisher="barracudanetworks",
offer="waf",
plan="hourly")
pulumi.export("azurermMarketplaceAgreementId", id)
pulumi.export("azurermMarketplaceAgreementAccepted", accepted)
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/marketplace"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := marketplace.LookupAgreement(ctx, &marketplace.LookupAgreementArgs{
Publisher: "barracudanetworks",
Offer: "waf",
Plan: "hourly",
}, nil)
if err != nil {
return err
}
ctx.Export("azurermMarketplaceAgreementId", id)
ctx.Export("azurermMarketplaceAgreementAccepted", accepted)
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var barracuda = Azure.Marketplace.GetAgreement.Invoke(new()
{
Publisher = "barracudanetworks",
Offer = "waf",
Plan = "hourly",
});
return new Dictionary<string, object?>
{
["azurermMarketplaceAgreementId"] = id,
["azurermMarketplaceAgreementAccepted"] = accepted,
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.marketplace.MarketplaceFunctions;
import com.pulumi.azure.marketplace.inputs.GetAgreementArgs;
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 barracuda = MarketplaceFunctions.getAgreement(GetAgreementArgs.builder()
.publisher("barracudanetworks")
.offer("waf")
.plan("hourly")
.build());
ctx.export("azurermMarketplaceAgreementId", id);
ctx.export("azurermMarketplaceAgreementAccepted", accepted);
}
}
variables:
barracuda:
fn::invoke:
function: azure:marketplace:getAgreement
arguments:
publisher: barracudanetworks
offer: waf
plan: hourly
outputs:
azurermMarketplaceAgreementId: ${id}
azurermMarketplaceAgreementAccepted: ${accepted}
API Providers
This data source uses the following Azure API Providers:
Microsoft.MarketplaceOrdering- 2015-06-01
Using getAgreement
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 getAgreement(args: GetAgreementArgs, opts?: InvokeOptions): Promise<GetAgreementResult>
function getAgreementOutput(args: GetAgreementOutputArgs, opts?: InvokeOptions): Output<GetAgreementResult>def get_agreement(offer: Optional[str] = None,
plan: Optional[str] = None,
publisher: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetAgreementResult
def get_agreement_output(offer: Optional[pulumi.Input[str]] = None,
plan: Optional[pulumi.Input[str]] = None,
publisher: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetAgreementResult]func LookupAgreement(ctx *Context, args *LookupAgreementArgs, opts ...InvokeOption) (*LookupAgreementResult, error)
func LookupAgreementOutput(ctx *Context, args *LookupAgreementOutputArgs, opts ...InvokeOption) LookupAgreementResultOutput> Note: This function is named LookupAgreement in the Go SDK.
public static class GetAgreement
{
public static Task<GetAgreementResult> InvokeAsync(GetAgreementArgs args, InvokeOptions? opts = null)
public static Output<GetAgreementResult> Invoke(GetAgreementInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetAgreementResult> getAgreement(GetAgreementArgs args, InvokeOptions options)
public static Output<GetAgreementResult> getAgreement(GetAgreementArgs args, InvokeOptions options)
fn::invoke:
function: azure:marketplace/getAgreement:getAgreement
arguments:
# arguments dictionaryThe following arguments are supported:
getAgreement Result
The following output properties are available:
- Accepted bool
- Whether the Marketplace Agreement has been accepted.
- Id string
- The provider-assigned unique ID for this managed resource.
- License
Text stringLink - Offer string
- Plan string
- Privacy
Policy stringLink - Publisher string
- Accepted bool
- Whether the Marketplace Agreement has been accepted.
- Id string
- The provider-assigned unique ID for this managed resource.
- License
Text stringLink - Offer string
- Plan string
- Privacy
Policy stringLink - Publisher string
- accepted Boolean
- Whether the Marketplace Agreement has been accepted.
- id String
- The provider-assigned unique ID for this managed resource.
- license
Text StringLink - offer String
- plan String
- privacy
Policy StringLink - publisher String
- accepted boolean
- Whether the Marketplace Agreement has been accepted.
- id string
- The provider-assigned unique ID for this managed resource.
- license
Text stringLink - offer string
- plan string
- privacy
Policy stringLink - publisher string
- accepted bool
- Whether the Marketplace Agreement has been accepted.
- id str
- The provider-assigned unique ID for this managed resource.
- license_
text_ strlink - offer str
- plan str
- privacy_
policy_ strlink - publisher str
- accepted Boolean
- Whether the Marketplace Agreement has been accepted.
- id String
- The provider-assigned unique ID for this managed resource.
- license
Text StringLink - offer String
- plan String
- privacy
Policy StringLink - publisher String
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
azurermTerraform Provider.
