apigee library
Apigee: organizations, runtime instances, environments, env groups, add-ons, data collectors, analytics datastores, NAT addresses, endpoint attachments, DNS zones, spaces, sync authorization, target servers, developers, developer apps, API products, app groups, env keystores/references, KVMs, keystore aliases (self-signed / key+cert / PKCS12), API proxies, shared flows + deployments, flow hooks, environment debug masks, proxy deployments, control-plane access, and Advanced API Security profiles / feedback / monitoring conditions. Org/instance/env bill while provisioned (never_apply for apply-smoke).
Classes
- ApigeeAddonsConfig
-
Typed helper for the
addons_configblock ofgoogle_apigee_addons_config(derived from provider schema). - ApigeeAddonsConfigAdvancedApiOpsConfig
-
Typed helper for the
addons_config.advanced_api_ops_configblock ofgoogle_apigee_addons_config(derived from provider schema). - ApigeeAddonsConfigApiSecurityConfig
-
Typed helper for the
addons_config.api_security_configblock ofgoogle_apigee_addons_config(derived from provider schema). - ApigeeAddonsConfigConnectorsPlatformConfig
-
Typed helper for the
addons_config.connectors_platform_configblock ofgoogle_apigee_addons_config(derived from provider schema). - ApigeeAddonsConfigIntegrationConfig
-
Typed helper for the
addons_config.integration_configblock ofgoogle_apigee_addons_config(derived from provider schema). - ApigeeAddonsConfigMonetizationConfig
-
Typed helper for the
addons_config.monetization_configblock ofgoogle_apigee_addons_config(derived from provider schema). - ApigeeApiProductAttributes
-
Typed helper for the
attributesblock ofgoogle_apigee_api_product(derived from provider schema). Shared by every block of this shape in the resource. - ApigeeApiProductGraphqlOperationGroup
-
Typed helper for the
graphql_operation_groupblock ofgoogle_apigee_api_product(derived from provider schema). - ApigeeApiProductGraphqlOperationGroupOperationConfigs
-
Typed helper for the
graphql_operation_group.operation_configsblock ofgoogle_apigee_api_product(derived from provider schema). - ApigeeApiProductGraphqlOperationGroupOperations
-
Typed helper for the
graphql_operation_group.operation_configs.operationsblock ofgoogle_apigee_api_product(derived from provider schema). - ApigeeApiProductGrpcOperationGroup
-
Typed helper for the
grpc_operation_groupblock ofgoogle_apigee_api_product(derived from provider schema). - ApigeeApiProductGrpcOperationGroupOperationConfigs
-
Typed helper for the
grpc_operation_group.operation_configsblock ofgoogle_apigee_api_product(derived from provider schema). - ApigeeApiProductOperationConfigsQuota
-
Typed helper for the
graphql_operation_group.operation_configs.quotablock ofgoogle_apigee_api_product(derived from provider schema). Shared by every block of this shape in the resource. - ApigeeApiProductOperationGroup
-
Typed helper for the
operation_groupblock ofgoogle_apigee_api_product(derived from provider schema). - ApigeeApiProductOperationGroupOperationConfigs
-
Typed helper for the
operation_group.operation_configsblock ofgoogle_apigee_api_product(derived from provider schema). - ApigeeApiProductOperationGroupOperations
-
Typed helper for the
operation_group.operation_configs.operationsblock ofgoogle_apigee_api_product(derived from provider schema). - ApigeeAppGroupAttributes
-
Typed helper for the
attributesblock ofgoogle_apigee_app_group(derived from provider schema). - ApigeeDatastoreConfig
-
Typed helper for the
datastore_configblock ofgoogle_apigee_datastore(derived from provider schema). - ApigeeDeveloperAppAttributes
-
Typed helper for the
attributesblock ofgoogle_apigee_developer_app(derived from provider schema). - ApigeeDeveloperAttributes
-
Typed helper for the
attributesblock ofgoogle_apigee_developer(derived from provider schema). - ApigeeDnsZonePeeringConfig
-
Typed helper for the
peering_configblock ofgoogle_apigee_dns_zone(derived from provider schema). - ApigeeEnvironmentClientIpResolutionConfig
-
Typed helper for the
client_ip_resolution_configblock ofgoogle_apigee_environment(derived from provider schema). - ApigeeEnvironmentHeaderIndexAlgorithm
-
Typed helper for the
client_ip_resolution_config.header_index_algorithmblock ofgoogle_apigee_environment(derived from provider schema). - ApigeeEnvironmentIamBindingCondition
-
Typed helper for the
conditionblock ofgoogle_apigee_environment_iam_binding(derived from provider schema). - ApigeeEnvironmentIamMemberCondition
-
Typed helper for the
conditionblock ofgoogle_apigee_environment_iam_member(derived from provider schema). - ApigeeEnvironmentNodeConfig
-
Typed helper for the
node_configblock ofgoogle_apigee_environment(derived from provider schema). - ApigeeEnvironmentProperties
-
Typed helper for the
propertiesblock ofgoogle_apigee_environment(derived from provider schema). - ApigeeEnvironmentProperty
-
Typed helper for the
properties.propertyblock ofgoogle_apigee_environment(derived from provider schema). - ApigeeInstanceAccessLoggingConfig
-
Typed helper for the
access_logging_configblock ofgoogle_apigee_instance(derived from provider schema). - ApigeeKeystoresAliasesSelfSignedCertSubject
-
Typed helper for the
subjectblock ofgoogle_apigee_keystores_aliases_self_signed_cert(derived from provider schema). - ApigeeKeystoresAliasesSelfSignedCertSubjectAlternativeDnsNames
-
Typed helper for the
subject_alternative_dns_namesblock ofgoogle_apigee_keystores_aliases_self_signed_cert(derived from provider schema). - ApigeeOrganizationProperties
-
Typed helper for the
propertiesblock ofgoogle_apigee_organization(derived from provider schema). - ApigeeOrganizationProperty
-
Typed helper for the
properties.propertyblock ofgoogle_apigee_organization(derived from provider schema). - ApigeeSecurityActionAllow
-
Typed helper for the
allowblock ofgoogle_apigee_security_action(derived from provider schema). - ApigeeSecurityActionConditionConfig
-
Typed helper for the
condition_configblock ofgoogle_apigee_security_action(derived from provider schema). - ApigeeSecurityActionDeny
-
Typed helper for the
denyblock ofgoogle_apigee_security_action(derived from provider schema). - ApigeeSecurityActionEffect
-
Exactly one of
allow,deny,flagongoogle_apigee_security_action: the provider rejects none and more than one, so each variant sets one of them. - ApigeeSecurityActionEffectAllow
-
The ApigeeSecurityActionEffect.allow choice: sets
allow. - ApigeeSecurityActionEffectDeny
-
The ApigeeSecurityActionEffect.deny choice: sets
deny. - ApigeeSecurityActionEffectFlag
-
The ApigeeSecurityActionEffect.flag choice: sets
flag. - ApigeeSecurityActionExpiration
-
At most one of
expire_time,ttlongoogle_apigee_security_action: the provider rejects more than one, so each variant sets one of them and a null choice sets none. - ApigeeSecurityActionExpirationExpireTime
-
The ApigeeSecurityActionExpiration.expireTime choice: sets
expire_time. - ApigeeSecurityActionExpirationTtl
-
The ApigeeSecurityActionExpiration.ttl choice: sets
ttl. - ApigeeSecurityActionFlag
-
Typed helper for the
flagblock ofgoogle_apigee_security_action(derived from provider schema). - ApigeeSecurityActionHeaders
-
Typed helper for the
flag.headersblock ofgoogle_apigee_security_action(derived from provider schema). - ApigeeSecurityFeedbackContexts
-
Typed helper for the
feedback_contextsblock ofgoogle_apigee_security_feedback(derived from provider schema). - ApigeeSecurityMonitoringConditionIncludeAllResources
-
Empty
include_all_resources {}block required by the provider (exactly_one_ofwith one live member; siblingincludeis not shipped yet). - ApigeeSecurityProfileV2ProfileAssessmentConfigs
-
Typed helper for the
profile_assessment_configsblock ofgoogle_apigee_security_profile_v2(derived from provider schema). - ApigeeTargetServerCommonName
-
Typed helper for the
s_sl_info.common_nameblock ofgoogle_apigee_target_server(derived from provider schema). - ApigeeTargetServerSSlInfo
-
Typed helper for the
s_sl_infoblock ofgoogle_apigee_target_server(derived from provider schema). -
AppConstant<
T> -
A value the Stack hands to application code as a
static constin the generated AppExports file — known when synth runs, so the app compiles against it. - AppExports
-
Where synth writes the Dart file application code imports: the Stack's
constants, as the
static constmembers of<name>Constants, and a typed reader of its Terraform outputs,<name>Outputs. -
AttributeRef<
T> -
Public for sealed pattern matching, but constructor is private — only
TfRef.attribute()may construct instances. - DartDefineOutput
-
An
outputwhose value is the client build's--dart-definefile, registered withStack.addDartDefineOutput. - Data
-
Base of every user-instantiable Terraform
datablock. - DataGoogleApigeeEnvironmentIamPolicy
-
Factory wrapper for
google_apigee_environment_iam_policy. - DataGoogleApigeeInstance
-
Factory wrapper for
google_apigee_instance. -
DataRef<
T> -
Public for sealed pattern matching, but constructor is private — only
TfRef.data()may construct instances. - EnvironmentConstant
- The AppConstant.fromEnvironment choice.
- GcsBackend
-
terraform { backend "gcs" { ... } }configuration. - GoogleApigeeAddonsConfig
-
Factory wrapper for
google_apigee_addons_config. - GoogleApigeeApi
-
Factory wrapper for
google_apigee_api. - GoogleApigeeApiDeployment
-
Factory wrapper for
google_apigee_api_deployment. - GoogleApigeeApiProduct
-
Factory wrapper for
google_apigee_api_product. - GoogleApigeeAppGroup
-
Factory wrapper for
google_apigee_app_group. - GoogleApigeeControlPlaneAccess
-
Factory wrapper for
google_apigee_control_plane_access. - GoogleApigeeDataCollector
-
Factory wrapper for
google_apigee_data_collector. - GoogleApigeeDatastore
-
Factory wrapper for
google_apigee_datastore. - GoogleApigeeDeveloper
-
Factory wrapper for
google_apigee_developer. - GoogleApigeeDeveloperApp
-
Factory wrapper for
google_apigee_developer_app. - GoogleApigeeDnsZone
-
Factory wrapper for
google_apigee_dns_zone. - GoogleApigeeEndpointAttachment
-
Factory wrapper for
google_apigee_endpoint_attachment. - GoogleApigeeEnvgroup
-
Factory wrapper for
google_apigee_envgroup. - GoogleApigeeEnvgroupAttachment
-
Factory wrapper for
google_apigee_envgroup_attachment. - GoogleApigeeEnvironment
-
Factory wrapper for
google_apigee_environment. - GoogleApigeeEnvironmentAddonsConfig
-
Factory wrapper for
google_apigee_environment_addons_config. - GoogleApigeeEnvironmentApiRevisionDeployment
-
Factory wrapper for
google_apigee_environment_api_revision_deployment. - GoogleApigeeEnvironmentDebugmask
-
Factory wrapper for
google_apigee_environment_debugmask. - GoogleApigeeEnvironmentIamBinding
-
Factory wrapper for
google_apigee_environment_iam_binding. - GoogleApigeeEnvironmentIamMember
-
Factory wrapper for
google_apigee_environment_iam_member. - GoogleApigeeEnvironmentIamPolicy
-
Factory wrapper for
google_apigee_environment_iam_policy. - GoogleApigeeEnvironmentKeyvaluemaps
-
Factory wrapper for
google_apigee_environment_keyvaluemaps. - GoogleApigeeEnvironmentKeyvaluemapsEntries
-
Factory wrapper for
google_apigee_environment_keyvaluemaps_entries. - GoogleApigeeEnvKeystore
-
Factory wrapper for
google_apigee_env_keystore. - GoogleApigeeEnvReferences
-
Factory wrapper for
google_apigee_env_references. - GoogleApigeeFlowhook
-
Factory wrapper for
google_apigee_flowhook. - GoogleApigeeInstance
-
Factory wrapper for
google_apigee_instance. - GoogleApigeeInstanceAttachment
-
Factory wrapper for
google_apigee_instance_attachment. - GoogleApigeeKeystoresAliasesKeyCertFile
-
Factory wrapper for
google_apigee_keystores_aliases_key_cert_file. - GoogleApigeeKeystoresAliasesPkcs12
-
Factory wrapper for
google_apigee_keystores_aliases_pkcs12. - GoogleApigeeKeystoresAliasesSelfSignedCert
-
Factory wrapper for
google_apigee_keystores_aliases_self_signed_cert. - GoogleApigeeNatAddress
-
Factory wrapper for
google_apigee_nat_address. - GoogleApigeeOrganization
-
Factory wrapper for
google_apigee_organization. - GoogleApigeeSecurityAction
-
Factory wrapper for
google_apigee_security_action. - GoogleApigeeSecurityFeedback
-
Factory wrapper for
google_apigee_security_feedback. - GoogleApigeeSecurityMonitoringCondition
-
Factory wrapper for
google_apigee_security_monitoring_condition. - GoogleApigeeSecurityProfileV2
-
Factory wrapper for
google_apigee_security_profile_v2. -
Factory wrapper for
google_apigee_sharedflow. -
Factory wrapper for
google_apigee_sharedflow_deployment. - GoogleApigeeSpace
-
Factory wrapper for
google_apigee_space. - GoogleApigeeSyncAuthorization
-
Factory wrapper for
google_apigee_sync_authorization. - GoogleApigeeTargetServer
-
Factory wrapper for
google_apigee_target_server. - IgnoreAllChanges
- IgnoreChanges.all.
- IgnoreAttributes
- IgnoreChanges.of.
- IgnoreChanges
-
What
ignore_changescovers: every attribute, or the listed ones. - InvalidDartDefineOutput
-
An output of
Stack.addDartDefineOutputthat cannot carry what it names: an output that is not registered, is sensitive or has no environment value, two outputs read from one variable, or no output at all. - InvalidLifecycle
-
A
lifecycleblock Terraform rejects: a data source (or one of its attributes) inreplaceTriggeredBy,allinside IgnoreChanges.of, or a condition with an empty error message. - InvalidMoveTarget
-
A
movedblock whosetonames no resource of the Stack. - InvalidTimeout
-
A negative
timeoutsduration. - LifecycleCondition
-
A
preconditionorpostconditionblock: Terraform fails the plan (LifecycleCondition.pre) or the apply (LifecycleCondition.post) with errorMessage when condition is false. - LifecycleOptions
-
lifecycle { ... }block on a resource. - LocalBackend
-
terraform { backend "local" { ... } }configuration. - MissingProvider
-
A block needs a provider configuration the Stack does not register:
the provider its type implies (
googleforgoogle_pubsub_topic), the one itsprovidermeta-argument names, or one a module call passes on. - ModuleCall
-
A
module "<localName>" { ... }call as a Dart value. - NoProviders
- The Stack registers no provider, but declares resources or data sources.
- ProviderConflict
- Two provider registrations Terraform rejects together: two defaults of one name, a repeated alias, an alias that is not an identifier, or configurations of one name with different source / version constraints.
-
RefConstant<
T> - The AppConstant.ref choice.
- ReplaceTrigger
-
What
lifecycle.replaceTriggeredBylists: a resource of the Stack or an attribute getter of one.Resourceand TfRef implement it; synth reports a data source or a data-source attribute as anInvalidLifecycle. - Resource
- Base of every user-instantiable Terraform resource.
- ResourceRef
-
Public for sealed pattern matching, but constructor is private — only
TfRef.resource()may construct instances. - S3Backend
-
terraform { backend "s3" { ... } }configuration. -
Sensitive<
T> -
What an argument Terraform marks sensitive takes: a variable, an
expression or an attribute getter — a value Terraform resolves, never a
Dart literal that would be written into
main.tf.json. - SensitiveLiteral
-
A sensitive field is set to a literal, which would write the secret in
plain text into
main.tf.json. - Stack
- User-extended IaC composition root.
- StackBackend
-
Lightweight backend hook. Core ships
GcsBackend,S3Backend, andLocalBackend; anything else implements this interface in the caller. TheStackonly stores the value and exposes a discriminator for synth'sterraform { backend ... }emitter. - StackProvider
-
Coordination interface between
Stack(in this package) and concrete providers (e.g.GoogleProviderinterradart_google). Concrete providers implement every getter using their baked-in constants from Stage 2 codegen. - SynthIssue
- One reason a Stack cannot be synthesized.
- SynthResult
-
Bundle returned by
StackSynth.synth. - TfAddressed
-
Anything that exposes a Terraform address, e.g.
google_pubsub_topic.orders. -
TfArg<
T> - A Terraform argument: a Dart-side literal, a reference to another block's attribute (TfRef), a variable or a raw expression.
-
TfArgExpression<
T> - A raw Terraform expression — the tf.json template string, verbatim.
-
TfArgLiteral<
T> -
TfArgVariable<
T> - TfCollectionType
-
list(...),set(...)ormap(...). - TfMoved
-
One
moved { from = ... to = ... }block: the state object at from now belongs to the resource at to, so a rename does not become a destroy-and-create. - TfObjectType
-
object({ ... }). - TfOptionalType
-
optional(<type>[, <default>]). -
TfOutput<
T> -
An
output "<name>" { value = ... }block, registered withStack.addOutput. - TfPrimitiveType
-
string,number,boolorany. -
TfRef<
T> - A Terraform-side reference: an attribute of a resource (AttributeRef) or a data source (DataRef), or a whole resource (ResourceRef).
- TfTimeouts
-
timeouts { ... }on a resource or data source: how long Terraform waits for each operation before giving up. - TfTupleType
-
tuple([...]). - TfType
-
A Terraform type constraint:
string,list(number),object({ name = string }). - TfVariable
-
One
variable "<name>" { ... }declaration. - UndeclaredVariable
-
A
TfArg.variableorvar.<name>in an expression names a variable the Stack does not declare. - UnregisteredReference
-
A block references another block that was never registered on the
Stack: built, but not passed to
add(...)/addModule(...). - UnresolvableConstant
-
An
AppConstant.refwhose value is not known at synth: the attribute is not set to a literal, is sensitive, does not match the constant's type, or belongs to a block that is not registered. -
ValueConstant<
T> - The AppConstant.value choice.
Enums
- ResourceKind
-
Whether a Stack entry is a
resourceblock or adatablock in Terraform JSON.
Extension Types
- ApigeeApiProductApprovalType
-
Apigee Api Product Approval enum for
approval_type. - ApigeeApiProductOperationConfigType
-
operation_config_type— derived from the provider schema description. - ApigeeApiProductQuotaCounterScope
-
Apigee Api Product Quota Counter enum for
quota_counter_scope. - ApigeeAppGroupStatus
-
Apigee App Group enum for
status. - ApigeeDataCollectorDeletionPolicy
-
Terraform
deletion_policyfor Apigee data collectors. - ApigeeDataCollectorType
-
Data type collected by
google_apigee_data_collector. - ApigeeDatastoreDeletionPolicy
-
Terraform
deletion_policyfor Apigee datastores. - ApigeeDatastoreTargetType
-
Target backend for
google_apigee_datastore. - ApigeeEnvironmentApiProxyType
-
Apigee Environment Api Proxy enum for
api_proxy_type. - ApigeeEnvironmentDeploymentType
-
Apigee Environment Deployment enum for
deployment_type. - ApigeeEnvironmentType
-
Apigee Environment enum for
type. - ApigeeKeystoresAliasesSelfSignedCertType
-
Apigee Keystores Aliases Self Signed Cert enum for
type. - ApigeeOrganizationRetention
-
Soft-delete data retention for
google_apigee_organization.retention(query param on delete; not in MMproperties, so not deriveEnums-backed). - ApigeeOrganizationRuntimeType
-
Apigee Organization Runtime enum for
runtime_type. - ApigeeSecurityActionState
-
Apigee Security Action enum for
state. - ApigeeSecurityFeedbackAttribute
-
attribute— derived from the provider schema description. - ApigeeSecurityFeedbackReason
-
Apigee Security Feedback enum for
reason. - ApigeeSecurityFeedbackType
-
Apigee Security Feedback enum for
feedback_type. - ApigeeSecurityProfileV2Weight
-
weight— derived from the provider schema description. - ApigeeTargetServerProtocol
-
Apigee Target Server enum for
protocol. - OutputEnvironment
-
The environment
Stack.outputEnvironmentreturns: each variable and its value, in registration order. - RefTo
-
A reference to a resource of type
R, for an argument that names another resource (network,vpc_id,role_arn, ...).
Extensions
-
RefToList
on TfArg<
List< RefTo< >R> > -
A list-valued reference argument (
security_group_ids,subnet_ids): a literal list of RefTos, or one value that is the whole list (TfArg.variable('subnet_ids'),TfArg.expression(...)). - TerraformDurationExt on Duration
- Converts a Dart Duration into a Terraform duration string ("604800s").
Constants
- terradartManifestVariable → const String
-
The environment variable the
terradartcommand sets to the file runStack and runEnvironments describe what they wrote in.
Functions
-
runEnvironments<
E extends Enum> (List< String> args, List<E> environments, Stack build(E env), {String dir(E env)?, String? workspace(E env)?, List<String> backendConfig(E env)?, E? defaultEnv}) → Future<void> -
The entry point of a project with one Stack per environment. The
environments are the members of an enum of the project's own — any
names, each carrying its values — so the Stack takes a typed
envand derives everything per environment from it, its backend included: -
runStack(
List< String> args, Stack build(), {String out = 'tf-out'}) → Future<void> -
The entry point of a project with one Stack: writes it to
out.
Exceptions / Errors
- DuplicateModuleError
-
A
ModuleCallregistered twice under one name. - DuplicateResourceError
-
Thrown by
Stack.addwhen an entry with the same(kind, terraformType, localName)triple is registered twice. - SynthException
-
Thrown by
Stack.synth()andStack.writeTo()when the Stack has one or more SynthIssues. Nothing is written.