From 53021065fb4ff0ac95ca8b4ca186d0b54c813f30 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 1 Mar 2024 13:04:59 +0000 Subject: [PATCH] sync: generate client with 2024-03-01 spec --- equinix_metal/.openapi-generator/FILES | 290 ------------------ equinix_metal/docs/AWSFabricProvider.md | 1 + ...reateOrganizationInterconnectionRequest.md | 4 +- .../docs/DedicatedPortCreateInput.md | 2 +- equinix_metal/docs/Interconnection.md | 2 +- equinix_metal/docs/InterconnectionsApi.md | 8 +- equinix_metal/docs/ProjectsApi.md | 2 +- .../SelfServiceReservationItemResponse.md | 1 + .../docs/SharedPortVCVlanCreateInput.md | 4 +- .../docs/VirtualCircuitCreateInput.md | 2 +- .../docs/VlanCSPConnectionCreateInput.md | 4 +- ...nCSPConnectionCreateInputFabricProvider.md | 1 + equinix_metal/docs/VlanFabricVcCreateInput.md | 2 +- .../docs/VlanVirtualCircuitCreateInput.md | 2 +- equinix_metal/docs/VrfFabricVcCreateInput.md | 2 +- .../docs/VrfVirtualCircuitCreateInput.md | 2 +- .../equinix_metal/api/interconnections_api.py | 16 +- .../equinix_metal/api/projects_api.py | 4 +- .../models/aws_fabric_provider.py | 4 +- .../models/dedicated_port_create_input.py | 4 +- .../equinix_metal/models/interconnection.py | 6 +- .../self_service_reservation_item_response.py | 8 +- .../shared_port_vc_vlan_create_input.py | 4 +- .../vlan_csp_connection_create_input.py | 4 +- .../models/vlan_fabric_vc_create_input.py | 2 +- .../vlan_virtual_circuit_create_input.py | 4 +- .../models/vrf_fabric_vc_create_input.py | 4 +- .../vrf_virtual_circuit_create_input.py | 2 +- 28 files changed, 56 insertions(+), 335 deletions(-) diff --git a/equinix_metal/.openapi-generator/FILES b/equinix_metal/.openapi-generator/FILES index 46784fce..d88bbd0e 100644 --- a/equinix_metal/.openapi-generator/FILES +++ b/equinix_metal/.openapi-generator/FILES @@ -1,7 +1,6 @@ .github/workflows/python.yml .gitignore .gitlab-ci.yml -.openapi-generator-ignore .travis.yml README.md docs/AWSFabricProvider.md @@ -598,293 +597,4 @@ setup.cfg setup.py test-requirements.txt test/__init__.py -test/test_activate_hardware_reservation_request.py -test/test_address.py -test/test_attribute.py -test/test_attribute_data.py -test/test_auth_token.py -test/test_auth_token_input.py -test/test_auth_token_list.py -test/test_auth_token_project.py -test/test_auth_token_user.py -test/test_authentication_api.py -test/test_aws_fabric_provider.py -test/test_batch.py -test/test_batches_api.py -test/test_batches_list.py -test/test_bgp_api.py -test/test_bgp_config.py -test/test_bgp_config_request_input.py -test/test_bgp_dynamic_neighbor.py -test/test_bgp_dynamic_neighbor_create_input.py -test/test_bgp_dynamic_neighbor_list.py -test/test_bgp_neighbor_data.py -test/test_bgp_route.py -test/test_bgp_session.py -test/test_bgp_session_input.py -test/test_bgp_session_list.py -test/test_bgp_session_neighbors.py -test/test_bond_port_data.py -test/test_capacity_api.py -test/test_capacity_check_per_facility_info.py -test/test_capacity_check_per_facility_list.py -test/test_capacity_check_per_metro_info.py -test/test_capacity_check_per_metro_list.py -test/test_capacity_input.py -test/test_capacity_level_per_baremetal.py -test/test_capacity_list.py -test/test_component.py -test/test_console_log_details_api.py -test/test_coordinates.py -test/test_create_device_request.py -test/test_create_email_input.py -test/test_create_metal_gateway_request.py -test/test_create_organization_interconnection_request.py -test/test_create_self_service_reservation_request.py -test/test_create_self_service_reservation_request_period.py -test/test_dedicated_port_create_input.py -test/test_device.py -test/test_device_action_input.py -test/test_device_actions_inner.py -test/test_device_create_in_facility_input.py -test/test_device_create_in_metro_input.py -test/test_device_create_input.py -test/test_device_created_by.py -test/test_device_health_rollup.py -test/test_device_list.py -test/test_device_metro.py -test/test_device_project_lite.py -test/test_device_update_input.py -test/test_device_usage.py -test/test_device_usage_list.py -test/test_devices_api.py -test/test_disk.py -test/test_email.py -test/test_email_input.py -test/test_emails_api.py -test/test_entitlement.py -test/test_error.py -test/test_event.py -test/test_event_list.py -test/test_events_api.py -test/test_fabric_service_token.py -test/test_facilities_api.py -test/test_facility.py -test/test_facility_input.py -test/test_facility_input_facility.py -test/test_facility_list.py -test/test_filesystem.py -test/test_find_ip_address_by_id200_response.py -test/test_find_metal_gateway_by_id200_response.py -test/test_find_traffic_timeframe_parameter.py -test/test_firmware_set.py -test/test_firmware_set_list_response.py -test/test_firmware_set_response.py -test/test_firmware_sets_api.py -test/test_global_bgp_range.py -test/test_global_bgp_range_list.py -test/test_hardware_reservation.py -test/test_hardware_reservation_list.py -test/test_hardware_reservations_api.py -test/test_href.py -test/test_incidents_api.py -test/test_instances_batch_create_input.py -test/test_instances_batch_create_input_batches_inner.py -test/test_interconnection.py -test/test_interconnection_list.py -test/test_interconnection_metro_list.py -test/test_interconnection_metro_list_metros_inner.py -test/test_interconnection_metro_list_metros_inner_all_of_providers_inner.py -test/test_interconnection_port.py -test/test_interconnection_port_list.py -test/test_interconnection_pricing_list.py -test/test_interconnection_pricing_list_provider_pricing_inner.py -test/test_interconnection_pricing_list_provider_pricing_inner_tiers_inner.py -test/test_interconnection_update_input.py -test/test_interconnections_api.py -test/test_invitation.py -test/test_invitation_input.py -test/test_invitation_list.py -test/test_invitations_api.py -test/test_invoice.py -test/test_invoice_list.py -test/test_invoices_api.py -test/test_ip_address.py -test/test_ip_addresses_api.py -test/test_ip_assignment.py -test/test_ip_assignment_input.py -test/test_ip_assignment_list.py -test/test_ip_assignment_metro.py -test/test_ip_assignment_update_input.py -test/test_ip_availabilities_list.py -test/test_ip_reservation.py -test/test_ip_reservation_facility.py -test/test_ip_reservation_list.py -test/test_ip_reservation_list_ip_addresses_inner.py -test/test_ip_reservation_metro.py -test/test_ip_reservation_request_input.py -test/test_license.py -test/test_license_create_input.py -test/test_license_list.py -test/test_license_update_input.py -test/test_licenses_api.py -test/test_line_item.py -test/test_membership.py -test/test_membership_input.py -test/test_membership_list.py -test/test_memberships_api.py -test/test_meta.py -test/test_metadata.py -test/test_metadata_network.py -test/test_metadata_network_network.py -test/test_metadata_network_network_bonding.py -test/test_metal_gateway.py -test/test_metal_gateway_create_input.py -test/test_metal_gateway_elastic_ip_create_input.py -test/test_metal_gateway_list.py -test/test_metal_gateway_list_metal_gateways_inner.py -test/test_metal_gateway_lite.py -test/test_metal_gateways_api.py -test/test_metro.py -test/test_metro_input.py -test/test_metro_list.py -test/test_metros_api.py -test/test_mount.py -test/test_move_hardware_reservation_request.py -test/test_new_password.py -test/test_operating_system.py -test/test_operating_system_list.py -test/test_operating_systems_api.py -test/test_organization.py -test/test_organization_input.py -test/test_organization_list.py -test/test_organizations_api.py -test/test_otps_api.py -test/test_parent_block.py -test/test_partition.py -test/test_password_reset_tokens_api.py -test/test_payment_method.py -test/test_payment_method_billing_address.py -test/test_payment_method_create_input.py -test/test_payment_method_list.py -test/test_payment_method_update_input.py -test/test_payment_methods_api.py -test/test_plan.py -test/test_plan_available_in_inner.py -test/test_plan_available_in_inner_price.py -test/test_plan_available_in_metros_inner.py -test/test_plan_list.py -test/test_plan_specs.py -test/test_plan_specs_cpus_inner.py -test/test_plan_specs_drives_inner.py -test/test_plan_specs_features.py -test/test_plan_specs_memory.py -test/test_plan_specs_nics_inner.py -test/test_plans_api.py -test/test_port.py -test/test_port_assign_input.py -test/test_port_convert_layer3_input.py -test/test_port_convert_layer3_input_request_ips_inner.py -test/test_port_data.py -test/test_port_vlan_assignment.py -test/test_port_vlan_assignment_batch.py -test/test_port_vlan_assignment_batch_create_input.py -test/test_port_vlan_assignment_batch_create_input_vlan_assignments_inner.py -test/test_port_vlan_assignment_batch_list.py -test/test_port_vlan_assignment_batch_vlan_assignments_inner.py -test/test_port_vlan_assignment_list.py -test/test_ports_api.py -test/test_project.py -test/test_project_create_from_root_input.py -test/test_project_create_input.py -test/test_project_id_name.py -test/test_project_list.py -test/test_project_update_input.py -test/test_project_usage.py -test/test_project_usage_list.py -test/test_projects_api.py -test/test_raid.py -test/test_recovery_code_list.py -test/test_request_ip_reservation201_response.py -test/test_request_ip_reservation_request.py -test/test_self_service_reservation_item_request.py -test/test_self_service_reservation_item_response.py -test/test_self_service_reservation_list.py -test/test_self_service_reservation_response.py -test/test_self_service_reservations_api.py -test/test_server_info.py -test/test_shared_port_vc_vlan_create_input.py -test/test_spot_market_api.py -test/test_spot_market_prices_list.py -test/test_spot_market_prices_per_metro_list.py -test/test_spot_market_prices_per_metro_report.py -test/test_spot_market_request.py -test/test_spot_market_request_create_input.py -test/test_spot_market_request_create_input_instance_parameters.py -test/test_spot_market_request_list.py -test/test_spot_market_request_metro.py -test/test_spot_prices_datapoints.py -test/test_spot_prices_history_report.py -test/test_spot_prices_per_baremetal.py -test/test_spot_prices_per_facility.py -test/test_spot_prices_per_new_facility.py -test/test_spot_prices_report.py -test/test_ssh_key.py -test/test_ssh_key_create_input.py -test/test_ssh_key_input.py -test/test_ssh_key_list.py -test/test_ssh_keys_api.py -test/test_storage.py -test/test_support_request_api.py -test/test_support_request_input.py -test/test_transfer_request.py -test/test_transfer_request_input.py -test/test_transfer_request_list.py -test/test_transfer_requests_api.py -test/test_two_factor_auth_api.py -test/test_update_email_input.py -test/test_usages_api.py -test/test_user.py -test/test_user_create_input.py -test/test_user_limited.py -test/test_user_list.py -test/test_user_lite.py -test/test_user_update_input.py -test/test_user_verification_tokens_api.py -test/test_userdata.py -test/test_userdata_api.py -test/test_users_api.py -test/test_verify_email.py -test/test_virtual_circuit.py -test/test_virtual_circuit_create_input.py -test/test_virtual_circuit_list.py -test/test_virtual_circuit_update_input.py -test/test_virtual_network.py -test/test_virtual_network_create_input.py -test/test_virtual_network_list.py -test/test_vlan_csp_connection_create_input.py -test/test_vlan_csp_connection_create_input_fabric_provider.py -test/test_vlan_fabric_vc_create_input.py -test/test_vlan_virtual_circuit.py -test/test_vlan_virtual_circuit_create_input.py -test/test_vlan_virtual_circuit_update_input.py -test/test_vlans_api.py -test/test_vrf.py -test/test_vrf_create_input.py -test/test_vrf_fabric_vc_create_input.py -test/test_vrf_ip_reservation.py -test/test_vrf_ip_reservation_create_input.py -test/test_vrf_ip_reservation_list.py -test/test_vrf_list.py -test/test_vrf_metal_gateway.py -test/test_vrf_metal_gateway_create_input.py -test/test_vrf_route.py -test/test_vrf_route_create_input.py -test/test_vrf_route_list.py -test/test_vrf_route_update_input.py -test/test_vrf_update_input.py -test/test_vrf_virtual_circuit.py -test/test_vrf_virtual_circuit_create_input.py -test/test_vrf_virtual_circuit_update_input.py -test/test_vrfs_api.py tox.ini diff --git a/equinix_metal/docs/AWSFabricProvider.md b/equinix_metal/docs/AWSFabricProvider.md index 253ec677..514a3304 100644 --- a/equinix_metal/docs/AWSFabricProvider.md +++ b/equinix_metal/docs/AWSFabricProvider.md @@ -6,6 +6,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **account_id** | **str** | AWS Account ID | **href** | **str** | | [optional] +**location** | **str** | | [optional] **type** | **str** | | ## Example diff --git a/equinix_metal/docs/CreateOrganizationInterconnectionRequest.md b/equinix_metal/docs/CreateOrganizationInterconnectionRequest.md index f383d5dc..b43572fd 100644 --- a/equinix_metal/docs/CreateOrganizationInterconnectionRequest.md +++ b/equinix_metal/docs/CreateOrganizationInterconnectionRequest.md @@ -11,9 +11,9 @@ Name | Type | Description | Notes **metro** | **str** | A Metro ID or code. When creating Fabric VCs (Metal Billed), this is where interconnection will be originating from, as we pre-authorize the use of one of our shared ports as the origin of the interconnection using A-Side service tokens. We only allow local connections for Fabric VCs (Metal Billed), so the destination location must be the same as the origin. For Fabric VCs (Fabric Billed), or shared connections, this will be the destination of the interconnection. We allow remote connections for Fabric VCs (Fabric Billed), so the origin of the interconnection can be a different metro set here. | **mode** | **str** | The mode of the interconnection (only relevant to Dedicated Ports). Fabric VCs won't have this field. Can be either 'standard' or 'tunnel'. The default mode of an interconnection on a Dedicated Port is 'standard'. The mode can only be changed when there are no associated virtual circuits on the interconnection. In tunnel mode, an 802.1q tunnel is added to a port to send/receive double tagged packets from server instances. | [optional] **name** | **str** | | -**project** | **str** | | [optional] +**project** | **str** | | **redundancy** | **str** | Either 'primary' or 'redundant'. | -**speed** | **int** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] +**speed** | **str** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] **tags** | **List[str]** | | [optional] **type** | **str** | When requesting for a dedicated port, the value of this field should be 'dedicated'. | **use_case** | **str** | The intended use case of the dedicated port. | [optional] diff --git a/equinix_metal/docs/DedicatedPortCreateInput.md b/equinix_metal/docs/DedicatedPortCreateInput.md index 3662053c..92ddf5ce 100644 --- a/equinix_metal/docs/DedicatedPortCreateInput.md +++ b/equinix_metal/docs/DedicatedPortCreateInput.md @@ -13,7 +13,7 @@ Name | Type | Description | Notes **name** | **str** | | **project** | **str** | | [optional] **redundancy** | **str** | Either 'primary' or 'redundant'. | -**speed** | **int** | A interconnection speed, in bps, mbps, or gbps. For Dedicated Ports, this can be 10Gbps or 100Gbps. | [optional] +**speed** | **str** | A interconnection speed, in bps, mbps, or gbps. For Dedicated Ports, this can be 10Gbps or 100Gbps. | [optional] **tags** | **List[str]** | | [optional] **type** | **str** | When requesting for a dedicated port, the value of this field should be 'dedicated'. | **use_case** | **str** | The intended use case of the dedicated port. | [optional] diff --git a/equinix_metal/docs/Interconnection.md b/equinix_metal/docs/Interconnection.md index b49316dc..a3e1ed06 100644 --- a/equinix_metal/docs/Interconnection.md +++ b/equinix_metal/docs/Interconnection.md @@ -23,7 +23,7 @@ Name | Type | Description | Notes **status** | **str** | | [optional] **tags** | **List[str]** | | [optional] **token** | **str** | This token is used for shared interconnections to be used as the Fabric Token. This field is entirely deprecated. | [optional] -**type** | **str** | The 'shared' type of interconnection refers to shared connections, or later also known as Fabric Virtual Connections (or Fabric VCs). The 'dedicated' type of interconnection refers to interconnections created with Dedicated Ports. | [optional] +**type** | **str** | The 'shared' type of interconnection refers to shared connections, or later also known as Fabric Virtual Connections (or Fabric VCs). The 'dedicated' type of interconnection refers to interconnections created with Dedicated Ports. The 'shared_port_vlan' type of interconnection refers to shared connections created without service tokens. The 'shared_port_vlan_to_csp' type of interconnection refers to connections created directly to a supported cloud service provider. | [optional] **updated_at** | **datetime** | | [optional] ## Example diff --git a/equinix_metal/docs/InterconnectionsApi.md b/equinix_metal/docs/InterconnectionsApi.md index ebb8bd73..de5f1366 100644 --- a/equinix_metal/docs/InterconnectionsApi.md +++ b/equinix_metal/docs/InterconnectionsApi.md @@ -150,7 +150,7 @@ with equinix_metal.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = equinix_metal.InterconnectionsApi(api_client) organization_id = 'organization_id_example' # str | UUID of the organization - create_organization_interconnection_request = equinix_metal.CreateOrganizationInterconnectionRequest() # CreateOrganizationInterconnectionRequest | Dedicated port or shared interconnection (also known as Fabric VC) creation request + create_organization_interconnection_request = equinix_metal.CreateOrganizationInterconnectionRequest() # CreateOrganizationInterconnectionRequest | Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. include = ['include_example'] # List[str] | Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects. (optional) exclude = ['exclude_example'] # List[str] | Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects. (optional) @@ -170,7 +170,7 @@ with equinix_metal.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **organization_id** | **str**| UUID of the organization | - **create_organization_interconnection_request** | [**CreateOrganizationInterconnectionRequest**](CreateOrganizationInterconnectionRequest.md)| Dedicated port or shared interconnection (also known as Fabric VC) creation request | + **create_organization_interconnection_request** | [**CreateOrganizationInterconnectionRequest**](CreateOrganizationInterconnectionRequest.md)| Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. | **include** | [**List[str]**](str.md)| Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects. | [optional] **exclude** | [**List[str]**](str.md)| Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects. | [optional] @@ -238,7 +238,7 @@ with equinix_metal.ApiClient(configuration) as api_client: # Create an instance of the API class api_instance = equinix_metal.InterconnectionsApi(api_client) project_id = 'project_id_example' # str | UUID of the project - create_organization_interconnection_request = equinix_metal.CreateOrganizationInterconnectionRequest() # CreateOrganizationInterconnectionRequest | Dedicated port or shared interconnection (also known as Fabric VC) creation request + create_organization_interconnection_request = equinix_metal.CreateOrganizationInterconnectionRequest() # CreateOrganizationInterconnectionRequest | Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. include = ['include_example'] # List[str] | Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects. (optional) exclude = ['exclude_example'] # List[str] | Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects. (optional) @@ -258,7 +258,7 @@ with equinix_metal.ApiClient(configuration) as api_client: Name | Type | Description | Notes ------------- | ------------- | ------------- | ------------- **project_id** | **str**| UUID of the project | - **create_organization_interconnection_request** | [**CreateOrganizationInterconnectionRequest**](CreateOrganizationInterconnectionRequest.md)| Dedicated port or shared interconnection (also known as Fabric VC) creation request | + **create_organization_interconnection_request** | [**CreateOrganizationInterconnectionRequest**](CreateOrganizationInterconnectionRequest.md)| Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. | **include** | [**List[str]**](str.md)| Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects. | [optional] **exclude** | [**List[str]**](str.md)| Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects. | [optional] diff --git a/equinix_metal/docs/ProjectsApi.md b/equinix_metal/docs/ProjectsApi.md index f88079a5..bdf77b3b 100644 --- a/equinix_metal/docs/ProjectsApi.md +++ b/equinix_metal/docs/ProjectsApi.md @@ -23,7 +23,7 @@ Method | HTTP request | Description Create a project -Creates a new project for the user default organization. If the user don't have an organization, a new one will be created. +Creates a new project for the user's default organization. If the user does not have a default organization, the API will look for a personal organization belonging to the user with the name \"{User's Full Name} Projects\" to associate the project with. If that organization does not exist a new organization named \"{User's Full Name} Projects\" will be created and the new project will be tied to that organization. ### Example diff --git a/equinix_metal/docs/SelfServiceReservationItemResponse.md b/equinix_metal/docs/SelfServiceReservationItemResponse.md index 01379f60..20730a64 100644 --- a/equinix_metal/docs/SelfServiceReservationItemResponse.md +++ b/equinix_metal/docs/SelfServiceReservationItemResponse.md @@ -10,6 +10,7 @@ Name | Type | Description | Notes **metro_code** | **str** | | [optional] **metro_id** | **str** | | [optional] **metro_name** | **str** | | [optional] +**plan** | [**Plan**](Plan.md) | | [optional] **plan_categories** | **List[str]** | | [optional] **plan_id** | **str** | | [optional] **plan_name** | **str** | | [optional] diff --git a/equinix_metal/docs/SharedPortVCVlanCreateInput.md b/equinix_metal/docs/SharedPortVCVlanCreateInput.md index f2d926ff..c4f0f9b7 100644 --- a/equinix_metal/docs/SharedPortVCVlanCreateInput.md +++ b/equinix_metal/docs/SharedPortVCVlanCreateInput.md @@ -9,8 +9,8 @@ Name | Type | Description | Notes **href** | **str** | | [optional] **metro** | **str** | A Metro ID or code. When creating Fabric VCs (Metal Billed), this is where interconnection will be originating from, as we pre-authorize the use of one of our shared ports as the origin of the interconnection using A-Side service tokens. We only allow local connections for Fabric VCs (Metal Billed), so the destination location must be the same as the origin. For Fabric VCs (Fabric Billed), or shared connections, this will be the destination of the interconnection. We allow remote connections for Fabric VCs (Fabric Billed), so the origin of the interconnection can be a different metro set here. | **name** | **str** | | -**project** | **str** | | [optional] -**speed** | **int** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] +**project** | **str** | | +**speed** | **str** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] **tags** | **List[str]** | | [optional] **type** | **str** | | **vlans** | **List[int]** | A list of one or two metro-based VLANs that will be set on the virtual circuits of primary and/or secondary interconnections respectively when creating Fabric VCs. VLANs can also be set after the interconnection is created, but are required to fully activate the virtual circuits. | diff --git a/equinix_metal/docs/VirtualCircuitCreateInput.md b/equinix_metal/docs/VirtualCircuitCreateInput.md index ece0a174..2d391898 100644 --- a/equinix_metal/docs/VirtualCircuitCreateInput.md +++ b/equinix_metal/docs/VirtualCircuitCreateInput.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **name** | **str** | | [optional] **nni_vlan** | **int** | | **project_id** | **str** | | -**speed** | **int** | speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps') | [optional] +**speed** | **str** | speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps') | [optional] **tags** | **List[str]** | | [optional] **vnid** | **str** | A Virtual Network record UUID or the VNID of a Metro Virtual Network in your project (sent as integer). | [optional] **customer_ip** | **str** | An IP address from the subnet that will be used on the Customer side. This parameter is optional, but if supplied, we will use the other usable IP address in the subnet as the Metal IP. By default, the last usable IP address in the subnet will be used. | [optional] diff --git a/equinix_metal/docs/VlanCSPConnectionCreateInput.md b/equinix_metal/docs/VlanCSPConnectionCreateInput.md index 7717966e..929c2caa 100644 --- a/equinix_metal/docs/VlanCSPConnectionCreateInput.md +++ b/equinix_metal/docs/VlanCSPConnectionCreateInput.md @@ -10,8 +10,8 @@ Name | Type | Description | Notes **href** | **str** | | [optional] **metro** | **str** | A Metro ID or code. When creating Fabric VCs (Metal Billed), this is where interconnection will be originating from, as we pre-authorize the use of one of our shared ports as the origin of the interconnection using A-Side service tokens. We only allow local connections for Fabric VCs (Metal Billed), so the destination location must be the same as the origin. For Fabric VCs (Fabric Billed), or shared connections, this will be the destination of the interconnection. We allow remote connections for Fabric VCs (Fabric Billed), so the origin of the interconnection can be a different metro set here. | **name** | **str** | | -**project** | **str** | | [optional] -**speed** | **int** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] +**project** | **str** | | +**speed** | **str** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] **tags** | **List[str]** | | [optional] **type** | **str** | | **vlans** | **List[int]** | A list of one or two metro-based VLANs that will be set on the virtual circuits of primary and/or secondary interconnections respectively when creating Fabric VCs. VLANs can also be set after the interconnection is created, but are required to fully activate the virtual circuits. | diff --git a/equinix_metal/docs/VlanCSPConnectionCreateInputFabricProvider.md b/equinix_metal/docs/VlanCSPConnectionCreateInputFabricProvider.md index 735b2818..50a8da60 100644 --- a/equinix_metal/docs/VlanCSPConnectionCreateInputFabricProvider.md +++ b/equinix_metal/docs/VlanCSPConnectionCreateInputFabricProvider.md @@ -7,6 +7,7 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- **account_id** | **str** | AWS Account ID | **href** | **str** | | [optional] +**location** | **str** | | [optional] **type** | **str** | | ## Example diff --git a/equinix_metal/docs/VlanFabricVcCreateInput.md b/equinix_metal/docs/VlanFabricVcCreateInput.md index 7aef9326..2e2289a1 100644 --- a/equinix_metal/docs/VlanFabricVcCreateInput.md +++ b/equinix_metal/docs/VlanFabricVcCreateInput.md @@ -12,7 +12,7 @@ Name | Type | Description | Notes **project** | **str** | | [optional] **redundancy** | **str** | Either 'primary' or 'redundant'. | **service_token_type** | **str** | Either 'a_side' or 'z_side'. Setting this field to 'a_side' will create an interconnection with Fabric VCs (Metal Billed). Setting this field to 'z_side' will create an interconnection with Fabric VCs (Fabric Billed). This is required when the 'type' is 'shared', but this is not applicable when the 'type' is 'dedicated'. This parameter is included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details. | -**speed** | **int** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] +**speed** | **str** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] **tags** | **List[str]** | | [optional] **type** | **str** | When requesting for a Fabric VC, the value of this field should be 'shared'. | **vlans** | **List[int]** | A list of one or two metro-based VLANs that will be set on the virtual circuits of primary and/or secondary (if redundant) interconnections respectively when creating Fabric VCs. VLANs can also be set after the interconnection is created, but are required to fully activate the virtual circuits. | [optional] diff --git a/equinix_metal/docs/VlanVirtualCircuitCreateInput.md b/equinix_metal/docs/VlanVirtualCircuitCreateInput.md index 83099a1b..55a444a0 100644 --- a/equinix_metal/docs/VlanVirtualCircuitCreateInput.md +++ b/equinix_metal/docs/VlanVirtualCircuitCreateInput.md @@ -9,7 +9,7 @@ Name | Type | Description | Notes **name** | **str** | | [optional] **nni_vlan** | **int** | | [optional] **project_id** | **str** | | -**speed** | **int** | speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps') | [optional] +**speed** | **str** | speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps') | [optional] **tags** | **List[str]** | | [optional] **vnid** | **str** | A Virtual Network record UUID or the VNID of a Metro Virtual Network in your project (sent as integer). | [optional] diff --git a/equinix_metal/docs/VrfFabricVcCreateInput.md b/equinix_metal/docs/VrfFabricVcCreateInput.md index fde07286..472771ff 100644 --- a/equinix_metal/docs/VrfFabricVcCreateInput.md +++ b/equinix_metal/docs/VrfFabricVcCreateInput.md @@ -12,7 +12,7 @@ Name | Type | Description | Notes **project** | **str** | | [optional] **redundancy** | **str** | Either 'primary' or 'redundant'. | **service_token_type** | **str** | Either 'a_side' or 'z_side'. Setting this field to 'a_side' will create an interconnection with Fabric VCs (Metal Billed). Setting this field to 'z_side' will create an interconnection with Fabric VCs (Fabric Billed). This is required when the 'type' is 'shared', but this is not applicable when the 'type' is 'dedicated'. This parameter is included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details. | -**speed** | **int** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] +**speed** | **str** | A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs. | [optional] **tags** | **List[str]** | | [optional] **type** | **str** | When requesting for a Fabric VC, the value of this field should be 'shared'. | **vrfs** | **List[str]** | This field holds a list of VRF UUIDs that will be set automatically on the virtual circuits of Fabric VCs on creation, and can hold up to two UUIDs. Two UUIDs are required when requesting redundant Fabric VCs. The first UUID will be set on the primary virtual circuit, while the second UUID will be set on the secondary. The two UUIDs can be the same if both the primary and secondary virtual circuits will be in the same VRF. This parameter is included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details. | diff --git a/equinix_metal/docs/VrfVirtualCircuitCreateInput.md b/equinix_metal/docs/VrfVirtualCircuitCreateInput.md index 86a0eff3..0fe14c4e 100644 --- a/equinix_metal/docs/VrfVirtualCircuitCreateInput.md +++ b/equinix_metal/docs/VrfVirtualCircuitCreateInput.md @@ -13,7 +13,7 @@ Name | Type | Description | Notes **nni_vlan** | **int** | | **peer_asn** | **int** | The peer ASN that will be used with the VRF on the Virtual Circuit. | **project_id** | **str** | | -**speed** | **int** | speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps') | [optional] +**speed** | **str** | speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps') | [optional] **subnet** | **str** | The /30 or /31 subnet of one of the VRF IP Blocks that will be used with the VRF for the Virtual Circuit. This subnet does not have to be an existing VRF IP reservation, as we will create the VRF IP reservation on creation if it does not exist. The Metal IP and Customer IP must be IPs from this subnet. For /30 subnets, the network and broadcast IPs cannot be used as the Metal or Customer IP. The subnet specified must be contained within an already-defined IP Range for the VRF. | **tags** | **List[str]** | | [optional] **vrf** | **str** | The UUID of the VRF that will be associated with the Virtual Circuit. | diff --git a/equinix_metal/equinix_metal/api/interconnections_api.py b/equinix_metal/equinix_metal/api/interconnections_api.py index 043d3c7a..8f430229 100644 --- a/equinix_metal/equinix_metal/api/interconnections_api.py +++ b/equinix_metal/equinix_metal/api/interconnections_api.py @@ -222,7 +222,7 @@ def create_interconnection_port_virtual_circuit_with_http_info(self, connection_ _request_auth=_params.get('_request_auth')) @validate_arguments - def create_organization_interconnection(self, organization_id : Annotated[StrictStr, Field(..., description="UUID of the organization")], create_organization_interconnection_request : Annotated[CreateOrganizationInterconnectionRequest, Field(..., description="Dedicated port or shared interconnection (also known as Fabric VC) creation request")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> Interconnection: # noqa: E501 + def create_organization_interconnection(self, organization_id : Annotated[StrictStr, Field(..., description="UUID of the organization")], create_organization_interconnection_request : Annotated[CreateOrganizationInterconnectionRequest, Field(..., description="Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. ")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> Interconnection: # noqa: E501 """Request a new interconnection for the organization # noqa: E501 Creates a new interconnection request. A Project ID must be specified in the request body for connections on shared ports. # noqa: E501 @@ -234,7 +234,7 @@ def create_organization_interconnection(self, organization_id : Annotated[Strict :param organization_id: UUID of the organization (required) :type organization_id: str - :param create_organization_interconnection_request: Dedicated port or shared interconnection (also known as Fabric VC) creation request (required) + :param create_organization_interconnection_request: Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. (required) :type create_organization_interconnection_request: CreateOrganizationInterconnectionRequest :param include: Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects. :type include: List[str] @@ -257,7 +257,7 @@ def create_organization_interconnection(self, organization_id : Annotated[Strict return self.create_organization_interconnection_with_http_info(organization_id, create_organization_interconnection_request, include, exclude, **kwargs) # noqa: E501 @validate_arguments - def create_organization_interconnection_with_http_info(self, organization_id : Annotated[StrictStr, Field(..., description="UUID of the organization")], create_organization_interconnection_request : Annotated[CreateOrganizationInterconnectionRequest, Field(..., description="Dedicated port or shared interconnection (also known as Fabric VC) creation request")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> ApiResponse: # noqa: E501 + def create_organization_interconnection_with_http_info(self, organization_id : Annotated[StrictStr, Field(..., description="UUID of the organization")], create_organization_interconnection_request : Annotated[CreateOrganizationInterconnectionRequest, Field(..., description="Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. ")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> ApiResponse: # noqa: E501 """Request a new interconnection for the organization # noqa: E501 Creates a new interconnection request. A Project ID must be specified in the request body for connections on shared ports. # noqa: E501 @@ -269,7 +269,7 @@ def create_organization_interconnection_with_http_info(self, organization_id : A :param organization_id: UUID of the organization (required) :type organization_id: str - :param create_organization_interconnection_request: Dedicated port or shared interconnection (also known as Fabric VC) creation request (required) + :param create_organization_interconnection_request: Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. (required) :type create_organization_interconnection_request: CreateOrganizationInterconnectionRequest :param include: Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects. :type include: List[str] @@ -397,7 +397,7 @@ def create_organization_interconnection_with_http_info(self, organization_id : A _request_auth=_params.get('_request_auth')) @validate_arguments - def create_project_interconnection(self, project_id : Annotated[StrictStr, Field(..., description="UUID of the project")], create_organization_interconnection_request : Annotated[CreateOrganizationInterconnectionRequest, Field(..., description="Dedicated port or shared interconnection (also known as Fabric VC) creation request")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> Interconnection: # noqa: E501 + def create_project_interconnection(self, project_id : Annotated[StrictStr, Field(..., description="UUID of the project")], create_organization_interconnection_request : Annotated[CreateOrganizationInterconnectionRequest, Field(..., description="Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. ")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> Interconnection: # noqa: E501 """Request a new interconnection for the project's organization # noqa: E501 Creates a new interconnection request # noqa: E501 @@ -409,7 +409,7 @@ def create_project_interconnection(self, project_id : Annotated[StrictStr, Field :param project_id: UUID of the project (required) :type project_id: str - :param create_organization_interconnection_request: Dedicated port or shared interconnection (also known as Fabric VC) creation request (required) + :param create_organization_interconnection_request: Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. (required) :type create_organization_interconnection_request: CreateOrganizationInterconnectionRequest :param include: Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects. :type include: List[str] @@ -432,7 +432,7 @@ def create_project_interconnection(self, project_id : Annotated[StrictStr, Field return self.create_project_interconnection_with_http_info(project_id, create_organization_interconnection_request, include, exclude, **kwargs) # noqa: E501 @validate_arguments - def create_project_interconnection_with_http_info(self, project_id : Annotated[StrictStr, Field(..., description="UUID of the project")], create_organization_interconnection_request : Annotated[CreateOrganizationInterconnectionRequest, Field(..., description="Dedicated port or shared interconnection (also known as Fabric VC) creation request")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> ApiResponse: # noqa: E501 + def create_project_interconnection_with_http_info(self, project_id : Annotated[StrictStr, Field(..., description="UUID of the project")], create_organization_interconnection_request : Annotated[CreateOrganizationInterconnectionRequest, Field(..., description="Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. ")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> ApiResponse: # noqa: E501 """Request a new interconnection for the project's organization # noqa: E501 Creates a new interconnection request # noqa: E501 @@ -444,7 +444,7 @@ def create_project_interconnection_with_http_info(self, project_id : Annotated[S :param project_id: UUID of the project (required) :type project_id: str - :param create_organization_interconnection_request: Dedicated port or shared interconnection (also known as Fabric VC) creation request (required) + :param create_organization_interconnection_request: Dedicated port or shared interconnection (also known as Fabric VC) creation request. Shared interconnections can be created with the following request types: * `VlanCSPConnectionCreateInput` creates a layer 2 interconnection directly to your Cloud Service Provider. * `SharedPortVCVlanCreateInput` creates a layer 2 interconnection that you can finish configuration in Fabric. For new connections, this type is preferred to `VlanFabricVCCreateInput`. * `VlanFabricVCCreateInput` creates a layer 2 interconnection that you can connect through Fabric with a service token. * `VrfFabricVCCreateInput` creates a layer 3 interconnection that you can connect through Fabric with a service token. (required) :type create_organization_interconnection_request: CreateOrganizationInterconnectionRequest :param include: Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects. :type include: List[str] diff --git a/equinix_metal/equinix_metal/api/projects_api.py b/equinix_metal/equinix_metal/api/projects_api.py index e1ca7e3a..8170c9f6 100644 --- a/equinix_metal/equinix_metal/api/projects_api.py +++ b/equinix_metal/equinix_metal/api/projects_api.py @@ -59,7 +59,7 @@ def __init__(self, api_client=None): def create_project(self, project_create_from_root_input : Annotated[ProjectCreateFromRootInput, Field(..., description="Project to create")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> Project: # noqa: E501 """Create a project # noqa: E501 - Creates a new project for the user default organization. If the user don't have an organization, a new one will be created. # noqa: E501 + Creates a new project for the user's default organization. If the user does not have a default organization, the API will look for a personal organization belonging to the user with the name \"{User's Full Name} Projects\" to associate the project with. If that organization does not exist a new organization named \"{User's Full Name} Projects\" will be created and the new project will be tied to that organization. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True @@ -92,7 +92,7 @@ def create_project(self, project_create_from_root_input : Annotated[ProjectCreat def create_project_with_http_info(self, project_create_from_root_input : Annotated[ProjectCreateFromRootInput, Field(..., description="Project to create")], include : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to include. Included objects will return their full attributes. Attribute names can be dotted (up to 3 levels) to included deeply nested objects.")] = None, exclude : Annotated[Optional[conlist(StrictStr)], Field(description="Nested attributes to exclude. Excluded objects will return only the href attribute. Attribute names can be dotted (up to 3 levels) to exclude deeply nested objects.")] = None, **kwargs) -> ApiResponse: # noqa: E501 """Create a project # noqa: E501 - Creates a new project for the user default organization. If the user don't have an organization, a new one will be created. # noqa: E501 + Creates a new project for the user's default organization. If the user does not have a default organization, the API will look for a personal organization belonging to the user with the name \"{User's Full Name} Projects\" to associate the project with. If that organization does not exist a new organization named \"{User's Full Name} Projects\" will be created and the new project will be tied to that organization. # noqa: E501 This method makes a synchronous HTTP request by default. To make an asynchronous HTTP request, please pass async_req=True diff --git a/equinix_metal/equinix_metal/models/aws_fabric_provider.py b/equinix_metal/equinix_metal/models/aws_fabric_provider.py index 0c6fe243..b91a706d 100644 --- a/equinix_metal/equinix_metal/models/aws_fabric_provider.py +++ b/equinix_metal/equinix_metal/models/aws_fabric_provider.py @@ -28,8 +28,9 @@ class AWSFabricProvider(BaseModel): """ account_id: StrictStr = Field(..., description="AWS Account ID") href: Optional[StrictStr] = None + location: Optional[StrictStr] = None type: StrictStr = Field(...) - __properties = ["account_id", "href", "type"] + __properties = ["account_id", "href", "location", "type"] @validator('type') def type_validate_enum(cls, value): @@ -76,6 +77,7 @@ def from_dict(cls, obj: dict) -> AWSFabricProvider: _obj = AWSFabricProvider.parse_obj({ "account_id": obj.get("account_id"), "href": obj.get("href"), + "location": obj.get("location"), "type": obj.get("type") }) return _obj diff --git a/equinix_metal/equinix_metal/models/dedicated_port_create_input.py b/equinix_metal/equinix_metal/models/dedicated_port_create_input.py index 00a1b497..86cb76cb 100644 --- a/equinix_metal/equinix_metal/models/dedicated_port_create_input.py +++ b/equinix_metal/equinix_metal/models/dedicated_port_create_input.py @@ -20,7 +20,7 @@ from typing import List, Optional -from pydantic import BaseModel, Field, StrictInt, StrictStr, conlist, validator +from pydantic import BaseModel, Field, StrictStr, conlist, validator class DedicatedPortCreateInput(BaseModel): """ @@ -35,7 +35,7 @@ class DedicatedPortCreateInput(BaseModel): name: StrictStr = Field(...) project: Optional[StrictStr] = None redundancy: StrictStr = Field(..., description="Either 'primary' or 'redundant'.") - speed: Optional[StrictInt] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Dedicated Ports, this can be 10Gbps or 100Gbps.") + speed: Optional[StrictStr] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Dedicated Ports, this can be 10Gbps or 100Gbps.") tags: Optional[conlist(StrictStr)] = None type: StrictStr = Field(..., description="When requesting for a dedicated port, the value of this field should be 'dedicated'.") use_case: Optional[StrictStr] = Field(None, description="The intended use case of the dedicated port.") diff --git a/equinix_metal/equinix_metal/models/interconnection.py b/equinix_metal/equinix_metal/models/interconnection.py index 6d5ad79f..df8e2278 100644 --- a/equinix_metal/equinix_metal/models/interconnection.py +++ b/equinix_metal/equinix_metal/models/interconnection.py @@ -49,7 +49,7 @@ class Interconnection(BaseModel): status: Optional[StrictStr] = None tags: Optional[conlist(StrictStr)] = None token: Optional[StrictStr] = Field(None, description="This token is used for shared interconnections to be used as the Fabric Token. This field is entirely deprecated.") - type: Optional[StrictStr] = Field(None, description="The 'shared' type of interconnection refers to shared connections, or later also known as Fabric Virtual Connections (or Fabric VCs). The 'dedicated' type of interconnection refers to interconnections created with Dedicated Ports.") + type: Optional[StrictStr] = Field(None, description="The 'shared' type of interconnection refers to shared connections, or later also known as Fabric Virtual Connections (or Fabric VCs). The 'dedicated' type of interconnection refers to interconnections created with Dedicated Ports. The 'shared_port_vlan' type of interconnection refers to shared connections created without service tokens. The 'shared_port_vlan_to_csp' type of interconnection refers to connections created directly to a supported cloud service provider.") updated_at: Optional[datetime] = None __properties = ["authorization_code", "contact_email", "created_at", "description", "facility", "href", "id", "metro", "mode", "name", "organization", "ports", "redundancy", "requested_by", "service_tokens", "speed", "status", "tags", "token", "type", "updated_at"] @@ -79,8 +79,8 @@ def type_validate_enum(cls, value): if value is None: return value - if value not in ('shared', 'dedicated'): - raise ValueError("must be one of enum values ('shared', 'dedicated')") + if value not in ('shared', 'dedicated', 'shared_port_vlan', 'shared_port_vlan_to_csp'): + raise ValueError("must be one of enum values ('shared', 'dedicated', 'shared_port_vlan', 'shared_port_vlan_to_csp')") return value class Config: diff --git a/equinix_metal/equinix_metal/models/self_service_reservation_item_response.py b/equinix_metal/equinix_metal/models/self_service_reservation_item_response.py index 005befa3..ffa49a62 100644 --- a/equinix_metal/equinix_metal/models/self_service_reservation_item_response.py +++ b/equinix_metal/equinix_metal/models/self_service_reservation_item_response.py @@ -21,6 +21,7 @@ from typing import List, Optional, Union from pydantic import BaseModel, StrictFloat, StrictInt, StrictStr, conlist +from equinix_metal.models.plan import Plan class SelfServiceReservationItemResponse(BaseModel): """ @@ -32,13 +33,14 @@ class SelfServiceReservationItemResponse(BaseModel): metro_code: Optional[StrictStr] = None metro_id: Optional[StrictStr] = None metro_name: Optional[StrictStr] = None + plan: Optional[Plan] = None plan_categories: Optional[conlist(StrictStr)] = None plan_id: Optional[StrictStr] = None plan_name: Optional[StrictStr] = None plan_slug: Optional[StrictStr] = None quantity: Optional[StrictInt] = None term: Optional[StrictStr] = None - __properties = ["amount", "href", "id", "metro_code", "metro_id", "metro_name", "plan_categories", "plan_id", "plan_name", "plan_slug", "quantity", "term"] + __properties = ["amount", "href", "id", "metro_code", "metro_id", "metro_name", "plan", "plan_categories", "plan_id", "plan_name", "plan_slug", "quantity", "term"] class Config: """Pydantic configuration""" @@ -64,6 +66,9 @@ def to_dict(self): exclude={ }, exclude_none=True) + # override the default output from pydantic by calling `to_dict()` of plan + if self.plan: + _dict['plan'] = self.plan.to_dict() return _dict @classmethod @@ -82,6 +87,7 @@ def from_dict(cls, obj: dict) -> SelfServiceReservationItemResponse: "metro_code": obj.get("metro_code"), "metro_id": obj.get("metro_id"), "metro_name": obj.get("metro_name"), + "plan": Plan.from_dict(obj.get("plan")) if obj.get("plan") is not None else None, "plan_categories": obj.get("plan_categories"), "plan_id": obj.get("plan_id"), "plan_name": obj.get("plan_name"), diff --git a/equinix_metal/equinix_metal/models/shared_port_vc_vlan_create_input.py b/equinix_metal/equinix_metal/models/shared_port_vc_vlan_create_input.py index 2fcc1d91..1a544d7b 100644 --- a/equinix_metal/equinix_metal/models/shared_port_vc_vlan_create_input.py +++ b/equinix_metal/equinix_metal/models/shared_port_vc_vlan_create_input.py @@ -31,8 +31,8 @@ class SharedPortVCVlanCreateInput(BaseModel): href: Optional[StrictStr] = None metro: StrictStr = Field(..., description="A Metro ID or code. When creating Fabric VCs (Metal Billed), this is where interconnection will be originating from, as we pre-authorize the use of one of our shared ports as the origin of the interconnection using A-Side service tokens. We only allow local connections for Fabric VCs (Metal Billed), so the destination location must be the same as the origin. For Fabric VCs (Fabric Billed), or shared connections, this will be the destination of the interconnection. We allow remote connections for Fabric VCs (Fabric Billed), so the origin of the interconnection can be a different metro set here.") name: StrictStr = Field(...) - project: Optional[StrictStr] = None - speed: Optional[StrictInt] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs.") + project: StrictStr = Field(...) + speed: Optional[StrictStr] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs.") tags: Optional[conlist(StrictStr)] = None type: StrictStr = Field(...) vlans: conlist(StrictInt) = Field(..., description="A list of one or two metro-based VLANs that will be set on the virtual circuits of primary and/or secondary interconnections respectively when creating Fabric VCs. VLANs can also be set after the interconnection is created, but are required to fully activate the virtual circuits.") diff --git a/equinix_metal/equinix_metal/models/vlan_csp_connection_create_input.py b/equinix_metal/equinix_metal/models/vlan_csp_connection_create_input.py index 4194cd0c..ce11f2af 100644 --- a/equinix_metal/equinix_metal/models/vlan_csp_connection_create_input.py +++ b/equinix_metal/equinix_metal/models/vlan_csp_connection_create_input.py @@ -33,8 +33,8 @@ class VlanCSPConnectionCreateInput(BaseModel): href: Optional[StrictStr] = None metro: StrictStr = Field(..., description="A Metro ID or code. When creating Fabric VCs (Metal Billed), this is where interconnection will be originating from, as we pre-authorize the use of one of our shared ports as the origin of the interconnection using A-Side service tokens. We only allow local connections for Fabric VCs (Metal Billed), so the destination location must be the same as the origin. For Fabric VCs (Fabric Billed), or shared connections, this will be the destination of the interconnection. We allow remote connections for Fabric VCs (Fabric Billed), so the origin of the interconnection can be a different metro set here.") name: StrictStr = Field(...) - project: Optional[StrictStr] = None - speed: Optional[StrictInt] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs.") + project: StrictStr = Field(...) + speed: Optional[StrictStr] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs.") tags: Optional[conlist(StrictStr)] = None type: StrictStr = Field(...) vlans: conlist(StrictInt) = Field(..., description="A list of one or two metro-based VLANs that will be set on the virtual circuits of primary and/or secondary interconnections respectively when creating Fabric VCs. VLANs can also be set after the interconnection is created, but are required to fully activate the virtual circuits.") diff --git a/equinix_metal/equinix_metal/models/vlan_fabric_vc_create_input.py b/equinix_metal/equinix_metal/models/vlan_fabric_vc_create_input.py index 8f894938..8cc621ed 100644 --- a/equinix_metal/equinix_metal/models/vlan_fabric_vc_create_input.py +++ b/equinix_metal/equinix_metal/models/vlan_fabric_vc_create_input.py @@ -34,7 +34,7 @@ class VlanFabricVcCreateInput(BaseModel): project: Optional[StrictStr] = None redundancy: StrictStr = Field(..., description="Either 'primary' or 'redundant'.") service_token_type: StrictStr = Field(..., description="Either 'a_side' or 'z_side'. Setting this field to 'a_side' will create an interconnection with Fabric VCs (Metal Billed). Setting this field to 'z_side' will create an interconnection with Fabric VCs (Fabric Billed). This is required when the 'type' is 'shared', but this is not applicable when the 'type' is 'dedicated'. This parameter is included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details.") - speed: Optional[StrictInt] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs.") + speed: Optional[StrictStr] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs.") tags: Optional[conlist(StrictStr)] = None type: StrictStr = Field(..., description="When requesting for a Fabric VC, the value of this field should be 'shared'.") vlans: Optional[conlist(StrictInt)] = Field(None, description="A list of one or two metro-based VLANs that will be set on the virtual circuits of primary and/or secondary (if redundant) interconnections respectively when creating Fabric VCs. VLANs can also be set after the interconnection is created, but are required to fully activate the virtual circuits.") diff --git a/equinix_metal/equinix_metal/models/vlan_virtual_circuit_create_input.py b/equinix_metal/equinix_metal/models/vlan_virtual_circuit_create_input.py index 9f15c3e8..1c44becc 100644 --- a/equinix_metal/equinix_metal/models/vlan_virtual_circuit_create_input.py +++ b/equinix_metal/equinix_metal/models/vlan_virtual_circuit_create_input.py @@ -20,7 +20,7 @@ from typing import List, Optional -from pydantic import BaseModel, Field, StrictInt, StrictStr, conint, conlist +from pydantic import BaseModel, Field, StrictStr, conint, conlist class VlanVirtualCircuitCreateInput(BaseModel): """ @@ -31,7 +31,7 @@ class VlanVirtualCircuitCreateInput(BaseModel): name: Optional[StrictStr] = None nni_vlan: Optional[conint(strict=True, le=4094, ge=2)] = None project_id: StrictStr = Field(...) - speed: Optional[StrictInt] = Field(None, description="speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps')") + speed: Optional[StrictStr] = Field(None, description="speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps')") tags: Optional[conlist(StrictStr)] = None vnid: Optional[StrictStr] = Field(None, description="A Virtual Network record UUID or the VNID of a Metro Virtual Network in your project (sent as integer).") __properties = ["description", "href", "name", "nni_vlan", "project_id", "speed", "tags", "vnid"] diff --git a/equinix_metal/equinix_metal/models/vrf_fabric_vc_create_input.py b/equinix_metal/equinix_metal/models/vrf_fabric_vc_create_input.py index 727e023c..1b20f590 100644 --- a/equinix_metal/equinix_metal/models/vrf_fabric_vc_create_input.py +++ b/equinix_metal/equinix_metal/models/vrf_fabric_vc_create_input.py @@ -20,7 +20,7 @@ from typing import List, Optional -from pydantic import BaseModel, Field, StrictInt, StrictStr, conlist, validator +from pydantic import BaseModel, Field, StrictStr, conlist, validator class VrfFabricVcCreateInput(BaseModel): """ @@ -34,7 +34,7 @@ class VrfFabricVcCreateInput(BaseModel): project: Optional[StrictStr] = None redundancy: StrictStr = Field(..., description="Either 'primary' or 'redundant'.") service_token_type: StrictStr = Field(..., description="Either 'a_side' or 'z_side'. Setting this field to 'a_side' will create an interconnection with Fabric VCs (Metal Billed). Setting this field to 'z_side' will create an interconnection with Fabric VCs (Fabric Billed). This is required when the 'type' is 'shared', but this is not applicable when the 'type' is 'dedicated'. This parameter is included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details.") - speed: Optional[StrictInt] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs.") + speed: Optional[StrictStr] = Field(None, description="A interconnection speed, in bps, mbps, or gbps. For Fabric VCs, this represents the maximum speed of the interconnection. For Fabric VCs (Metal Billed), this can only be one of the following: ''50mbps'', ''200mbps'', ''500mbps'', ''1gbps'', ''2gbps'', ''5gbps'' or ''10gbps'', and is required for creation. For Fabric VCs (Fabric Billed), this field will always default to ''10gbps'' even if it is not provided. For example, ''500000000'', ''50m'', or' ''500mbps'' will all work as valid inputs.") tags: Optional[conlist(StrictStr)] = None type: StrictStr = Field(..., description="When requesting for a Fabric VC, the value of this field should be 'shared'.") vrfs: conlist(StrictStr) = Field(..., description="This field holds a list of VRF UUIDs that will be set automatically on the virtual circuits of Fabric VCs on creation, and can hold up to two UUIDs. Two UUIDs are required when requesting redundant Fabric VCs. The first UUID will be set on the primary virtual circuit, while the second UUID will be set on the secondary. The two UUIDs can be the same if both the primary and secondary virtual circuits will be in the same VRF. This parameter is included in the specification as a developer preview and is generally unavailable. Please contact our Support team for more details.") diff --git a/equinix_metal/equinix_metal/models/vrf_virtual_circuit_create_input.py b/equinix_metal/equinix_metal/models/vrf_virtual_circuit_create_input.py index fdb09620..845d3cf3 100644 --- a/equinix_metal/equinix_metal/models/vrf_virtual_circuit_create_input.py +++ b/equinix_metal/equinix_metal/models/vrf_virtual_circuit_create_input.py @@ -35,7 +35,7 @@ class VrfVirtualCircuitCreateInput(BaseModel): nni_vlan: conint(strict=True, le=4094, ge=2) = Field(...) peer_asn: StrictInt = Field(..., description="The peer ASN that will be used with the VRF on the Virtual Circuit.") project_id: StrictStr = Field(...) - speed: Optional[StrictInt] = Field(None, description="speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps')") + speed: Optional[StrictStr] = Field(None, description="speed can be passed as integer number representing bps speed or string (e.g. '52m' or '100g' or '4 gbps')") subnet: StrictStr = Field(..., description="The /30 or /31 subnet of one of the VRF IP Blocks that will be used with the VRF for the Virtual Circuit. This subnet does not have to be an existing VRF IP reservation, as we will create the VRF IP reservation on creation if it does not exist. The Metal IP and Customer IP must be IPs from this subnet. For /30 subnets, the network and broadcast IPs cannot be used as the Metal or Customer IP. The subnet specified must be contained within an already-defined IP Range for the VRF.") tags: Optional[conlist(StrictStr)] = None vrf: StrictStr = Field(..., description="The UUID of the VRF that will be associated with the Virtual Circuit.")