equinix_fabric_service_profile (Resource)
Fabric V4 API compatible resource allows creation and management of Equinix Fabric Service Profile
Additional documentation:
- Getting Started: https://docs.equinix.com/fabric/service-providers/fabric-spo-intro/
- API: https://docs.equinix.com/api-catalog/fabricv4/#tag/Service-Profiles
Example Usage
resource "equinix_fabric_service_profile" "new_service_profile" {
description = "Service Profile for Receiving Connections"
name = "Name Of Business + Use Case Tag"
type = "L2_PROFILE"
visibility = "PUBLIC"
notifications = [
{
emails = ["someone@sample.com"]
type = "BANDWIDTH_ALERT"
}
]
allowed_emails = ["test@equinix.com", "testagain@equinix.com"]
ports = [
{
uuid = "c791f8cb-5cc9-cc90-8ce0-306a5c00a4ee"
type = "XF_PORT"
}
]
access_point_type_configs {
type = "COLO"
allow_remote_connections = true
allow_custom_bandwidth = true
allow_bandwidth_auto_approval = false
connection_redundancy_required = false
connection_label = "Service Profile Tag1"
bandwidth_alert_threshold = 10
supported_bandwidths = [ 100, 500 ]
}
}
Schema
Required
description(String) User-provided service descriptionname(String) Customer-assigned service profile nametype(String) Service profile type - L2_PROFILE, L3_PROFILE, ECIA_PROFILE, ECMC_PROFILE, IA_PROFILE, IX_PROFILE
Optional
access_point_type_configs(Block List) Access point config information (see below for nested schema)allowed_emails(List of String) Array of contact emailscustom_fields(Block List) Custom Fields (see below for nested schema)marketing_info(Block Set, Max: 1) Marketing Info (see below for nested schema)metros(Block List) Access point config information (see below for nested schema)notifications(Block List) Preferences for notifications on connection configuration or status changes (see below for nested schema)ports(Block List) Ports (see below for nested schema)project(Block Set, Max: 1) Project information (see below for nested schema)self_profile(Boolean) Self Profile indicating if the profile is created for customer's self usestate(String) Service profile state - ACTIVE, PENDING_APPROVAL, DELETED, REJECTEDtags(List of String) Tags attached to the connectiontimeouts(Block, Optional) (see below for nested schema)view_point(String) Flips view between buyer and seller representation. Available values : aSide, zSide. Default value : aSidevirtual_devices(Block List) Virtual Devices (see below for nested schema)visibility(String) Service profile visibility - PUBLIC, PRIVATE
Read-Only
account(Set of Object) Service Profile Owner Account Information (see below for nested schema)change_log(Set of Object) Captures connection lifecycle change information (see below for nested schema)href(String) Service Profile URI response attributeid(String) The ID of this resource.uuid(String) Equinix assigned service profile identifier
Nested Schema for access_point_type_configs
Required:
type(String) Type of access point type config - VD, COLO
Optional:
allow_bandwidth_auto_approval(Boolean) Setting to enable or disable the ability of the buyer to change connection bandwidth without approval of the sellerallow_bandwidth_upgrade(Boolean) Availability of a bandwidth upgrade. The default is falseallow_custom_bandwidth(Boolean) Setting to enable or disable the ability of the buyer to customize the bandwidthallow_remote_connections(Boolean) Setting to allow or prohibit remote connections to the service profileapi_config(Block Set, Max: 1) Api configuration details (see below for nested schema)authentication_key(Block Set, Max: 1) Authentication key details (see below for nested schema)bandwidth_alert_threshold(Number) Percentage of port bandwidth at which an allocation alert is generatedconnection_label(String) Custom name for Connectionconnection_redundancy_required(Boolean) Mandate redundant connectionsenable_auto_generate_service_key(Boolean) Enable auto generate service keylink_protocol_config(Block Set, Max: 1) Link protocol configuration details (see below for nested schema)selective_redundancy(Boolean) Optional redundant connectionssupported_bandwidths(List of Number) Supported bandwidths
Read-Only:
uuid(String) Colo/Port Uuid
Nested Schema for access_point_type_configs.api_config
Optional:
allow_over_subscription(Boolean) Setting showing that oversubscription support is available (true) or not (false). The default is falseapi_available(Boolean) Indicates if it's possible to establish connections based on the given service profile using the Equinix Fabric API.bandwidth_from_api(Boolean) Indicates if the connection bandwidth can be obtained directly from the cloud service provider.equinix_managed_port(Boolean) Setting indicating that the port is managed by Equinix (true) or not (false)equinix_managed_vlan(Boolean) Setting indicating that the VLAN is managed by Equinix (true) or not (false)integration_id(String) A unique identifier issued during onboarding and used to integrate the customer's service profile with the Equinix Fabric API.over_subscription_limit(Number) Port bandwidth multiplier that determines the total bandwidth that can be allocated to users creating connections to your services. For example, a 10 Gbps port combined with an overSubscriptionLimit parameter value of 10 allows your subscribers to create connections with a total bandwidth of 100 Gbps.
Nested Schema for access_point_type_configs.authentication_key
Optional:
description(String) Description of authorization keylabel(String) Name of the parameter that must be provided to authorize the connection.required(Boolean) Requirement to configure an authentication key.
Nested Schema for access_point_type_configs.link_protocol_config
Optional:
encapsulation(String) Data frames encapsulation standard.UNTAGGED - Untagged encapsulation for EPL connections. DOT1Q - DOT1Q encapsulation standard. QINQ - QINQ encapsulation standard.encapsulation_strategy(String) Additional tagging information required by the seller profile.reuse_vlan_s_tag(Boolean) Automatically accept subsequent DOT1Q to QINQ connections that use the same authentication key. These connections will have the same VLAN S-tag assigned as the initial connection.
Nested Schema for custom_fields
Required:
data_type(String) Data typelabel(String) Labelrequired(Boolean) Required field
Optional:
capture_in_email(Boolean) Required fielddescription(String) Descriptionoptions(List of String) Options
Nested Schema for marketing_info
Optional:
logo(String) Logoprocess_step(Block List) Process Step (see below for nested schema)promotion(Boolean) Promotion
Nested Schema for marketing_info.process_step
Optional:
description(String) Descriptionsub_title(String) Sub Titletitle(String) Title
Nested Schema for metros
Optional:
code(String) Metro Code - Example SVdisplay_name(String) Display Nameibxs(List of String) IBX- Equinix International Business Exchange listin_trail(Boolean) In Trailname(String) Metro Nameseller_regions(Map of String) Seller Regions
Nested Schema for notifications
Required:
emails(List of String) Array of contact emailstype(String) Notification Type - ALL,CONNECTION_APPROVAL,SALES_REP_NOTIFICATIONS, NOTIFICATIONS
Optional:
send_interval(String) Send interval
Nested Schema for ports
Required:
type(String) Colo/Port Typeuuid(String) Colo/Port Uuid
Optional:
cross_connect_id(String) Cross Connect Idlocation(Block Set, Max: 1) Colo/Port Location (see below for nested schema)seller_region(String) Seller Regionseller_region_description(String) Seller Region details
Nested Schema for ports.location
Optional:
ibx(String) IBX Codemetro_code(String) Access point metro codemetro_name(String) Access point metro nameregion(String) Access point region
Nested Schema for project
Optional:
project_id(String) Project Id
Read-Only:
href(String) Unique Resource URL
Nested Schema for timeouts
Optional:
create(String)delete(String)read(String)update(String)
Nested Schema for virtual_devices
Required:
type(String) Virtual Device Typeuuid(String) Virtual Device Uuid
Optional:
interface_uuid(String) Device Interface Uuidlocation(Block Set, Max: 1) Device Location (see below for nested schema)
Nested Schema for virtual_devices.location
Optional:
ibx(String) IBX Codemetro_code(String) Access point metro codemetro_name(String) Access point metro nameregion(String) Access point region
Nested Schema for account
Read-Only:
account_name(String)account_number(Number)global_cust_id(String)global_org_id(String)global_organization_name(String)org_id(Number)organization_name(String)ucm_id(String)
Nested Schema for change_log
Read-Only:
created_by(String)created_by_email(String)created_by_full_name(String)created_date_time(String)deleted_by(String)deleted_by_email(String)deleted_by_full_name(String)deleted_date_time(String)updated_by(String)updated_by_email(String)updated_by_full_name(String)updated_date_time(String)