# PrivateCrossConnectsApi

All URIs are relative to *<https://api.ionos.com/cloudapi/v6>*

| Method                                     | HTTP request             | Description                             |
| ------------------------------------------ | ------------------------ | --------------------------------------- |
| [**pccs\_delete**](#pccs_delete)           | **DELETE** /pccs/{pccId} | Delete private Cross-Connects           |
| [**pccs\_find\_by\_id**](#pccs_find_by_id) | **GET** /pccs/{pccId}    | Retrieve private Cross-Connects         |
| [**pccs\_get**](#pccs_get)                 | **GET** /pccs            | List private Cross-Connects             |
| [**pccs\_patch**](#pccs_patch)             | **PATCH** /pccs/{pccId}  | Partially modify private Cross-Connects |
| [**pccs\_post**](#pccs_post)               | **POST** /pccs           | Create a Private Cross-Connect          |

## pccs\_delete

> pccs\_delete(pcc\_id, opts)

Delete private Cross-Connects

Remove the specified private Cross-Connect (only if not connected to any data centers).

### Examples

```ruby
require 'time'
require 'ionoscloud'
# setup authorization
Ionoscloud.configure do |config|
  # Configure HTTP basic authorization: Basic Authentication
  config.username = 'YOUR USERNAME'
  config.password = 'YOUR PASSWORD'

  # Configure API key authorization: Token Authentication
  config.api_key['Authorization'] = 'YOUR API KEY'
  # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
  # config.api_key_prefix['Authorization'] = 'Bearer'
end

api_instance = Ionoscloud::PrivateCrossConnectsApi.new
pcc_id = 'pcc_id_example' # String | The unique ID of the private Cross-Connect.
opts = {
  pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
  depth: 56, # Integer | Controls the detail depth of the response objects.  GET /datacenters/[ID]  - depth=0: Only direct properties are included; children (servers and other elements) are not included.  - depth=1: Direct properties and children references are included.  - depth=2: Direct properties and children properties are included.  - depth=3: Direct properties and children properties and children's children are included.  - depth=... and so on
  x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
}

begin
  # Delete private Cross-Connects
  api_instance.pccs_delete(pcc_id, opts)
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_delete: #{e}"
end
```

#### Using the pccs\_delete\_with\_http\_info variant

This returns an Array which contains the response data (`nil` in this case), status code and headers.

> \<Array(nil, Integer, Hash)> pccs\_delete\_with\_http\_info(pcc\_id, opts)

```ruby
begin
  # Delete private Cross-Connects
  data, status_code, headers = api_instance.pccs_delete_with_http_info(pcc_id, opts)
  p status_code # => 2xx
  p headers # => { ... }
  p data # => nil
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_delete_with_http_info: #{e}"
end
```

### Parameters

| Name                    | Type        | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                         |
| ----------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- |
| **pcc\_id**             | **String**  | The unique ID of the private Cross-Connect.                                                                                                                                                                                                                                                                                                                                                                                              |                               |
| **pretty**              | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional]\[default to true] |
| **depth**               | **Integer** | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional]\[default to 0]    |
| **x\_contract\_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                   |

### Return type

nil (empty response body)

### Authorization

Basic Authentication, Token Authentication

### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## pccs\_find\_by\_id

> pccs\_find\_by\_id(pcc\_id, opts)

Retrieve private Cross-Connects

Retrieve a private Cross-Connect by the resource ID. Cross-Connect ID is in the response body when the private Cross-Connect is created, and in the list of private Cross-Connects, returned by GET.

### Examples

```ruby
require 'time'
require 'ionoscloud'
# setup authorization
Ionoscloud.configure do |config|
  # Configure HTTP basic authorization: Basic Authentication
  config.username = 'YOUR USERNAME'
  config.password = 'YOUR PASSWORD'

  # Configure API key authorization: Token Authentication
  config.api_key['Authorization'] = 'YOUR API KEY'
  # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
  # config.api_key_prefix['Authorization'] = 'Bearer'
end

api_instance = Ionoscloud::PrivateCrossConnectsApi.new
pcc_id = 'pcc_id_example' # String | The unique ID of the private Cross-Connect.
opts = {
  pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
  depth: 56, # Integer | Controls the detail depth of the response objects.  GET /datacenters/[ID]  - depth=0: Only direct properties are included; children (servers and other elements) are not included.  - depth=1: Direct properties and children references are included.  - depth=2: Direct properties and children properties are included.  - depth=3: Direct properties and children properties and children's children are included.  - depth=... and so on
  x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
}

begin
  # Retrieve private Cross-Connects
  result = api_instance.pccs_find_by_id(pcc_id, opts)
  p result
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_find_by_id: #{e}"
end
```

#### Using the pccs\_find\_by\_id\_with\_http\_info variant

This returns an Array which contains the response data, status code and headers.

> \<Array(, Integer, Hash)> pccs\_find\_by\_id\_with\_http\_info(pcc\_id, opts)

```ruby
begin
  # Retrieve private Cross-Connects
  data, status_code, headers = api_instance.pccs_find_by_id_with_http_info(pcc_id, opts)
  p status_code # => 2xx
  p headers # => { ... }
  p data # => <PrivateCrossConnect>
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_find_by_id_with_http_info: #{e}"
end
```

### Parameters

| Name                    | Type        | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                         |
| ----------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- |
| **pcc\_id**             | **String**  | The unique ID of the private Cross-Connect.                                                                                                                                                                                                                                                                                                                                                                                              |                               |
| **pretty**              | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional]\[default to true] |
| **depth**               | **Integer** | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional]\[default to 0]    |
| **x\_contract\_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                   |

### Return type

[**PrivateCrossConnect**](https://docs.ionos.com/sections-test/ruby-sdk/cloud-api-ruby-sdk/models/privatecrossconnect)

### Authorization

Basic Authentication, Token Authentication

### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## pccs\_get

> pccs\_get(opts)

List private Cross-Connects

List all private Cross-Connects for your account.

### Examples

```ruby
require 'time'
require 'ionoscloud'
# setup authorization
Ionoscloud.configure do |config|
  # Configure HTTP basic authorization: Basic Authentication
  config.username = 'YOUR USERNAME'
  config.password = 'YOUR PASSWORD'

  # Configure API key authorization: Token Authentication
  config.api_key['Authorization'] = 'YOUR API KEY'
  # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
  # config.api_key_prefix['Authorization'] = 'Bearer'
end

api_instance = Ionoscloud::PrivateCrossConnectsApi.new
opts = {
  pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
  depth: 56, # Integer | Controls the detail depth of the response objects.  GET /datacenters/[ID]  - depth=0: Only direct properties are included; children (servers and other elements) are not included.  - depth=1: Direct properties and children references are included.  - depth=2: Direct properties and children properties are included.  - depth=3: Direct properties and children properties and children's children are included.  - depth=... and so on
  x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
}

begin
  # List private Cross-Connects
  result = api_instance.pccs_get(opts)
  p result
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_get: #{e}"
end
```

#### Using the pccs\_get\_with\_http\_info variant

This returns an Array which contains the response data, status code and headers.

> \<Array(, Integer, Hash)> pccs\_get\_with\_http\_info(opts)

```ruby
begin
  # List private Cross-Connects
  data, status_code, headers = api_instance.pccs_get_with_http_info(opts)
  p status_code # => 2xx
  p headers # => { ... }
  p data # => <PrivateCrossConnects>
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_get_with_http_info: #{e}"
end
```

### Parameters

| Name                    | Type        | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                         |
| ----------------------- | ----------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- |
| **pretty**              | **Boolean** | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional]\[default to true] |
| **depth**               | **Integer** | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional]\[default to 0]    |
| **x\_contract\_number** | **Integer** | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                   |

### Return type

[**PrivateCrossConnects**](https://docs.ionos.com/sections-test/ruby-sdk/cloud-api-ruby-sdk/models/privatecrossconnects)

### Authorization

Basic Authentication, Token Authentication

### HTTP request headers

* **Content-Type**: Not defined
* **Accept**: application/json

## pccs\_patch

> pccs\_patch(pcc\_id, pcc, opts)

Partially modify private Cross-Connects

Update the properties of the specified private Cross-Connect.

### Examples

```ruby
require 'time'
require 'ionoscloud'
# setup authorization
Ionoscloud.configure do |config|
  # Configure HTTP basic authorization: Basic Authentication
  config.username = 'YOUR USERNAME'
  config.password = 'YOUR PASSWORD'

  # Configure API key authorization: Token Authentication
  config.api_key['Authorization'] = 'YOUR API KEY'
  # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
  # config.api_key_prefix['Authorization'] = 'Bearer'
end

api_instance = Ionoscloud::PrivateCrossConnectsApi.new
pcc_id = 'pcc_id_example' # String | The unique ID of the private Cross-Connect.
pcc = Ionoscloud::PrivateCrossConnectProperties.new # PrivateCrossConnectProperties | The properties of the private Cross-Connect to be updated.
opts = {
  pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
  depth: 56, # Integer | Controls the detail depth of the response objects.  GET /datacenters/[ID]  - depth=0: Only direct properties are included; children (servers and other elements) are not included.  - depth=1: Direct properties and children references are included.  - depth=2: Direct properties and children properties are included.  - depth=3: Direct properties and children properties and children's children are included.  - depth=... and so on
  x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
}

begin
  # Partially modify private Cross-Connects
  result = api_instance.pccs_patch(pcc_id, pcc, opts)
  p result
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_patch: #{e}"
end
```

#### Using the pccs\_patch\_with\_http\_info variant

This returns an Array which contains the response data, status code and headers.

> \<Array(, Integer, Hash)> pccs\_patch\_with\_http\_info(pcc\_id, pcc, opts)

```ruby
begin
  # Partially modify private Cross-Connects
  data, status_code, headers = api_instance.pccs_patch_with_http_info(pcc_id, pcc, opts)
  p status_code # => 2xx
  p headers # => { ... }
  p data # => <PrivateCrossConnect>
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_patch_with_http_info: #{e}"
end
```

### Parameters

| Name                    | Type                                                                                                                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                         |
| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- |
| **pcc\_id**             | **String**                                                                                                                                 | The unique ID of the private Cross-Connect.                                                                                                                                                                                                                                                                                                                                                                                              |                               |
| **pcc**                 | [**PrivateCrossConnectProperties**](https://docs.ionos.com/sections-test/ruby-sdk/cloud-api-ruby-sdk/models/privatecrossconnectproperties) | The properties of the private Cross-Connect to be updated.                                                                                                                                                                                                                                                                                                                                                                               |                               |
| **pretty**              | **Boolean**                                                                                                                                | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional]\[default to true] |
| **depth**               | **Integer**                                                                                                                                | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional]\[default to 0]    |
| **x\_contract\_number** | **Integer**                                                                                                                                | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                   |

### Return type

[**PrivateCrossConnect**](https://docs.ionos.com/sections-test/ruby-sdk/cloud-api-ruby-sdk/models/privatecrossconnect)

### Authorization

Basic Authentication, Token Authentication

### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json

## pccs\_post

> pccs\_post(pcc, opts)

Create a Private Cross-Connect

Creates a private Cross-Connect.

### Examples

```ruby
require 'time'
require 'ionoscloud'
# setup authorization
Ionoscloud.configure do |config|
  # Configure HTTP basic authorization: Basic Authentication
  config.username = 'YOUR USERNAME'
  config.password = 'YOUR PASSWORD'

  # Configure API key authorization: Token Authentication
  config.api_key['Authorization'] = 'YOUR API KEY'
  # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
  # config.api_key_prefix['Authorization'] = 'Bearer'
end

api_instance = Ionoscloud::PrivateCrossConnectsApi.new
pcc = Ionoscloud::PrivateCrossConnect.new({properties: Ionoscloud::PrivateCrossConnectProperties.new}) # PrivateCrossConnect | The private Cross-Connect to create.
opts = {
  pretty: true, # Boolean | Controls whether the response is pretty-printed (with indentations and new lines).
  depth: 56, # Integer | Controls the detail depth of the response objects.  GET /datacenters/[ID]  - depth=0: Only direct properties are included; children (servers and other elements) are not included.  - depth=1: Direct properties and children references are included.  - depth=2: Direct properties and children properties are included.  - depth=3: Direct properties and children properties and children's children are included.  - depth=... and so on
  x_contract_number: 56 # Integer | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.
}

begin
  # Create a Private Cross-Connect
  result = api_instance.pccs_post(pcc, opts)
  p result
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_post: #{e}"
end
```

#### Using the pccs\_post\_with\_http\_info variant

This returns an Array which contains the response data, status code and headers.

> \<Array(, Integer, Hash)> pccs\_post\_with\_http\_info(pcc, opts)

```ruby
begin
  # Create a Private Cross-Connect
  data, status_code, headers = api_instance.pccs_post_with_http_info(pcc, opts)
  p status_code # => 2xx
  p headers # => { ... }
  p data # => <PrivateCrossConnect>
rescue Ionoscloud::ApiError => e
  puts "Error when calling PrivateCrossConnectsApi->pccs_post_with_http_info: #{e}"
end
```

### Parameters

| Name                    | Type                                                                                                                   | Description                                                                                                                                                                                                                                                                                                                                                                                                                              | Notes                         |
| ----------------------- | ---------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- |
| **pcc**                 | [**PrivateCrossConnect**](https://docs.ionos.com/sections-test/ruby-sdk/cloud-api-ruby-sdk/models/privatecrossconnect) | The private Cross-Connect to create.                                                                                                                                                                                                                                                                                                                                                                                                     |                               |
| **pretty**              | **Boolean**                                                                                                            | Controls whether the response is pretty-printed (with indentations and new lines).                                                                                                                                                                                                                                                                                                                                                       | \[optional]\[default to true] |
| **depth**               | **Integer**                                                                                                            | Controls the detail depth of the response objects. GET /datacenters/\[ID] - depth=0: Only direct properties are included; children (servers and other elements) are not included. - depth=1: Direct properties and children references are included. - depth=2: Direct properties and children properties are included. - depth=3: Direct properties and children properties and children's children are included. - depth=... and so on | \[optional]\[default to 0]    |
| **x\_contract\_number** | **Integer**                                                                                                            | Users with multiple contracts must provide the contract number, for which all API requests are to be executed.                                                                                                                                                                                                                                                                                                                           | \[optional]                   |

### Return type

[**PrivateCrossConnect**](https://docs.ionos.com/sections-test/ruby-sdk/cloud-api-ruby-sdk/models/privatecrossconnect)

### Authorization

Basic Authentication, Token Authentication

### HTTP request headers

* **Content-Type**: application/json
* **Accept**: application/json
