{
  "components": {
    "parameters": {
      "connection_id_unqualified": {
        "description": "The connection identifier",
        "in": "path",
        "name": "id",
        "required": true,
        "schema": {
          "maxLength": 36,
          "minLength": 0,
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
          "type": "string"
        }
      },
      "connection_name": {
        "description": "Search for connections with the given name",
        "in": "query",
        "name": "name",
        "required": false,
        "schema": {
          "maxLength": 64,
          "minLength": 0,
          "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
          "type": "string"
        }
      },
      "prefix_filter_id": {
        "description": "Prefix filter identifier",
        "in": "path",
        "name": "filter_id",
        "required": true,
        "schema": {
          "maxLength": 36,
          "minLength": 0,
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
          "type": "string"
        }
      },
      "query_connections_network_id_filter": {
        "description": "Search for connections with the given network_id value\n",
        "in": "query",
        "name": "network_id",
        "required": false,
        "schema": {
          "maxLength": 220,
          "minLength": 0,
          "pattern": ".",
          "type": "string"
        }
      },
      "query_connections_network_type_filter": {
        "description": "Search for connections with the given network_type value\n",
        "in": "query",
        "name": "network_type",
        "required": false,
        "schema": {
          "maxLength": 20,
          "minLength": 0,
          "pattern": ".",
          "type": "string"
        }
      },
      "query_list_connections_limit": {
        "description": "The maximum number of resources to return per page\n",
        "in": "query",
        "name": "limit",
        "required": false,
        "schema": {
          "default": 50,
          "format": "int32",
          "maximum": 100,
          "minimum": 1,
          "type": "integer"
        }
      },
      "query_list_connections_start": {
        "description": "A server supplied token determining which resource to start the page on\n",
        "in": "query",
        "name": "start",
        "required": false,
        "schema": {
          "maxLength": 500,
          "minLength": 0,
          "pattern": "^([0-9a-zA-Z]){0,500}$",
          "type": "string"
        }
      },
      "query_list_gateways_limit": {
        "description": "The maximum number of resources to return per page\n",
        "in": "query",
        "name": "limit",
        "required": false,
        "schema": {
          "default": 50,
          "format": "int32",
          "maximum": 50,
          "minimum": 1,
          "type": "integer"
        }
      },
      "query_list_gateways_start": {
        "description": "A server supplied token determining which resource to start the page on\n",
        "in": "query",
        "name": "start",
        "required": false,
        "schema": {
          "maxLength": 500,
          "minLength": 0,
          "pattern": "^([0-9a-zA-Z]{1,500})$",
          "type": "string"
        }
      },
      "query_list_tgw_connections_limit": {
        "description": "The maximum number of resources to return per page\n",
        "in": "query",
        "name": "limit",
        "required": false,
        "schema": {
          "default": 50,
          "format": "int32",
          "maximum": 50,
          "minimum": 1,
          "type": "integer"
        }
      },
      "query_list_tgw_connections_start": {
        "description": "A server supplied token determining which resource to start the page on\n",
        "in": "query",
        "name": "start",
        "required": false,
        "schema": {
          "maxLength": 500,
          "minLength": 0,
          "pattern": "^([0-9a-zA-Z]){0,500}$",
          "type": "string"
        }
      },
      "route_report_id_unqualified": {
        "description": "Route report identifier",
        "in": "path",
        "name": "id",
        "required": true,
        "schema": {
          "maxLength": 36,
          "minLength": 0,
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
          "type": "string"
        }
      },
      "transit_connection_id": {
        "description": "The connection identifier",
        "in": "path",
        "name": "transit_connection_id",
        "required": true,
        "schema": {
          "maxLength": 36,
          "minLength": 0,
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
          "type": "string"
        }
      },
      "transit_gateway_id": {
        "description": "The Transit Gateway identifier",
        "in": "path",
        "name": "transit_gateway_id",
        "required": true,
        "schema": {
          "maxLength": 36,
          "minLength": 0,
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
          "type": "string"
        }
      },
      "transit_gateway_id_unqualified": {
        "description": "The Transit Gateway identifier",
        "in": "path",
        "name": "id",
        "required": true,
        "schema": {
          "maxLength": 36,
          "minLength": 0,
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
          "type": "string"
        }
      },
      "ts_location_name_unqualified": {
        "description": "The Transit Gateway location Name",
        "in": "path",
        "name": "name",
        "required": true,
        "schema": {
          "maxLength": 36,
          "minLength": 0,
          "pattern": "^[a-z]([a-z-0-9]){0,35}$",
          "type": "string"
        }
      },
      "tunnel_id_unqualified": {
        "description": "The tunnel identifier",
        "in": "path",
        "name": "gre_tunnel_id",
        "required": true,
        "schema": {
          "maxLength": 36,
          "minLength": 0,
          "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
          "type": "string"
        }
      },
      "version": {
        "description": "Requests the version of the API as of a date in the format `YYYY-MM-DD`. Any date up to the current date may be\nprovided. Specify the current date to request the latest version.\n",
        "in": "query",
        "name": "version",
        "required": true,
        "schema": {
          "maxLength": 10,
          "minLength": 10,
          "pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
          "type": "string"
        },
        "x-sdk-global-param": true
      }
    },
    "schemas": {
      "AccountID": {
        "description": "The unique identifier for an IBM Cloud account",
        "example": "28e4d90ac7504be694471ee66e70d0d5",
        "maxLength": 100,
        "minLength": 0,
        "pattern": ".",
        "type": "string"
      },
      "Error": {
        "description": "Details of a single error response from the server",
        "properties": {
          "code": {
            "description": "A snake case string succinctly identifying the problem",
            "enum": [
              "not_authorized",
              "not_found",
              "bad_request",
              "invalid_state",
              "precondition_failed",
              "internal_error",
              "not_implemented",
              "validation_invalid_cidr",
              "validation_invalid_length",
              "validation_invalid_ip_address",
              "validation_not_allowed_ip_address",
              "validation_invalid_field_data_type",
              "validation_required_field_missing",
              "validation_required_field_null",
              "validation_invalid_argument",
              "validation_invalid_value",
              "backend_service_unavailable",
              "validation_invalid_request",
              "validation_invalid_characters",
              "validation_invalid_input",
              "missing_version",
              "invalid_version",
              "invalid_version_range",
              "version_not_supported",
              "validation_no_patchable_field"
            ],
            "example": "validation_required_field_missing",
            "maxLength": 80,
            "minLength": 0,
            "pattern": "^[a-z]+(_[a-z]+)*$",
            "type": "string"
          },
          "message": {
            "description": "An explanation of the solution to the problem",
            "example": "The `location` field is required.",
            "maxLength": 500,
            "minLength": 0,
            "type": "string"
          },
          "more_info": {
            "description": "Link to documentation about this error",
            "example": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          },
          "target": {
            "$ref": "#/components/schemas/ErrorTarget"
          }
        },
        "required": [
          "code",
          "message"
        ],
        "title": "Error",
        "type": "object"
      },
      "ErrorContainer": {
        "description": "A collection of errors that occurred on a given request to the server",
        "properties": {
          "errors": {
            "description": "Array of errors",
            "items": {
              "$ref": "#/components/schemas/Error"
            },
            "maxItems": 10,
            "minItems": 1,
            "type": "array"
          },
          "trace": {
            "description": "Unique error identifier",
            "example": "86780a34-e651-4b47-9fb0-184a169cc9af",
            "maxLength": 100,
            "minLength": 0,
            "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
            "type": "string"
          }
        },
        "required": [
          "trace",
          "errors"
        ],
        "title": "ErrorContainer",
        "type": "object"
      },
      "ErrorContainerGateway404": {
        "description": "Collection of errors for request",
        "properties": {
          "errors": {
            "description": "errors",
            "items": {
              "$ref": "#/components/schemas/ErrorGateway404"
            },
            "maxItems": 10,
            "minItems": 1,
            "type": "array"
          },
          "trace": {
            "description": "Unique error identifier",
            "example": "86780a34-e651-4b47-9fb0-184a169cc9af",
            "maxLength": 100,
            "minLength": 0,
            "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
            "type": "string"
          }
        },
        "required": [
          "trace",
          "errors"
        ],
        "title": "ErrorContainer",
        "type": "object"
      },
      "ErrorGateway404": {
        "description": "Error details",
        "properties": {
          "code": {
            "description": "Snake case problem identifier",
            "enum": [
              "not_found"
            ],
            "example": "not_found",
            "maxLength": 80,
            "minLength": 0,
            "type": "string"
          },
          "message": {
            "description": "Explanation of problem",
            "example": "Gateway not found",
            "maxLength": 500,
            "minLength": 0,
            "type": "string"
          },
          "more_info": {
            "description": "Documentation link for error",
            "example": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          },
          "target": {
            "$ref": "#/components/schemas/ErrorTargetGateway404"
          }
        },
        "required": [
          "code",
          "message"
        ],
        "title": "Error",
        "type": "object"
      },
      "ErrorTarget": {
        "description": "Details of what input produced the resulting error",
        "properties": {
          "name": {
            "description": "The name of the problematic field, query parameter, or header",
            "example": "location",
            "maxLength": 40,
            "minLength": 0,
            "type": "string"
          },
          "type": {
            "description": "The type of input where the problem was.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
            "enum": [
              "field",
              "parameter",
              "header"
            ],
            "example": "field",
            "type": "string"
          }
        },
        "required": [
          "type",
          "name"
        ],
        "title": "ErrorTarget",
        "type": "object"
      },
      "ErrorTargetGateway404": {
        "description": "Details of specific input related to error",
        "properties": {
          "name": {
            "description": "Name of problematic field, query parameter, path parameter or header",
            "example": "transit_gateway_id",
            "maxLength": 40,
            "minLength": 0,
            "type": "string"
          },
          "type": {
            "description": "Field type.\n\nThe list of enumerated values for this property may expand in the future. Code and processes using this field\nmust tolerate unexpected values.",
            "enum": [
              "field",
              "parameter",
              "header"
            ],
            "example": "parameter",
            "type": "string"
          }
        },
        "required": [
          "type",
          "name"
        ],
        "title": "ErrorTarget",
        "type": "object"
      },
      "Global": {
        "description": "Allow global routing for a Transit Gateway",
        "example": true,
        "type": "boolean"
      },
      "ID": {
        "description": "A unique identifier for a resource",
        "example": "0a06fb9b-820f-4c44-8a31-77f1f0806d28",
        "maxLength": 100,
        "minLength": 0,
        "type": "string"
      },
      "Name": {
        "description": "A human readable name for a resource",
        "example": "my-resource",
        "maxLength": 63,
        "minLength": 1,
        "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
        "type": "string"
      },
      "PaginationFirstConnection": {
        "description": "A reference to the first page of resources",
        "properties": {
          "href": {
            "description": "url",
            "example": "https://transit.cloud.ibm.com/v1/connections?limit=50",
            "maxLength": 65536,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "href"
        ],
        "type": "object"
      },
      "PaginationFirstTG": {
        "description": "A reference to the first page of resources",
        "properties": {
          "href": {
            "description": "url",
            "example": "https://transit.cloud.ibm.com/v1/transit_gateways?limit=50",
            "maxLength": 65536,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "href"
        ],
        "type": "object"
      },
      "PaginationFirstTGWConnection": {
        "description": "A reference to the first page of resources.\nThis will be returned when number of connections in response are greater than max page limit.\n",
        "properties": {
          "href": {
            "description": "url",
            "example": "https://transit.cloud.ibm.com/v1/transit_gateways/{transit_gateway_id}/connections?limit=50",
            "maxLength": 65536,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "href"
        ],
        "type": "object"
      },
      "PaginationNextConnection": {
        "description": "A reference to the next page of resources; this reference is included for all pages except the last page",
        "properties": {
          "href": {
            "description": "url",
            "example": "https://transit.cloud.ibm.com/v1/connections?start=MjAyMC0wNS0wOFQxNDoxNzowMy45NzQ5NzNa&limit=50",
            "maxLength": 65536,
            "minLength": 0,
            "type": "string"
          },
          "start": {
            "description": "server generated start token for next page of resources",
            "example": "MjAyMC0wNS0wOFQxNDoxNzowMy45NzQ5NzNa",
            "type": "string"
          }
        },
        "required": [
          "href",
          "start"
        ],
        "type": "object"
      },
      "PaginationNextTG": {
        "description": "A reference to the next page of resources; this reference is included for all pages except the last page",
        "properties": {
          "href": {
            "description": "url",
            "example": "https://transit.cloud.ibm.com/v1/transit_gateways?start=MjAyMC0wNS0wOFQxNDoxNzowMy45NzQ5NzNa&limit=50",
            "maxLength": 65536,
            "minLength": 0,
            "type": "string"
          },
          "start": {
            "description": "server generated start token for next page of resources",
            "example": "MjAyMC0wNS0wOFQxNDoxNzowMy45NzQ5NzNa",
            "type": "string"
          }
        },
        "required": [
          "href",
          "start"
        ],
        "type": "object"
      },
      "PaginationNextTGWConnection": {
        "description": "A reference to the next page of resources; this reference is included for all pages except the last page.",
        "properties": {
          "href": {
            "description": "url",
            "example": "https://transit.cloud.ibm.com/v1/transit_gateways/{transit_gateway_id}/connections?start=MjAyMC0wNS0wOFQxNDoxNzowMy45NzQ5NzNa&limit=50",
            "maxLength": 65536,
            "minLength": 0,
            "type": "string"
          },
          "start": {
            "description": "server generated start token for next page of resources",
            "example": "MjAyMC0wNS0wOFQxNDoxNzowMy45NzQ5NzNa",
            "type": "string"
          }
        },
        "required": [
          "href",
          "start"
        ],
        "type": "object"
      },
      "PrefixFilterCollection": {
        "description": "prefix filters",
        "properties": {
          "prefix_filters": {
            "description": "Array of prefix filters",
            "items": {
              "$ref": "#/components/schemas/PrefixFilterCust"
            },
            "maxItems": 10,
            "minItems": 0,
            "type": "array"
          }
        },
        "required": [
          "prefix_filters"
        ],
        "type": "object"
      },
      "PrefixFilterCust": {
        "description": "prefix filter",
        "properties": {
          "action": {
            "description": "Whether or not this prefix filter should allow or deny prefixes matching this filter's prefix definition.",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "before": {
            "description": "A reference to the prefix filter that will be the next filter applied to the Transit Gateway connection.\n\nIf this field is blank, this prefix filter will be the last rule applied before the connection's default rule.\n\nWhen a prefix filter is created with the same before field as an existing prefix filter, the existing filter will be applied\nbefore the new filter, and the existing filter's before field will be updated accordingly.",
            "example": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
            "maxLength": 36,
            "minLength": 0,
            "type": "string"
          },
          "created_at": {
            "description": "The date and time that this prefix filter was created",
            "format": "date-time",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          },
          "ge": {
            "default": 0,
            "description": "Defines the minimum matched prefix precision. If this field is non-zero then the filter will match all routes\nwithin the `prefix` that have a prefix length greater or equal to this value.\n\nThis value can be zero, or a non-negative number greater than or equal to the prefix length of the filter's\nprefix or less then or equal to 32. If this value is set to zero, the filter will not use the `ge` route\nmatching behavior. If the `le` value is non-zero the the `ge` value must between the prefix length and the\n`le` value, inclusive.",
            "example": 0,
            "maximum": 32,
            "minimum": 0,
            "type": "integer"
          },
          "id": {
            "description": "Prefix Filter identifier",
            "example": "1a15dcab-7e30-45e1-b7c5-bc690eaa9865",
            "maxLength": 36,
            "minLength": 0,
            "type": "string"
          },
          "le": {
            "default": 0,
            "description": "Defines the maximum matched prefix precision. If this field is non-zero then the filter will match all routes\nwithin the `prefix` that have a prefix length less than or equal to this value.\n\nThis value can be zero, or a non-negative number greater than or equal to the prefix length of the filter's\nprefix or less then or equal to 32. If this value is set to zero, the filter will not use the `le` route\nmatching behavior. If the `ge` value is non-zero the the `le` value must between the `ge` value and 32, inclusive.",
            "example": 32,
            "maximum": 32,
            "minimum": 0,
            "type": "integer"
          },
          "prefix": {
            "description": "The IPv4 Prefix to be matched by this filter. If both the `le` and `ge` are zero, then this filter will only\napply to routes that exactly match this prefix, while a non-zero value for either `le` or `ge`, this filter\ncan apply to multiple routes with different prefix lengths, but will still only apply to prefixes contained\nin the address space defined by `prefix`.",
            "example": "192.168.100.0/24",
            "maxLength": 50,
            "minLength": 0,
            "type": "string"
          },
          "updated_at": {
            "description": "The date and time that this prefix filter was last updated",
            "format": "date-time",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "action",
          "created_at",
          "id",
          "prefix"
        ]
      },
      "PrefixFilterPatch": {
        "description": "A prefix filter update template",
        "properties": {
          "action": {
            "description": "Whether or not this prefix filter should allow or deny prefixes matching this filter's prefix definition.",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "before": {
            "description": "A reference to the prefix filter that will be the next filter applied to the Transit Gateway connection.\n\nIf this field is blank, this prefix filter will be the last rule applied before the connection's default rule.\n\nWhen a prefix filter is created with the same before field as an existing prefix filter, the existing filter will be applied\nbefore the new filter, and the existing filter's before field will be updated accordingly.",
            "example": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
            "maxLength": 36,
            "minLength": 0,
            "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
            "type": "string"
          },
          "ge": {
            "description": "Defines the minimum matched prefix precision. If this field is non-zero then the filter will match all routes\nwithin the `prefix` that have a prefix length greater or equal to this value.\n\nThis value can be zero, or a non-negative number greater than or equal to the prefix length of the filter's\nprefix or less then or equal to 32. If this value is set to zero, the filter will not use the `ge` route\nmatching behavior. If the `le` value is non-zero the the `ge` value must between the prefix length and the\n`le` value, inclusive.",
            "example": 0,
            "type": "integer"
          },
          "le": {
            "default": 0,
            "description": "Defines the maximum matched prefix precision. If this field is non-zero then the filter will match all routes\nwithin the `prefix` that have a prefix length less than or equal to this value.\n\nThis value can be zero, or a non-negative number greater than or equal to the prefix length of the filter's\nprefix or less then or equal to 32. If this value is set to zero, the filter will not use the `le` route\nmatching behavior. If the `ge` value is non-zero the the `le` value must between the `ge` value and 32, inclusive.",
            "example": 32,
            "maximum": 32,
            "minimum": 0,
            "type": "integer"
          },
          "prefix": {
            "description": "The IPv4 Prefix to be matched by this filter",
            "example": "192.168.100.0/24",
            "maxLength": 50,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})/([0-9]{1,2})$",
            "type": "string"
          }
        },
        "title": "PrefixFilterPatch",
        "type": "object"
      },
      "PrefixFilterPut": {
        "description": "A prefix filter update template",
        "properties": {
          "action": {
            "description": "Whether or not this prefix filter should allow or deny prefixes matching this filter's prefix definition.",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "ge": {
            "default": 0,
            "description": "Defines the minimum matched prefix precision. If this field is non-zero then the filter will match all routes\nwithin the `prefix` that have a prefix length greater or equal to this value.\n\nThis value can be zero, or a non-negative number greater than or equal to the prefix length of the filter's\nprefix or less then or equal to 32. If this value is set to zero, the filter will not use the `ge` route\nmatching behavior. If the `le` value is non-zero the the `ge` value must between the prefix length and the\n`le` value, inclusive.",
            "example": 0,
            "maximum": 32,
            "minimum": 0,
            "type": "integer"
          },
          "le": {
            "default": 0,
            "description": "Defines the maximum matched prefix precision. If this field is non-zero then the filter will match all routes\nwithin the `prefix` that have a prefix length less than or equal to this value.\n\nThis value can be zero, or a non-negative number greater than or equal to the prefix length of the filter's\nprefix or less then or equal to 32. If this value is set to zero, the filter will not use the `le` route\nmatching behavior. If the `ge` value is non-zero the the `le` value must between the `ge` value and 32, inclusive.",
            "example": 32,
            "maximum": 32,
            "minimum": 0,
            "type": "integer"
          },
          "prefix": {
            "description": "The IPv4 Prefix to be matched by this filter. If both the `le` and `ge` are zero, then this filter will only\napply to routes that exactly match this prefix, while a non-zero value for either `le` or `ge`, this filter\ncan apply to multiple routes with different prefix lengths, but will still only apply to prefixes contained\nin the address space defined by `prefix`.",
            "example": "192.168.100.0/24",
            "maxLength": 50,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})/([0-9]{1,2})$",
            "type": "string"
          }
        },
        "required": [
          "action",
          "prefix"
        ],
        "title": "PrefixFilterPut",
        "type": "object"
      },
      "PrefixFilterPutCollection": {
        "description": "A list of prefix filters",
        "properties": {
          "prefix_filters": {
            "description": "Array of prefix filters",
            "items": {
              "$ref": "#/components/schemas/PrefixFilterPut"
            },
            "maxItems": 10,
            "minItems": 1,
            "type": "array"
          }
        },
        "required": [
          "prefix_filters"
        ],
        "type": "object"
      },
      "PrefixFilterTemplate": {
        "description": "A prefix filter create template",
        "properties": {
          "action": {
            "description": "Whether or not this prefix filter should allow or deny prefixes matching this filter's prefix definition.",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "before": {
            "description": "A reference to the prefix filter that will be the next filter applied to the Transit Gateway connection.\n\nIf this field is blank, this prefix filter will be the last rule applied before the connection's default rule.\n\nWhen a prefix filter is created with the same before field as an existing prefix filter, the existing filter will be applied\nbefore the new filter, and the existing filter's before field will be updated accordingly.",
            "example": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
            "maxLength": 36,
            "minLength": 0,
            "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
            "type": "string"
          },
          "ge": {
            "default": 0,
            "description": "Defines the minimum matched prefix precision. If this field is non-zero then the filter will match all routes\nwithin the `prefix` that have a prefix length greater than or equal to this value.\n\nThis value can be zero, or a non-negative number greater than or equal to the prefix length of the filter's\nprefix or less then or equal to 32. If this value is set to zero, the filter will not use the `ge` route\nmatching behavior. If the `le` value is non-zero the the `ge` value must between the prefix length and the\n`le` value, inclusive.",
            "example": 0,
            "maximum": 32,
            "minimum": 0,
            "type": "integer"
          },
          "le": {
            "default": 0,
            "description": "Defines the maximum matched prefix precision. If this field is non-zero then the filter will match all routes\nwithin the `prefix` that have a prefix length less than or equal to this value.\n\nThis value can be zero, or a non-negative number greater than or equal to the prefix length of the filter's\nprefix or less then or equal to 32. If this value is set to zero, the filter will not use the `le` route\nmatching behavior. If the `ge` value is non-zero the the `le` value must between the `ge` value and 32, inclusive.",
            "example": 32,
            "maximum": 32,
            "minimum": 0,
            "type": "integer"
          },
          "prefix": {
            "description": "The IPv4 Prefix to be matched by this filter. If both the `le` and `ge` are zero, then this filter will only\napply to routes that exactly match this prefix, while a non-zero value for either `le` or `ge`, this filter\ncan apply to multiple routes with different prefix lengths, but will still only apply to prefixes contained\nin the address space defined by `prefix`.",
            "example": "192.168.100.0/24",
            "maxLength": 50,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})/([0-9]{1,2})$",
            "type": "string"
          }
        },
        "required": [
          "action",
          "prefix"
        ],
        "title": "PrefixFilterTemplate",
        "type": "object"
      },
      "ResourceGroupIdentity": {
        "description": "The resource group to use. If unspecified, the account's [default resource group](https://console.bluemix.net/apidocs/resource-manager#introduction) is used.",
        "properties": {
          "id": {
            "description": "The unique identifier for this resource group",
            "example": "56969d6043e9465c883cb9f7363e78e8",
            "maxLength": 36,
            "minLength": 0,
            "pattern": "^[0-9a-f]{32}$",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "title": "ResourceGroupIdentity",
        "type": "object"
      },
      "ResourceGroupReference": {
        "description": "The resource group to use. If unspecified, the account's [default resource group](https://console.bluemix.net/apidocs/resource-manager#introduction) is used.",
        "properties": {
          "href": {
            "description": "The URL for this resource group",
            "example": "https://resource-manager.bluemix.net/v1/resource_groups/56969d6043e9465c883cb9f7363e78e8",
            "maxLength": 65536,
            "minLength": 0,
            "pattern": "^http(s)?:\\/\\/([^\\/?#]*)([^?#]*)(\\?([^#]*))?(#(.*))?$",
            "type": "string"
          },
          "id": {
            "description": "The unique identifier for this resource group",
            "example": "56969d6043e9465c883cb9f7363e78e8",
            "maxLength": 36,
            "minLength": 0,
            "pattern": "^[0-9a-f]{32}$",
            "type": "string"
          }
        },
        "required": [
          "href",
          "id"
        ],
        "title": "ResourceGroupReference",
        "type": "object"
      },
      "RouteReport": {
        "description": "route report",
        "properties": {
          "connections": {
            "description": "Array of connections with their routes",
            "items": {
              "$ref": "#/components/schemas/RouteReportConnection"
            },
            "maxItems": 50,
            "minItems": 0,
            "type": "array"
          },
          "created_at": {
            "description": "Date and time route report was requested",
            "format": "date-time",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          },
          "id": {
            "description": "Report identifier",
            "example": "1a15dcab-7e26-45e1-b7c5-bc690eaa9724",
            "maxLength": 36,
            "minLength": 0,
            "type": "string"
          },
          "overlapping_routes": {
            "description": "Array of overlapping routes",
            "items": {
              "$ref": "#/components/schemas/RouteReportOverlappingRouteGroup"
            },
            "maxItems": 100,
            "minItems": 0,
            "type": "array"
          },
          "status": {
            "description": "Route report status.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
            "enum": [
              "complete",
              "pending",
              "failed"
            ],
            "example": "complete",
            "type": "string"
          },
          "updated_at": {
            "description": "Date and time route report was last modified",
            "format": "date-time",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "connections",
          "created_at",
          "id",
          "overlapping_routes",
          "status"
        ]
      },
      "RouteReportCollection": {
        "description": "route reports",
        "properties": {
          "route_reports": {
            "description": "Array of route reports",
            "items": {
              "$ref": "#/components/schemas/RouteReport"
            },
            "maxItems": 2,
            "minItems": 0,
            "type": "array"
          }
        },
        "required": [
          "route_reports"
        ],
        "type": "object"
      },
      "RouteReportConnection": {
        "description": "route report connection",
        "properties": {
          "bgps": {
            "description": "Array of connection's bgps",
            "items": {
              "$ref": "#/components/schemas/RouteReportConnectionBgp"
            },
            "maxItems": 200,
            "minItems": 0,
            "type": "array"
          },
          "id": {
            "description": "connection ID",
            "example": "3c265a62-91da-4261-a950-950b6af0eb58",
            "maxLength": 36,
            "minLength": 0,
            "type": "string"
          },
          "name": {
            "description": "connection name",
            "example": "transit-connection-vpc1",
            "maxLength": 64,
            "minLength": 0,
            "type": "string"
          },
          "routes": {
            "description": "Array of connection's routes",
            "items": {
              "$ref": "#/components/schemas/RouteReportConnectionRoute"
            },
            "maxItems": 200,
            "minItems": 0,
            "type": "array"
          },
          "type": {
            "description": "connection type",
            "example": "vpc",
            "maxLength": 20,
            "minLength": 0,
            "type": "string"
          }
        }
      },
      "RouteReportConnectionBgp": {
        "description": "connection bgp details",
        "properties": {
          "as_path": {
            "description": "AS path",
            "example": "(65201 4201065544) 4203065544",
            "maxLength": 200,
            "minLength": 0,
            "type": "string"
          },
          "is_used": {
            "description": "Indicates whether current route is used or not",
            "example": true,
            "type": "boolean"
          },
          "local_preference": {
            "description": "local preference",
            "example": "190",
            "maxLength": 50,
            "minLength": 0,
            "type": "string"
          },
          "prefix": {
            "description": "prefix",
            "example": "172.17.0.0/16",
            "maxLength": 50,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "is_used"
        ]
      },
      "RouteReportConnectionRoute": {
        "description": "connection used route",
        "properties": {
          "prefix": {
            "description": "prefix",
            "example": "192.168.0.0/16",
            "maxLength": 50,
            "minLength": 0,
            "type": "string"
          }
        }
      },
      "RouteReportOverlappingRoute": {
        "description": "overlapping route details",
        "properties": {
          "connection_id": {
            "description": "connection ID",
            "example": "d2d985d8-1d8e-4e8b-96cd-cee2290ecaff",
            "maxLength": 36,
            "minLength": 0,
            "type": "string"
          },
          "prefix": {
            "description": "overlapping prefix",
            "maxLength": 50,
            "minLength": 0,
            "type": "string"
          }
        }
      },
      "RouteReportOverlappingRouteGroup": {
        "description": "Collection of overlapping route",
        "properties": {
          "routes": {
            "description": "Array of overlapping connection/prefix pairs",
            "items": {
              "$ref": "#/components/schemas/RouteReportOverlappingRoute"
            },
            "maxItems": 1000,
            "minItems": 0,
            "type": "array"
          }
        }
      },
      "TGCreateTemplate": {
        "description": "Template for creating a Transit Gateway",
        "properties": {
          "global": {
            "default": false,
            "description": "Allow global routing for a Transit Gateway. If unspecified, the default value is false.",
            "example": true,
            "type": "boolean"
          },
          "gre_enhanced_route_propagation": {
            "default": false,
            "description": "Allow route propagation across all GREs connected to the same transit gateway. This affects connections on the gateway of type `redundant_gre`, `unbound_gre_tunnel` and `gre_tunnel`.",
            "example": true,
            "type": "boolean"
          },
          "location": {
            "description": "Location of Transit Gateway Services",
            "example": "us-south",
            "maxLength": 36,
            "minLength": 0,
            "pattern": "^([a-z]|[a-z][-_a-z0-9]*[a-z0-9]+)$",
            "type": "string"
          },
          "name": {
            "description": "A human readable name for the transit gateway",
            "example": "my-transit-gateway-in-TransitGateway",
            "maxLength": 63,
            "minLength": 1,
            "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
            "type": "string"
          },
          "resource_group": {
            "$ref": "#/components/schemas/ResourceGroupIdentity"
          }
        },
        "required": [
          "name",
          "location"
        ],
        "title": "TGCreateTemplate",
        "type": "object"
      },
      "TGPatchTemplate": {
        "description": "An update template for a Transit Gateway",
        "properties": {
          "global": {
            "$ref": "#/components/schemas/Global"
          },
          "gre_enhanced_route_propagation": {
            "description": "Allow route propagation across all GREs connected to the same transit gateway. This affects connections on the gateway of type `redundant_gre`, `unbound_gre_tunnel` and `gre_tunnel`. It takes a few minutes for the change to take effect.",
            "example": true,
            "type": "boolean"
          },
          "name": {
            "$ref": "#/components/schemas/Name"
          }
        },
        "title": "TGPatchTemplate",
        "type": "object"
      },
      "TSCollection": {
        "description": "A list of Transit Gateway locations",
        "properties": {
          "locations": {
            "description": "Collection of Transit Gateway locations",
            "items": {
              "$ref": "#/components/schemas/TSLocationBasic"
            },
            "maxItems": 50,
            "minItems": 1,
            "type": "array"
          }
        },
        "required": [
          "locations"
        ],
        "title": "TSCollection",
        "type": "object"
      },
      "TSLocalLocation": {
        "description": "Details of a local connection location",
        "properties": {
          "display_name": {
            "description": "A descriptive display name for the location",
            "example": "Dallas",
            "maxLength": 63,
            "minLength": 1,
            "pattern": "^[a-zA-Z0-9-_\\s]+$",
            "type": "string"
          },
          "name": {
            "description": "The name of the location",
            "example": "us-south",
            "maxLength": 63,
            "minLength": 1,
            "pattern": "^[a-z0-9-_]+$",
            "type": "string"
          },
          "supported_connection_types": {
            "description": "Array of supported connection types",
            "example": [
              "classic",
              "vpc",
              "directlink",
              "gre_tunnel",
              "power_virtual_server",
              "unbound_gre_tunnel"
            ],
            "items": {
              "maxLength": 20,
              "minLength": 0,
              "type": "string"
            },
            "maxItems": 6,
            "minItems": 0,
            "type": "array"
          },
          "type": {
            "description": "The type of the location, determining is this a multi-zone region, a single data center, or a point of presence.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
            "enum": [
              "region",
              "dc"
            ],
            "example": "region",
            "type": "string"
          }
        },
        "required": [
          "name",
          "display_name",
          "type"
        ],
        "title": "TSLocalLocation",
        "type": "object"
      },
      "TSLocation": {
        "allOf": [
          {
            "$ref": "#/components/schemas/TSLocationBasic"
          },
          {
            "properties": {
              "local_connection_locations": {
                "description": "The set of network locations that are considered local for this Transit Gateway location",
                "items": {
                  "$ref": "#/components/schemas/TSLocalLocation"
                },
                "maxItems": 10,
                "minItems": 1,
                "type": "array"
              },
              "zones": {
                "description": "List of valid zones for GRE tunnels",
                "items": {
                  "$ref": "#/components/schemas/ZoneReference"
                },
                "maxItems": 10,
                "minItems": 0,
                "type": "array"
              }
            },
            "required": [
              "local_connection_locations",
              "zones"
            ],
            "title": "TSLocation",
            "type": "object"
          }
        ]
      },
      "TSLocationBasic": {
        "description": "Details of a Transit Gateway location",
        "properties": {
          "billing_location": {
            "description": "The geographical location of this location, used for billing purposes",
            "example": "us",
            "maxLength": 20,
            "minLength": 0,
            "type": "string"
          },
          "name": {
            "description": "Name of the Location",
            "example": "us-south",
            "maxLength": 36,
            "minLength": 0,
            "type": "string"
          },
          "type": {
            "description": "The type of the location, determining is this a multi-zone region, a single data center, or a point of presence.",
            "example": "region",
            "maxLength": 20,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "name",
          "type",
          "billing_location"
        ],
        "title": "TSLocationBasic",
        "type": "object"
      },
      "TransitConnection": {
        "allOf": [
          {
            "$ref": "#/components/schemas/TransitGatewayConnectionCommon"
          },
          {
            "$ref": "#/components/schemas/TransitGatewayConnectionReference"
          },
          {
            "description": "Connection included in transit gateway"
          },
          {
            "properties": {
              "base_connection_id": {
                "deprecated": true,
                "description": "network_type `gre_tunnel` connections use `base_connection_id` to specify the ID of a network_type `classic` connection the\ntunnel is configured over.\nThe specified connection must reside in the same transit gateway and be in an active state.\nThe `classic` connection cannot be deleted until any `gre_tunnel` connections using it are deleted.\nThis field only applies to and is required for network type `gre_tunnel` connections.\n",
                "example": "975f58c1-afe7-469a-9727-7f3d720f2d32",
                "maxLength": 36,
                "minLength": 0,
                "type": "string"
              },
              "base_network_type": {
                "description": "The type of network the GRE tunnel is targeting.",
                "enum": [
                  "classic",
                  "vpc",
                  "vpn"
                ],
                "example": "classic",
                "type": "string"
              },
              "created_at": {
                "description": "The date and time that this connection was created",
                "format": "date-time",
                "type": "string"
              },
              "id": {
                "description": "The unique identifier for this Transit Gateway connection",
                "example": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                "maxLength": 100,
                "minLength": 0,
                "type": "string"
              },
              "local_bgp_asn": {
                "description": "Local network BGP ASN.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
                "example": 64490,
                "type": "integer"
              },
              "local_gateway_ip": {
                "description": "Local gateway IP address.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
                "example": "192.168.100.1",
                "type": "string"
              },
              "local_tunnel_ip": {
                "description": "Local tunnel IP address.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
                "example": "192.168.129.2",
                "type": "string"
              },
              "mtu": {
                "description": "GRE tunnel MTU.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
                "example": 9000,
                "type": "integer"
              },
              "network_account_id": {
                "description": "The ID of the account which owns the connected network. Generally only used if the network is in a different IBM Cloud account than the gateway.",
                "maxLength": 100,
                "minLength": 0,
                "pattern": ".",
                "type": "string"
              },
              "prefix_filters": {
                "description": "Array of prefix route filters for a transit gateway connection. This is order dependent with those first in the array being applied first, and those at the end of the array is applied last, or just before the default.",
                "items": {
                  "$ref": "#/components/schemas/TransitGatewayConnectionPrefixFilterReference"
                },
                "maxItems": 10,
                "minItems": 0,
                "type": "array"
              },
              "prefix_filters_default": {
                "description": "Default setting of permit or deny which applies to any routes that don't match a specified filter.",
                "enum": [
                  "permit",
                  "deny"
                ],
                "example": "permit",
                "type": "string"
              },
              "remote_bgp_asn": {
                "description": "Remote network BGP ASN.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
                "example": 65010,
                "type": "integer"
              },
              "remote_gateway_ip": {
                "description": "Remote gateway IP address.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
                "example": "10.242.63.12",
                "type": "string"
              },
              "remote_tunnel_ip": {
                "description": "Remote tunnel IP address.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
                "example": "192.168.129.1",
                "type": "string"
              },
              "request_status": {
                "description": "Only visible for cross account connections, this field represents the status of a connection request between IBM Cloud accounts.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
                "enum": [
                  "pending",
                  "approved",
                  "rejected",
                  "expired",
                  "detached"
                ],
                "type": "string"
              },
              "status": {
                "description": "Connection's current configuration state.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
                "enum": [
                  "attached",
                  "failed",
                  "pending",
                  "network_pending",
                  "deleting",
                  "detaching",
                  "detached",
                  "suspending",
                  "suspended"
                ],
                "type": "string"
              },
              "transit_gateway": {
                "$ref": "#/components/schemas/TransitGatewayReference"
              },
              "tunnels": {
                "description": "Collection of all tunnels for `redundant_gre` and `vpn_gateway` connections.",
                "items": {
                  "$ref": "#/components/schemas/TransitGatewayTunnel"
                },
                "maxItems": 50,
                "minItems": 0,
                "type": "array"
              },
              "updated_at": {
                "description": "The date and time that this connection was last updated",
                "format": "date-time",
                "type": "string"
              },
              "zone": {
                "$ref": "#/components/schemas/ZoneReference"
              }
            },
            "required": [
              "id",
              "created_at",
              "updated_at",
              "status",
              "request_status",
              "transit_gateway"
            ],
            "title": "TransitConnection"
          }
        ]
      },
      "TransitConnectionCollection": {
        "description": "Transit gateway connections",
        "properties": {
          "connections": {
            "description": "Array of transit gateway connections",
            "items": {
              "$ref": "#/components/schemas/TransitConnection"
            },
            "maxItems": 50,
            "minItems": 0,
            "type": "array"
          },
          "first": {
            "$ref": "#/components/schemas/PaginationFirstConnection"
          },
          "limit": {
            "default": 50,
            "description": "The maximum number of connections returned on one request",
            "example": 50,
            "maximum": 50,
            "minimum": 1,
            "type": "integer"
          },
          "next": {
            "$ref": "#/components/schemas/PaginationNextConnection"
          }
        },
        "required": [
          "connections",
          "first",
          "limit"
        ],
        "type": "object"
      },
      "TransitGateway": {
        "description": "Details of a Transit Gateway",
        "properties": {
          "connection_count": {
            "default": 0,
            "description": "The number of connections associated with this Transit Gateway",
            "example": 5,
            "maximum": 500,
            "minimum": 0,
            "type": "integer"
          },
          "connection_needs_attention": {
            "default": false,
            "description": "Indicates if this Transit Gateway has a connection that needs attention (Such as cross account approval)",
            "example": true,
            "type": "boolean"
          },
          "created_at": {
            "description": "The date and time that this gateway was created",
            "format": "date-time",
            "type": "string"
          },
          "crn": {
            "description": "Cloud Resource Name of a transit gateway",
            "example": "crn:v1:bluemix:public:transit:dal03:a/57a7d05f36894e3cb9b46a43556d903e::gateway:ef4dcb1a-fee4-41c7-9e11-9cd99e65c1f4",
            "maxLength": 500,
            "minLength": 0,
            "pattern": ".",
            "type": "string"
          },
          "global": {
            "$ref": "#/components/schemas/Global"
          },
          "gre_enhanced_route_propagation": {
            "description": "Allow route propagation across all GREs connected to the same transit gateway. This affects connections on the gateway of type `redundant_gre`, `unbound_gre_tunnel` and `gre_tunnel`.",
            "example": true,
            "type": "boolean"
          },
          "id": {
            "description": "A unique identifier for this transit gateway",
            "example": "0a06fb9b-820f-4c44-8a31-77f1f0806d28",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          },
          "location": {
            "description": "Location of Transit Gateway Services",
            "example": "us-south",
            "maxLength": 36,
            "minLength": 0,
            "pattern": "^([a-z]|[a-z][-_a-z0-9]*[a-z0-9]+)$",
            "type": "string"
          },
          "name": {
            "description": "A human readable name for the transit gateway",
            "example": "my-transit-gateway-in-TransitGateway",
            "type": "string"
          },
          "resource_group": {
            "$ref": "#/components/schemas/ResourceGroupReference"
          },
          "status": {
            "description": "The status of the Transit Gateway.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
            "enum": [
              "available",
              "failed",
              "pending",
              "deleting",
              "suspending",
              "suspended"
            ],
            "type": "string"
          },
          "updated_at": {
            "description": "The date and time that this gateway was last updated",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "global",
          "status",
          "created_at",
          "location",
          "name",
          "id",
          "gre_enhanced_route_propagation",
          "connection_needs_attention"
        ],
        "title": "TransitGateway",
        "type": "object"
      },
      "TransitGatewayCollection": {
        "description": "A list of Transit Gateways",
        "properties": {
          "first": {
            "$ref": "#/components/schemas/PaginationFirstTG"
          },
          "limit": {
            "default": 50,
            "description": "The maximum number of gateways returned on one request",
            "example": 50,
            "maximum": 50,
            "minimum": 1,
            "type": "integer"
          },
          "next": {
            "$ref": "#/components/schemas/PaginationNextTG"
          },
          "transit_gateways": {
            "description": "Collection of Transit Services gateways",
            "items": {
              "$ref": "#/components/schemas/TransitGateway"
            },
            "maxItems": 10,
            "minItems": 0,
            "type": "array"
          }
        },
        "required": [
          "first",
          "limit",
          "transit_gateways"
        ],
        "title": "TransitGatewayCollection",
        "type": "object"
      },
      "TransitGatewayConnectionActions": {
        "description": "The action template for managing a connection request",
        "properties": {
          "action": {
            "description": "The action that is to be performed against the connection request",
            "enum": [
              "approve",
              "reject"
            ],
            "example": "approve",
            "type": "string"
          }
        },
        "required": [
          "action"
        ],
        "title": "TransitGatewayConnectionActions",
        "type": "object"
      },
      "TransitGatewayConnectionCollection": {
        "description": "A set of Transit Gateway network connections",
        "properties": {
          "connections": {
            "description": "Array of transit gateways network Connections",
            "items": {
              "$ref": "#/components/schemas/TransitGatewayConnectionCust"
            },
            "maxItems": 50,
            "minItems": 0,
            "type": "array"
          },
          "first": {
            "$ref": "#/components/schemas/PaginationFirstTGWConnection"
          },
          "limit": {
            "default": 50,
            "description": "The maximum number of connections returned on one request.\nThis will be returned when number of connections in response are greater than max page limit.\n",
            "example": 50,
            "maximum": 50,
            "minimum": 1,
            "type": "integer"
          },
          "next": {
            "$ref": "#/components/schemas/PaginationNextTGWConnection"
          },
          "total_count": {
            "description": "total number of resources across all pages (considering the supplied query parameter filters).",
            "example": 500,
            "type": "integer"
          }
        },
        "required": [
          "first",
          "limit",
          "connections",
          "total_count"
        ],
        "title": "TransitGatewayConnectionCollection",
        "type": "object"
      },
      "TransitGatewayConnectionCommon": {
        "description": "Details of a Transit Gateway connection",
        "properties": {
          "base_network_type": {
            "description": "The type of network the Unbound GRE or tunnel is targeting.",
            "enum": [
              "classic",
              "vpc",
              "vpn"
            ],
            "example": "classic",
            "type": "string"
          },
          "name": {
            "description": "The user-defined name for this transit gateway connection.\n",
            "example": "Transit_Service_BWTN_SJ_DL",
            "maxLength": 63,
            "minLength": 1,
            "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
            "type": "string"
          },
          "network_id": {
            "description": "The ID of the network being connected via this connection. This field is required for some types, such as `vpc`, `power_virtual_server`, `directlink`, `vpn_gateway` and `redundant_gre`. For network types `vpc`, `redundant_gre`, `power_virtual_server` and `directlink` this is the CRN of the VPC  / PowerVS / VDC / Direct Link gateway respectively.",
            "example": "crn:v1:bluemix:public:is:us-south:a/123456::vpc:4727d842-f94f-4a2d-824a-9bc9b02c523b",
            "type": "string"
          },
          "network_type": {
            "description": "Defines what type of network is connected via this connection. The list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
            "enum": [
              "classic",
              "directlink",
              "gre_tunnel",
              "unbound_gre_tunnel",
              "vpc",
              "power_virtual_server",
              "redundant_gre",
              "vpn_gateway"
            ],
            "example": "vpc",
            "type": "string"
          }
        },
        "required": [
          "name",
          "network_type"
        ],
        "title": "TransitGatewayConnectionCommon"
      },
      "TransitGatewayConnectionCust": {
        "description": "Connection included in transit gateway",
        "properties": {
          "base_connection_id": {
            "deprecated": true,
            "description": "network_type `gre_tunnel` connections use `base_connection_id` to specify the ID of a network_type `classic` connection the\ntunnel is configured over.\nThe specified connection must reside in the same transit gateway and be in an active state.\nThe `classic` connection cannot be deleted until any `gre_tunnel` connections using it are deleted.\nThis field only applies to and is required for network type `gre_tunnel` connections.\n",
            "example": "975f58c1-afe7-469a-9727-7f3d720f2d32",
            "maxLength": 36,
            "minLength": 0,
            "type": "string"
          },
          "base_network_type": {
            "description": "The type of network the Unbound GRE tunnel is targeting.\nThis field is required for network type `unbound_gre_tunnel` and must be set to `classic`.  For a `redundant_gre` network type, the value is required and can be either VPC or Classic.\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`, `vpn_gateway` and `gre_tunnel` connections.",
            "enum": [
              "classic",
              "vpc",
              "vpn"
            ],
            "example": "classic",
            "type": "string"
          },
          "cidr": {
            "description": "network_type 'vpn_gateway' connections use 'cidr' to specify the CIDR to use for the VPN GRE tunnels",
            "example": "192.168.0.0/24",
            "maxLength": 19,
            "minLength": 0,
            "type": "string"
          },
          "created_at": {
            "description": "The date and time that this connection was created",
            "format": "date-time",
            "type": "string"
          },
          "id": {
            "description": "The unique identifier for this Transit Gateway connection",
            "example": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          },
          "local_bgp_asn": {
            "description": "Local network BGP ASN.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": 64490,
            "type": "integer"
          },
          "local_gateway_ip": {
            "description": "Local gateway IP address.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": "192.168.100.1",
            "type": "string"
          },
          "local_tunnel_ip": {
            "description": "Local tunnel IP address.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": "192.168.129.2",
            "type": "string"
          },
          "mtu": {
            "description": "GRE tunnel MTU.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": 9000,
            "type": "integer"
          },
          "name": {
            "description": "The user-defined name for this transit gateway connection. Network type `vpc` \nconnections are defaulted to the name of the VPC.  Network type `classic` connections are named `classic`.  \n\nThis field is required for network type `power_virtual_server`, `directlink`, `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway` and `redundant_gre` connections.\n\nThis field is optional for network type `classic`, `vpc` connections.\n",
            "example": "Transit_Service_BWTN_SJ_DL",
            "maxLength": 63,
            "minLength": 1,
            "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
            "type": "string"
          },
          "network_account_id": {
            "description": "The ID of the account which owns the connected network. Generally only used if the network is in a different IBM Cloud account than the gateway.",
            "maxLength": 100,
            "minLength": 0,
            "pattern": ".",
            "type": "string"
          },
          "network_id": {
            "description": "The ID of the network being connected via this connection. For network types `vpc`,`power_virtual_server`, `directlink` and `vpn_gateway` this is the CRN of the VPC / PowerVS / VDC / Direct Link / VPN gateway respectively.\nThis field is required for network type `vpc`, `power_virtual_server`, `vpn_gateway`, and `directlink` connections.  It is also required for `redundant_gre` connections when the base_network_type is set to VPC.\nThis field is required to be unspecified for network type `classic`, `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": "crn:v1:bluemix:public:is:us-south:a/123456::vpc:4727d842-f94f-4a2d-824a-9bc9b02c523b",
            "maxLength": 220,
            "minLength": 0,
            "pattern": ".",
            "type": "string"
          },
          "network_type": {
            "description": "Defines what type of network is connected via this connection.",
            "enum": [
              "classic",
              "directlink",
              "gre_tunnel",
              "unbound_gre_tunnel",
              "vpc",
              "power_virtual_server",
              "redundant_gre",
              "vpn_gateway"
            ],
            "example": "vpc",
            "type": "string"
          },
          "prefix_filters": {
            "description": "Array of prefix route filters for a transit gateway connection. This is order dependent with those first in the array being applied first, and those at the end of the array is applied last, or just before the default.\nThis field does not apply to the `redundant_gre` network type.",
            "items": {
              "$ref": "#/components/schemas/TransitGatewayConnectionPrefixFilterReference"
            },
            "maxItems": 10,
            "minItems": 0,
            "type": "array"
          },
          "prefix_filters_default": {
            "description": "Default setting of permit or deny which applies to any routes that don't match a specified filter.\nThis field does not apply to the `redundant_gre` network type.",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "remote_bgp_asn": {
            "description": "Remote network BGP ASN.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": 65010,
            "type": "integer"
          },
          "remote_gateway_ip": {
            "description": "Remote gateway IP address.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": "10.242.63.12",
            "type": "string"
          },
          "remote_tunnel_ip": {
            "description": "Remote tunnel IP address.  This field only applies to network type `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": "192.168.129.1",
            "type": "string"
          },
          "request_status": {
            "description": "Only visible for cross account connections, this field represents the status of a connection request between IBM Cloud accounts.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
            "enum": [
              "pending",
              "approved",
              "rejected",
              "expired",
              "detached"
            ],
            "type": "string"
          },
          "status": {
            "description": "Connection's current configuration state.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
            "enum": [
              "attached",
              "failed",
              "pending",
              "network_pending",
              "deleting",
              "detaching",
              "detached",
              "suspending",
              "suspended"
            ],
            "type": "string"
          },
          "tunnels": {
            "description": "Collection of all tunnels for `redundant_gre` and `vpn_gateway` connections.",
            "items": {
              "$ref": "#/components/schemas/TransitGatewayTunnel"
            },
            "maxItems": 50,
            "minItems": 0,
            "type": "array"
          },
          "updated_at": {
            "description": "The date and time that this connection was last updated",
            "format": "date-time",
            "type": "string"
          },
          "zone": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ZoneReference"
              }
            ],
            "description": "Location of GRE tunnel. This field is required for network type `gre_tunnel` and `unbound_gre_tunnel` connections.\nThis field is optional for network type `vpn_gateway` connections."
          }
        },
        "required": [
          "id",
          "created_at",
          "updated_at",
          "status",
          "request_status"
        ],
        "title": "TransitGatewayConnectionCust",
        "type": "object"
      },
      "TransitGatewayConnectionIdentityById": {
        "description": "A Transit Gateway connection identity",
        "properties": {
          "id": {
            "description": "The unique identifier for this Transit Gateway connection",
            "example": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "title": "TransitGatewayConnectionIdentityById",
        "type": "object"
      },
      "TransitGatewayConnectionPatch": {
        "allOf": [
          {
            "description": "An update template for a Transit Gateway connection",
            "properties": {
              "name": {
                "description": "The user-defined name for this transit gateway. If specified as empty string or nil, \nthe name will be the network name (the name of the VPC in the case of network type `vpc`, \nand the word Classic, in the case of network type `classic`).\n",
                "example": "Transit_Service_BWTN_SJ_DL",
                "maxLength": 63,
                "minLength": 1,
                "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
                "type": "string"
              },
              "prefix_filters_default": {
                "description": "Default setting of permit or deny which applies to any routes that don't match a specified filter.",
                "enum": [
                  "permit",
                  "deny"
                ],
                "example": "permit",
                "type": "string"
              }
            },
            "title": "TransitGatewayConnectionPatch"
          }
        ]
      },
      "TransitGatewayConnectionPrefixFilter": {
        "description": "A prefix filter for a Transit Gateway connection",
        "properties": {
          "action": {
            "description": "Whether to permit or deny prefix filter",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "ge": {
            "description": "IP Prefix GE",
            "example": 0,
            "type": "integer"
          },
          "le": {
            "description": "IP Prefix LE",
            "example": 32,
            "type": "integer"
          },
          "prefix": {
            "description": "IP Prefix",
            "example": "192.168.100.0/24",
            "maxLength": 50,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})/([0-9]{1,2})$",
            "type": "string"
          }
        },
        "required": [
          "action",
          "prefix"
        ],
        "title": "TransitGatewayConnectionPrefixFilter",
        "type": "object"
      },
      "TransitGatewayConnectionPrefixFilterReference": {
        "description": "A prefix filter reference object for a Transit Gateway connection",
        "properties": {
          "action": {
            "description": "Whether to permit or deny prefix filter",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "before": {
            "description": "Identifier of prefix filter that handles the ordering and follow semantics:\n- When a filter reference another filter in it's before field, then the filter making the reference is applied before\n  the referenced filter. For example: if filter A references filter B in its before field, A is applied before B.\n- When a new filter is added that has the same before as an existing filter, then the older filter will have its before\n  field updated to point to the new filter. Starting with the above example: if filter C is added and it references B in its\n  before field, then A's before field should be modified to point to C, so the order of application would be A, C and finally B.\n- A filter that has an empty before reference will be applied last (though the date order mentioned above will still apply).\n  So continuing the above examples, if filter B has an empty before field, then it will be applied last, but if filter D\n  is created with an empty before field, then B's before field will be modified to point to D, so B will be applied before D.",
            "example": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
            "type": "string"
          },
          "created_at": {
            "description": "The date and time that this prefix filter was created",
            "format": "date-time",
            "type": "string"
          },
          "ge": {
            "description": "IP Prefix GE",
            "example": 0,
            "type": "integer"
          },
          "id": {
            "description": "Prefix Filter identifier",
            "example": "1a15dcab-7e30-45e1-b7c5-bc690eaa9865",
            "type": "string"
          },
          "le": {
            "description": "IP Prefix LE",
            "example": 32,
            "type": "integer"
          },
          "prefix": {
            "description": "IP Prefix",
            "example": "192.168.100.0/24",
            "type": "string"
          },
          "updated_at": {
            "description": "The date and time that this prefix filter was last updated",
            "format": "date-time",
            "type": "string"
          }
        },
        "required": [
          "id",
          "action",
          "prefix",
          "created_at"
        ],
        "title": "TransitGatewayConnectionPrefixFilterReference",
        "type": "object"
      },
      "TransitGatewayConnectionReference": {
        "allOf": [
          {
            "$ref": "#/components/schemas/TransitGatewayConnectionIdentityById"
          },
          {
            "description": "A reference object to a Transit Gateway connection",
            "properties": {
              "id": {
                "$ref": "#/components/schemas/ID"
              }
            },
            "required": [
              "id"
            ],
            "title": "TransitGatewayConnectionReference"
          }
        ]
      },
      "TransitGatewayConnectionTemplate": {
        "description": "A create template for a Transit Gateway connection",
        "properties": {
          "base_connection_id": {
            "deprecated": true,
            "description": "network_type `gre_tunnel` connections must be created over an existing network_type `classic` connection.\nThis field must specify the ID of an active transit gateway network_type `classic` connection in the same transit gateway.\n\nThis field is required for network type `gre_tunnel` connections.\n\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, \n`power_virtual_server`, `unbound_gre_tunnel`, `vpn_gateway` and `redundant_gre` connections.\n",
            "example": "975f58c1-afe7-469a-9727-7f3d720f2d32",
            "maxLength": 36,
            "minLength": 0,
            "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
            "type": "string"
          },
          "base_network_type": {
            "description": "The type of network the Unbound GRE tunnel is targeting.\nThis field is required for network type `unbound_gre_tunnel` and must be set to `classic`.  For a `redundant_gre` network type, the value is required and can be either VPC or Classic.\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`, `vpn_gateway` and `gre_tunnel` connections.",
            "enum": [
              "classic",
              "vpc"
            ],
            "example": "classic",
            "type": "string"
          },
          "cidr": {
            "description": "network_type 'vpn_gateway' connections use 'cidr' to specify the CIDR to use for the VPN GRE tunnels.\n\nThis field is optional for network type `vpn_gateway` connections.\n\nIf left unspecified when creating a `vpn_gateway` connection, a default cidr address of `100.64.0.0/10` will be used.\n\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`, `gre_tunnel`, `unbound_gre_tunnel`, and `redundant_gre` connections.",
            "example": "192.168.0.0/24",
            "maxLength": 19,
            "minLength": 0,
            "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(3[0-2]|[1-2][0-9]|[0-9]))$",
            "type": "string"
          },
          "local_gateway_ip": {
            "description": "Local gateway IP address.\nThis field is required for network type `gre_tunnel` and `unbound_gre_tunnel` connections.\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`, `vpn_gateway` and `redundant_gre` connections.",
            "example": "192.168.100.1",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "local_tunnel_ip": {
            "description": "Local tunnel IP address.\nThe local_tunnel_ip and remote_tunnel_ip addresses must be in the same /30 network.\nNeither can be the network nor broadcast addresses.\n\nThis field is required for network type `gre_tunnel` and `unbound_gre_tunnel` connections.\n\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`, `vpn_gateway` and `redundant_gre` connections.",
            "example": "192.168.129.2",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "name": {
            "description": "The user-defined name for this transit gateway connection. Network type `vpc` \nconnections are defaulted to the name of the VPC.  Network type `classic` connections are named `classic`.  \n\nThis field is required for network type `power_virtual_server`, `directlink`, `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway` and `redundant_gre` connections.\n\nThis field is optional for network type `classic`, `vpc` connections.\n",
            "example": "Transit_Service_BWTN_SJ_DL",
            "maxLength": 63,
            "minLength": 1,
            "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
            "type": "string"
          },
          "network_account_id": {
            "description": "The ID of the account which owns the network that is being connected. Generally only used if the network is in a different account than the gateway.\nThis field is required for type `unbound_gre_tunnel` when the associated_network_type is `classic` or network_type is `redundant_gre` and the GRE tunnel is in a different account than the gateway.",
            "maxLength": 100,
            "minLength": 0,
            "pattern": ".",
            "type": "string"
          },
          "network_id": {
            "description": "The ID of the network being connected via this connection. For network types `vpc`,`power_virtual_server`, `directlink` and `vpn_gateway` this is the CRN of the VPC / PowerVS / VDC / Direct Link / VPN gateway respectively.\nThis field is required for network type `vpc`, `power_virtual_server`, `vpn_gateway`, and `directlink` connections.  It is also required for `redundant_gre` connections when the base_network_type is set to VPC.\nThis field is required to be unspecified for network type `classic`, `gre_tunnel` and `unbound_gre_tunnel` connections.",
            "example": "crn:v1:bluemix:public:is:us-south:a/123456::vpc:4727d842-f94f-4a2d-824a-9bc9b02c523b",
            "maxLength": 220,
            "minLength": 0,
            "pattern": ".",
            "type": "string"
          },
          "network_type": {
            "description": "Defines what type of network is connected via this connection.",
            "enum": [
              "classic",
              "directlink",
              "gre_tunnel",
              "unbound_gre_tunnel",
              "vpc",
              "power_virtual_server",
              "redundant_gre",
              "vpn_gateway"
            ],
            "example": "vpc",
            "type": "string"
          },
          "prefix_filters": {
            "description": "Array of prefix route filters for a transit gateway connection. Prefix filters can be specified for netowrk type `vpc`, `classic`, `power_virtual_server` and `directlink` connections. They are not allowed for type `gre_tunnel` connections. This is order dependent with those first in the array being applied first, and those at the end of the array being applied last, or just before applying the default.\nThis field is optional for network type `classic`, `vpc`, `directlink`, and `power_virtual_server` connections.\nThis field is required to be unspecified for network type `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway` and `redundant_gre` connections.",
            "items": {
              "$ref": "#/components/schemas/TransitGatewayConnectionPrefixFilter"
            },
            "maxItems": 10,
            "minItems": 0,
            "type": "array"
          },
          "prefix_filters_default": {
            "description": "Default setting of permit or deny which applies to any routes that don't match a specified filter.\nThis field is optional for network type `classic`, `vpc`, `directlink`, and `power_virtual_server` connections.\nThis field is required to be unspecified for network type `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway` and `redundant_gre` connections.",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "remote_bgp_asn": {
            "description": "Remote network BGP ASN.\nThe following ASN values are reserved and unavailable 0, 13884, 36351, 64512, 64513, 65100, 65200-65234, 65402-65433, 65500, 65516, 65519, 65521, 65531 and 4201065000-4201065999.\nIf `remote_bgp_asn` is omitted on gre_tunnel or unbound_gre_tunnel connection create requests IBM will assign an ASN.\n\nThis field is optional for network type `gre_tunnel` and `unbound_gre_tunnel` connections.\n\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`, `vpn_gateway` and `gre_tunnel` connections.",
            "example": 65010,
            "type": "integer"
          },
          "remote_gateway_ip": {
            "description": "Remote gateway IP address.\nThis field is required for network type `gre_tunnel` and `unbound_gre_tunnel` connections.\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`, `vpn_gateway` and `redundant_gre` connections.",
            "example": "10.242.63.12",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "remote_tunnel_ip": {
            "description": "Remote tunnel IP address.\nThe local_tunnel_ip and remote_tunnel_ip addresses must be in the same /30 network.\nNeither can be the network nor broadcast addresses.\n\nThis field is required for network type `gre_tunnel` and `unbound_gre_tunnel` connections.\n\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`,  `power_virtual_server`, `vpn_gateway` and `redundant_gre` connections.",
            "example": "192.168.129.1",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "tunnels": {
            "description": "Array of GRE tunnels for a transit gateway `redundant_gre` connections.  This field is required for `redundant_gre` connections.",
            "items": {
              "$ref": "#/components/schemas/TransitGatewayTunnelTemplate"
            },
            "maxItems": 10,
            "minItems": 2,
            "type": "array"
          },
          "zone": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ZoneIdentity"
              }
            ],
            "description": "Specify the connection's location.  The specified availability zone must reside in the gateway's region.\nUse the IBM Cloud global catalog to list zones within the desired region.\n\nThis field is required for network type `gre_tunnel`, and `unbound_gre_tunnel` connections.\n\nThis field is optional for network type `vpn_gateway` connections.\n\nThis field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server` and `redundant_gre` connections."
          }
        },
        "required": [
          "network_type"
        ],
        "title": "TransitGatewayConnectionTemplate"
      },
      "TransitGatewayReference": {
        "description": "Transit gateway reference",
        "properties": {
          "crn": {
            "description": "gateway CRN",
            "example": "crn:v1:bluemix:public:transit:us-south:a/123456::gateway:456f58c1-afe7-123a-0a0a-7f3d720f1a44",
            "maxLength": 220,
            "minLength": 0,
            "type": "string"
          },
          "id": {
            "description": "gateway ID",
            "example": "456f58c1-afe7-123a-0a0a-7f3d720f1a44",
            "maxLength": 36,
            "minLength": 0,
            "type": "string"
          },
          "name": {
            "description": "transit gateway name",
            "example": "my-transit-gw100",
            "maxLength": 64,
            "minLength": 0,
            "type": "string"
          }
        },
        "required": [
          "crn",
          "id",
          "name"
        ],
        "title": "TransitGatewayReference"
      },
      "TransitGatewayTunnel": {
        "description": "Details for a redundant GRE tunnel",
        "properties": {
          "base_network_type": {
            "description": "The type of network the redundant GRE tunnel is targeting.",
            "enum": [
              "classic",
              "vpc",
              "vpn"
            ],
            "example": "classic",
            "type": "string"
          },
          "created_at": {
            "description": "The date and time that this GRE tunnel was created",
            "format": "date-time",
            "type": "string"
          },
          "id": {
            "description": "The unique identifier for this redundant GRE tunnel",
            "example": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
            "maxLength": 100,
            "minLength": 0,
            "type": "string"
          },
          "local_bgp_asn": {
            "description": "Local network BGP ASN.  It is assigned by IBM when the tunnel is created. ",
            "type": "integer"
          },
          "local_gateway_ip": {
            "description": "Local gateway IP address.",
            "example": "10.242.63.12",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "local_tunnel_ip": {
            "description": "Local tunnel IP address.\nThe local_tunnel_ip and remote_tunnel_ip addresses must be in the same /30 network.\nNeither can be the network nor broadcast addresses.",
            "example": "192.168.100.20",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "mtu": {
            "description": "GRE tunnel MTU.",
            "example": 9000,
            "type": "integer"
          },
          "name": {
            "description": "The user-defined name for this tunnel.",
            "example": "gre1",
            "maxLength": 63,
            "minLength": 1,
            "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
            "type": "string"
          },
          "network_account_id": {
            "description": "The ID of the account for cross account Classic connections.  This field is required when the GRE tunnel is in a different account than the gateway and the base network is Classic.",
            "maxLength": 100,
            "minLength": 0,
            "pattern": ".",
            "type": "string"
          },
          "network_id": {
            "description": "The ID of the network VPC being connected via this connection.",
            "example": "crn:v1:bluemix:public:is:us-south:a/123456::vpc:4727d842-f94f-4a2d-824a-9bc9b02c523b",
            "type": "string"
          },
          "prefix_filters": {
            "description": "Array of prefix route filters for a transit gateway connection. This is order dependent with those first in the array being applied first, and those at the end of the array is applied last, or just before the default.",
            "items": {
              "$ref": "#/components/schemas/TransitGatewayConnectionPrefixFilterReference"
            },
            "maxItems": 10,
            "minItems": 0,
            "type": "array"
          },
          "prefix_filters_default": {
            "description": "Default setting of permit or deny which applies to any routes that don't match a specified filter.",
            "enum": [
              "permit",
              "deny"
            ],
            "example": "permit",
            "type": "string"
          },
          "remote_bgp_asn": {
            "description": "Remote network BGP ASN.\nThe following ASN values are reserved and unavailable 0, 13884, 36351, 64512, 64513, 65100, 65200-65234, 65402-65433, 65500, 65516, 65519, 65521, 65531 and 4201065000-4201065999\nIf `remote_bgp_asn` is omitted on create requests, IBM will assign an ASN.",
            "example": 65010,
            "type": "integer"
          },
          "remote_gateway_ip": {
            "description": "Remote gateway IP address.",
            "example": "10.242.33.22",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "remote_tunnel_ip": {
            "description": "Remote tunnel IP address.\nThe local_tunnel_ip and remote_tunnel_ip addresses must be in the same /30 network.\nNeither can be the network nor broadcast addresses.",
            "example": "192.168.129.1",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "status": {
            "description": "Tunnel's current configuration state.\nThe list of enumerated values for this property may expand in the future. Code and processes using this field must tolerate unexpected values.",
            "enum": [
              "attached",
              "failed",
              "pending",
              "deleting",
              "detaching",
              "detached",
              "suspending",
              "suspended"
            ],
            "type": "string"
          },
          "updated_at": {
            "description": "The date and time that this tunnel was last updated",
            "format": "date-time",
            "type": "string"
          },
          "zone": {
            "$ref": "#/components/schemas/ZoneReference"
          }
        },
        "required": [
          "base_network_type",
          "name",
          "id",
          "created_at",
          "updated_at",
          "status",
          "local_gateway_ip",
          "local_tunnel_ip",
          "local_bgp_asn",
          "remote_gateway_ip",
          "remote_tunnel_ip",
          "remote_bgp_asn",
          "zone"
        ],
        "title": "TransitGatewayTunnel"
      },
      "TransitGatewayTunnelCollection": {
        "description": "Collection of all tunnels for `redundant_gre` and `vpn_gateway` connections.",
        "properties": {
          "tunnels": {
            "description": "Collection of all tunnels for `redundant_gre` and `vpn_gateway` connections.",
            "items": {
              "$ref": "#/components/schemas/TransitGatewayTunnel"
            },
            "maxItems": 50,
            "minItems": 0,
            "type": "array"
          }
        },
        "required": [
          "tunnels"
        ],
        "title": "TransitGatewayTunnelCollection",
        "type": "object"
      },
      "TransitGatewayTunnelPatch": {
        "allOf": [
          {
            "description": "An update template for a Transit Gateway connection tunnel",
            "properties": {
              "name": {
                "description": "The user-defined name for this connection tunnel.",
                "example": "gre2",
                "maxLength": 63,
                "minLength": 1,
                "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
                "type": "string"
              }
            },
            "title": "TransitGatewayTunnelPatch"
          }
        ]
      },
      "TransitGatewayTunnelTemplate": {
        "description": "A create template with information for redundant GRE tunnel",
        "properties": {
          "local_gateway_ip": {
            "description": "Local gateway IP address.",
            "example": "10.242.63.12",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "local_tunnel_ip": {
            "description": "Local tunnel IP address.\nThe local_tunnel_ip and remote_tunnel_ip addresses must be in the same /30 network.\nNeither can be the network nor broadcast addresses.",
            "example": "192.168.100.20",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "name": {
            "description": "The user-defined name for this tunnel connection.",
            "example": "gre1",
            "maxLength": 63,
            "minLength": 1,
            "pattern": "^([a-zA-Z]|[a-zA-Z][-_a-zA-Z0-9]*[a-zA-Z0-9])$",
            "type": "string"
          },
          "remote_bgp_asn": {
            "description": "Remote network BGP ASN.\nThe following ASN values are reserved and unavailable 0, 13884, 36351, 64512, 64513, 65100, 65200-65234, 65402-65433, 65500, 65516, 65519, 65521, 65531 and 4201065000-4201065999\nIf `remote_bgp_asn` is omitted on create requests, IBM will assign an ASN.",
            "example": 65010,
            "type": "integer"
          },
          "remote_gateway_ip": {
            "description": "Remote gateway IP address.",
            "example": "10.242.33.22",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "remote_tunnel_ip": {
            "description": "Remote tunnel IP address.\nThe local_tunnel_ip and remote_tunnel_ip addresses must be in the same /30 network.\nNeither can be the network nor broadcast addresses.",
            "example": "192.168.129.1",
            "maxLength": 40,
            "minLength": 0,
            "pattern": "^(([0-9]){1,3}\\.){3}([0-9]{1,3})$",
            "type": "string"
          },
          "zone": {
            "allOf": [
              {
                "$ref": "#/components/schemas/ZoneIdentity"
              }
            ],
            "description": "Specify the connection's location.  The specified availability zone must reside in the gateway's region.\nUse the IBM Cloud global catalog to list zones within the desired region."
          }
        },
        "required": [
          "name",
          "local_gateway_ip",
          "local_tunnel_ip",
          "remote_gateway_ip",
          "remote_tunnel_ip",
          "zone"
        ],
        "title": "TransitGatewayTunnelTemplate"
      },
      "URL": {
        "description": "A full URL",
        "example": "https://transit.cloud.ibm.com/v1",
        "maxLength": 65536,
        "minLength": 0,
        "pattern": "^http(s)?:\\/\\/([^\\/?#]*)([^?#]*)(\\?([^#]*))?(#(.*))?$",
        "type": "string"
      },
      "ZoneIdentity": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/ZoneIdentityByName"
          }
        ],
        "title": "ZoneIdentity"
      },
      "ZoneIdentityByName": {
        "description": "Availability zone",
        "properties": {
          "name": {
            "description": "Availability zone name.",
            "example": "us-south-1",
            "maxLength": 100,
            "minLength": 0,
            "pattern": "^([a-z]|[a-z][-_a-z0-9]*[a-z0-9]+)$",
            "type": "string"
          }
        },
        "title": "ZoneIdentityByName"
      },
      "ZoneReference": {
        "description": "Availability zone reference",
        "properties": {
          "name": {
            "description": "Availability zone name",
            "example": "us-south-1",
            "type": "string"
          }
        },
        "required": [
          "name"
        ],
        "title": "ZoneReference"
      }
    }
  },
  "info": {
    "title": "Transit Gateway Apis",
    "version": "__VERSION__",
    "x-last-updated": "2026-01-20"
  },
  "openapi": "3.0.0",
  "paths": {
    "/connections": {
      "get": {
        "description": "List all transit gateway connections associated with this account.",
        "operationId": "list_connections",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "connections": [
                        {
                          "created_at": "2020-03-31T12:08:05Z",
                          "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                          "name": "example-connection",
                          "network_id": "crn:[...]",
                          "network_type": "vpc",
                          "prefix_filters_default": "permit",
                          "request_status": "approved",
                          "status": "attached",
                          "transit_gateway": [
                            {
                              "crn": "crn:[...]",
                              "id": "456f58c1-afe7-123a-0a0a-7f3d720f1a44",
                              "name": "my-transit-gw100"
                            }
                          ],
                          "updated_at": "2020-03-31T12:08:05Z"
                        }
                      ],
                      "first": {
                        "href": "https://transit.cloud.ibm.com/v1/connections?limit=50"
                      },
                      "limit": 50,
                      "total_count": 100
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitConnectionCollection"
                }
              }
            },
            "description": "The connections were retrieved successfully."
          }
        },
        "summary": "Retrieves all connections",
        "tags": [
          "Transit Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/connections?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "listConnectionsOptions := &transitgatewayapisv1.ListConnectionsOptions{\n",
                      "  Limit: core.Int64Ptr(int64(10)),\n",
                      "  NetworkID: core.StringPtr(\"testString\"),\n",
                      "  NetworkType: core.StringPtr(\"testString\"),\n",
                      "}\n",
                      "\n",
                      "pager, err := transitGatewayApisService.NewConnectionsPager(listConnectionsOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "\n",
                      "var allResults []transitgatewayapisv1.TransitConnection\n",
                      "for pager.HasNext() {\n",
                      "  nextPage, err := pager.GetNext()\n",
                      "  if err != nil {\n",
                      "    panic(err)\n",
                      "  }\n",
                      "  allResults = append(allResults, nextPage...)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(allResults, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ListConnectionsOptions listConnectionsOptions = new ListConnectionsOptions.Builder()\n",
                      "  .limit(Long.valueOf(\"10\"))\n",
                      "  .networkId(\"testString\")\n",
                      "  .networkType(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "ConnectionsPager pager = new ConnectionsPager(transitGatewayApisService, listConnectionsOptions);\n",
                      "List<TransitConnection> allResults = new ArrayList<>();\n",
                      "while (pager.hasNext()) {\n",
                      "  List<TransitConnection> nextPage = pager.getNext();\n",
                      "  allResults.addAll(nextPage);\n",
                      "}\n",
                      "\n",
                      "System.out.println(GsonSingleton.getGson().toJson(allResults));"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  limit: 10,\n",
                      "  networkId: 'testString',\n",
                      "  networkType: 'testString',\n",
                      "};\n",
                      "\n",
                      "const allResults = [];\n",
                      "try {\n",
                      "  const pager = new TransitGatewayApisV1.ConnectionsPager(transitGatewayApisService, params);\n",
                      "  while (pager.hasNext()) {\n",
                      "    const nextPage = await pager.getNext();\n",
                      "    expect(nextPage).not.toBeNull();\n",
                      "    allResults.push(...nextPage);\n",
                      "  }\n",
                      "  console.log(JSON.stringify(allResults, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "all_results = []\n",
                      "pager = ConnectionsPager(\n",
                      "  client=transit_gateway_apis_service,\n",
                      "  limit=10,\n",
                      "  network_id='testString',\n",
                      "  network_type='testString',\n",
                      ")\n",
                      "while pager.has_next():\n",
                      "  next_page = pager.get_next()\n",
                      "  assert next_page is not None\n",
                      "  all_results.extend(next_page)\n",
                      "\n",
                      "print(json.dumps(all_results, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/query_list_connections_limit"
        },
        {
          "$ref": "#/components/parameters/query_list_connections_start"
        },
        {
          "$ref": "#/components/parameters/query_connections_network_id_filter"
        },
        {
          "$ref": "#/components/parameters/query_connections_network_type_filter"
        },
        {
          "$ref": "#/components/parameters/version"
        }
      ]
    },
    "/locations": {
      "get": {
        "description": "List all locations that support Transit Gateways.",
        "operationId": "list_gateway_locations",
        "parameters": [
          {
            "$ref": "#/components/parameters/version"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "locations": [
                        {
                          "billing_location": "us",
                          "name": "us-south",
                          "type": "region"
                        },
                        {
                          "billing_location": "us",
                          "name": "us-east",
                          "type": "region"
                        },
                        {
                          "billing_location": "ap",
                          "name": "au-syd",
                          "type": "region"
                        },
                        {
                          "billing_location": "eu",
                          "name": "eu-de",
                          "type": "region"
                        },
                        {
                          "billing_location": "ap",
                          "name": "jp-jok",
                          "type": "region"
                        }
                      ]
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TSCollection"
                }
              }
            },
            "description": "Successfully retrieved the list of Transit Gateway locations."
          }
        },
        "summary": "Lists all locations that support Transit Gateways",
        "tags": [
          "Transit Locations"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/locations?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "listGatewayLocationsOptions := transitGatewayApisService.NewListGatewayLocationsOptions()\n",
                      "\n",
                      "tsCollection, response, err := transitGatewayApisService.ListGatewayLocations(listGatewayLocationsOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(tsCollection, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ListGatewayLocationsOptions listGatewayLocationsOptions = new ListGatewayLocationsOptions();\n",
                      "\n",
                      "Response<TSCollection> response = transitGatewayApisService.listGatewayLocations(listGatewayLocationsOptions).execute();\n",
                      "TSCollection tsCollection = response.getResult();\n",
                      "\n",
                      "System.out.println(tsCollection);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.listGatewayLocations({});\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.list_gateway_locations()\n",
                      "ts_collection = response.get_result()\n",
                      "\n",
                      "print(json.dumps(ts_collection, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/locations/{name}": {
      "get": {
        "description": "Get the details of a Transit Gateway Location.",
        "operationId": "get_gateway_location",
        "parameters": [
          {
            "$ref": "#/components/parameters/version"
          },
          {
            "$ref": "#/components/parameters/ts_location_name_unqualified"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "billing_location": "us",
                      "local_connection_locations": [
                        {
                          "display_name": "Dallas",
                          "name": "us-south",
                          "type": "region"
                        }
                      ],
                      "name": "us-south",
                      "type": "region",
                      "zones": [
                        {
                          "zone": {
                            "name": "us-south-1"
                          }
                        }
                      ]
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TSLocation"
                }
              }
            },
            "description": "Successfully retrieved the Transit Gateway Location."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Location not found",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The given location name could not be found."
          }
        },
        "summary": "Shows the details of a given Transit Gateway location",
        "tags": [
          "Transit Locations"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/locations/${name}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getGatewayLocationOptions := transitGatewayApisService.NewGetGatewayLocationOptions(\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "tsLocation, response, err := transitGatewayApisService.GetGatewayLocation(getGatewayLocationOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(tsLocation, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetGatewayLocationOptions getGatewayLocationOptions = new GetGatewayLocationOptions.Builder()\n",
                      "  .name(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TSLocation> response = transitGatewayApisService.getGatewayLocation(getGatewayLocationOptions).execute();\n",
                      "TSLocation tsLocation = response.getResult();\n",
                      "\n",
                      "System.out.println(tsLocation);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  name: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.getGatewayLocation(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.get_gateway_location(\n",
                      "  name='testString',\n",
                      ")\n",
                      "ts_location = response.get_result()\n",
                      "\n",
                      "print(json.dumps(ts_location, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways": {
      "get": {
        "description": "List all Transit Gateways in account the caller is authorized to view.",
        "operationId": "list_transit_gateways",
        "parameters": [
          {
            "$ref": "#/components/parameters/version"
          },
          {
            "$ref": "#/components/parameters/query_list_gateways_limit"
          },
          {
            "$ref": "#/components/parameters/query_list_gateways_start"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "first": {
                        "href": "https://transit.cloud.ibm.com/v1/transit_gateways?limit=50"
                      },
                      "limit": 50,
                      "transit_gateways": [
                        {
                          "connection_needs_attention": false,
                          "created_at": "2020-03-31T12:08:05Z",
                          "crn": "crn:[...]",
                          "global": true,
                          "gre_enhanced_route_propagation": false,
                          "id": "ef4dcb1a-fee4-41c7-9e11-9cd99e65c1f4",
                          "location": "us-south",
                          "name": "example-gateway",
                          "resource_group": {
                            "href": "https://resource-manager.bluemix.net/v1/resource_groups/56969d6043e9465c883cb9f7363e78e8",
                            "id": "56969d6043e9465c883cb9f7363e78e8"
                          },
                          "status": "available",
                          "updated_at": "2020-03-31T12:08:05Z"
                        }
                      ]
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayCollection"
                }
              }
            },
            "description": "The Transit Gateways were retrieved successfully."
          }
        },
        "summary": "Retrieves all Transit Gateways",
        "tags": [
          "Transit Gateways"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "listTransitGatewaysOptions := &transitgatewayapisv1.ListTransitGatewaysOptions{\n",
                      "  Limit: core.Int64Ptr(int64(10)),\n",
                      "}\n",
                      "\n",
                      "pager, err := transitGatewayApisService.NewTransitGatewaysPager(listTransitGatewaysOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "\n",
                      "var allResults []transitgatewayapisv1.TransitGateway\n",
                      "for pager.HasNext() {\n",
                      "  nextPage, err := pager.GetNext()\n",
                      "  if err != nil {\n",
                      "    panic(err)\n",
                      "  }\n",
                      "  allResults = append(allResults, nextPage...)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(allResults, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ListTransitGatewaysOptions listTransitGatewaysOptions = new ListTransitGatewaysOptions.Builder()\n",
                      "  .limit(Long.valueOf(\"10\"))\n",
                      "  .build();\n",
                      "\n",
                      "TransitGatewaysPager pager = new TransitGatewaysPager(transitGatewayApisService, listTransitGatewaysOptions);\n",
                      "List<TransitGateway> allResults = new ArrayList<>();\n",
                      "while (pager.hasNext()) {\n",
                      "  List<TransitGateway> nextPage = pager.getNext();\n",
                      "  allResults.addAll(nextPage);\n",
                      "}\n",
                      "\n",
                      "System.out.println(GsonSingleton.getGson().toJson(allResults));"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  limit: 10,\n",
                      "};\n",
                      "\n",
                      "const allResults = [];\n",
                      "try {\n",
                      "  const pager = new TransitGatewayApisV1.TransitGatewaysPager(transitGatewayApisService, params);\n",
                      "  while (pager.hasNext()) {\n",
                      "    const nextPage = await pager.getNext();\n",
                      "    expect(nextPage).not.toBeNull();\n",
                      "    allResults.push(...nextPage);\n",
                      "  }\n",
                      "  console.log(JSON.stringify(allResults, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "all_results = []\n",
                      "pager = TransitGatewaysPager(\n",
                      "  client=transit_gateway_apis_service,\n",
                      "  limit=10,\n",
                      ")\n",
                      "while pager.has_next():\n",
                      "  next_page = pager.get_next()\n",
                      "  assert next_page is not None\n",
                      "  all_results.extend(next_page)\n",
                      "\n",
                      "print(json.dumps(all_results, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "post": {
        "description": "Create a Transit Gateway based on the supplied input template.",
        "operationId": "create_transit_gateway",
        "parameters": [
          {
            "$ref": "#/components/parameters/version"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TGCreateTemplate"
              }
            }
          },
          "description": "The Transit Gateway template",
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "connection_needs_attention": false,
                      "created_at": "2020-03-31T12:08:05Z",
                      "crn": "crn:[...]",
                      "global": true,
                      "gre_enhanced_route_propagation": false,
                      "id": "ef4dcb1a-fee4-41c7-9e11-9cd99e65c1f4",
                      "location": "us-south",
                      "name": "example-gateway",
                      "resource_group": {
                        "href": "https://resource-manager.bluemix.net/v1/resource_groups/56969d6043e9465c883cb9f7363e78e8",
                        "id": "56969d6043e9465c883cb9f7363e78e8"
                      },
                      "status": "pending",
                      "updated_at": "2020-03-31T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGateway"
                }
              }
            },
            "description": "The Transit Gateway was created successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "validation_required_field_missing",
                          "message": "Mandatory field is missing.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
                          "target": {
                            "name": "name",
                            "type": "field"
                          }
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "An invalid Transit Gateway template was provided."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Location not found.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A Transit Gateway location could not be found for the identifier given in the template, a resource group could not be found for the given resource group identifier, or the default resource group could not be found for the account (if no resource group identifier was supplied)."
          },
          "409": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "invalid_state",
                          "message": "A gateway with the same name already exists",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The Transit Gateway could not be created as a transit gateway with the same name already exists."
          }
        },
        "summary": "Creates a Transit Gateway",
        "tags": [
          "Transit Gateways"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X POST --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"location\": \"us-south\", \"name\": \"my-transit-gateway-in-TransitGateway\" }' \\\n",
                      "  \"${base_url}/transit_gateways?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "createTransitGatewayOptions := transitGatewayApisService.NewCreateTransitGatewayOptions(\n",
                      "  \"us-south\",\n",
                      "  \"my-transit-gateway-in-TransitGateway\",\n",
                      ")\n",
                      "\n",
                      "transitGateway, response, err := transitGatewayApisService.CreateTransitGateway(createTransitGatewayOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGateway, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "CreateTransitGatewayOptions createTransitGatewayOptions = new CreateTransitGatewayOptions.Builder()\n",
                      "  .location(\"us-south\")\n",
                      "  .name(\"my-transit-gateway-in-TransitGateway\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGateway> response = transitGatewayApisService.createTransitGateway(createTransitGatewayOptions).execute();\n",
                      "TransitGateway transitGateway = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGateway);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  location: 'us-south',\n",
                      "  name: 'my-transit-gateway-in-TransitGateway',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.createTransitGateway(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.create_transit_gateway(\n",
                      "  location='us-south',\n",
                      "  name='my-transit-gateway-in-TransitGateway',\n",
                      ")\n",
                      "transit_gateway = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{id}": {
      "delete": {
        "description": "This request deletes a Transit Gateway. This operation cannot be reversed. For this request to succeed, the Transit Gateway must not contain connections.",
        "operationId": "delete_transit_gateway",
        "responses": {
          "204": {
            "description": "The Transit Gateway was deleted successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A Transit Gateway with the specified identifier could not be found."
          },
          "409": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "invalid_state",
                          "message": "The gateway could not be deleted as there are connections attached to it. Delete all connections attached to this gateway and retry.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The Transit Gateway could not be deleted as there are pre-existing connections attached."
          }
        },
        "summary": "Deletes specified Transit Gateway",
        "tags": [
          "Transit Gateways"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X DELETE --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  \"${base_url}/transit_gateways/${id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "deleteTransitGatewayOptions := transitGatewayApisService.NewDeleteTransitGatewayOptions(\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "response, err := transitGatewayApisService.DeleteTransitGateway(deleteTransitGatewayOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "if response.StatusCode != 204 {\n",
                      "  fmt.Printf(\"\\nUnexpected response status code received from DeleteTransitGateway(): %d\\n\", response.StatusCode)\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "DeleteTransitGatewayOptions deleteTransitGatewayOptions = new DeleteTransitGatewayOptions.Builder()\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<Void> response = transitGatewayApisService.deleteTransitGateway(deleteTransitGatewayOptions).execute();"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "try {\n",
                      "  await transitGatewayApisService.deleteTransitGateway(params);\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.delete_transit_gateway(\n",
                      "  id='testString',\n",
                      ")"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "get": {
        "description": "This request retrieves a single Transit Gateway specified by the identifier in the URL.",
        "operationId": "get_transit_gateway",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "connection_needs_attention": false,
                      "created_at": "2020-03-31T12:08:05Z",
                      "crn": "crn:[...]",
                      "global": true,
                      "gre_enhanced_route_propagation": false,
                      "id": "ef4dcb1a-fee4-41c7-9e11-9cd99e65c1f4",
                      "location": "us-south",
                      "name": "example-gateway",
                      "resource_group": {
                        "href": "https://resource-manager.bluemix.net/v1/resource_groups/56969d6043e9465c883cb9f7363e78e8",
                        "id": "56969d6043e9465c883cb9f7363e78e8"
                      },
                      "status": "available",
                      "updated_at": "2020-03-31T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGateway"
                }
              }
            },
            "description": "The Transit Gateway was retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A Transit Gateway with the specified identifier could not be found."
          }
        },
        "summary": "Retrieves specified Transit Gateway",
        "tags": [
          "Transit Gateways"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getTransitGatewayOptions := transitGatewayApisService.NewGetTransitGatewayOptions(\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "transitGateway, response, err := transitGatewayApisService.GetTransitGateway(getTransitGatewayOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGateway, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetTransitGatewayOptions getTransitGatewayOptions = new GetTransitGatewayOptions.Builder()\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGateway> response = transitGatewayApisService.getTransitGateway(getTransitGatewayOptions).execute();\n",
                      "TransitGateway transitGateway = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGateway);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.getTransitGateway(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.get_transit_gateway(\n",
                      "  id='testString',\n",
                      ")\n",
                      "transit_gateway = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id_unqualified"
        }
      ],
      "patch": {
        "description": "This request updates a Transit Gateway's name and/or global flag.",
        "operationId": "update_transit_gateway",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TGPatchTemplate"
              }
            }
          },
          "description": "Update a Transit Gateway",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "connection_needs_attention": false,
                      "created_at": "2020-03-31T12:08:05Z",
                      "crn": "crn:[...]",
                      "global": false,
                      "gre_enhanced_route_propagation": false,
                      "id": "ef4dcb1a-fee4-41c7-9e11-9cd99e65c1f4",
                      "location": "us-south",
                      "name": "example-gateway-new-name",
                      "resource_group": {
                        "href": "https://resource-manager.bluemix.net/v1/resource_groups/56969d6043e9465c883cb9f7363e78e8",
                        "id": "56969d6043e9465c883cb9f7363e78e8"
                      },
                      "status": "available",
                      "updated_at": "2020-03-31T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGateway"
                }
              }
            },
            "description": "The Transit Gateway was updated successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "bad_request",
                          "message": "The information given was invalid, malformed, or missing a required field.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
                          "target": {
                            "name": "request_body",
                            "type": "field"
                          }
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The supplied Transit Gateway patch was invalid."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A Transit Gateway with the specified identifier could not be found."
          },
          "409": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "invalid_state",
                          "message": "all non-local connections need to be deleted before the gateway's routing can be updated to local",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The Transit Gateway could not be updated as there are pre-existing cross-region connections attached."
          }
        },
        "summary": "Updates specified Transit Gateway",
        "tags": [
          "Transit Gateways"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X PATCH --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{}' \\\n",
                      "  \"${base_url}/transit_gateways/${id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "updateTransitGatewayOptions := transitGatewayApisService.NewUpdateTransitGatewayOptions(\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "transitGateway, response, err := transitGatewayApisService.UpdateTransitGateway(updateTransitGatewayOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGateway, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "UpdateTransitGatewayOptions updateTransitGatewayOptions = new UpdateTransitGatewayOptions.Builder()\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGateway> response = transitGatewayApisService.updateTransitGateway(updateTransitGatewayOptions).execute();\n",
                      "TransitGateway transitGateway = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGateway);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.updateTransitGateway(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.update_transit_gateway(\n",
                      "  id='testString',\n",
                      ")\n",
                      "transit_gateway = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/connections": {
      "get": {
        "description": "This request retrieves all connections in a Transit Gateway.",
        "operationId": "list_transit_gateway_connections",
        "parameters": [
          {
            "$ref": "#/components/parameters/query_list_tgw_connections_start"
          },
          {
            "$ref": "#/components/parameters/query_list_tgw_connections_limit"
          },
          {
            "$ref": "#/components/parameters/connection_name"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "connections": [
                        {
                          "created_at": "2020-03-31T12:08:05Z",
                          "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                          "name": "example-connection",
                          "network_id": "crn:[...]",
                          "network_type": "vpc",
                          "prefix_filters_default": "permit",
                          "request_status": "approved",
                          "status": "attached",
                          "updated_at": "2020-03-31T12:08:05Z"
                        }
                      ],
                      "first": {
                        "href": "https://transit.cloud.ibm.com/v1/tansit_gateways/86780a34-e651-4b47-9fb0-184a169cc9af/connections?limit=50"
                      },
                      "limit": 50,
                      "total_count": 100
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayConnectionCollection"
                }
              }
            },
            "description": "The connections were retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The specified Transit Gateway could not be found."
          }
        },
        "summary": "Retrieves all connections in a Transit Gateway",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "listTransitGatewayConnectionsOptions := &transitgatewayapisv1.ListTransitGatewayConnectionsOptions{\n",
                      "  TransitGatewayID: core.StringPtr(\"testString\"),\n",
                      "  Limit: core.Int64Ptr(int64(10)),\n",
                      "  Name: core.StringPtr(\"testString\"),\n",
                      "}\n",
                      "\n",
                      "pager, err := transitGatewayApisService.NewTransitGatewayConnectionsPager(listTransitGatewayConnectionsOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "\n",
                      "var allResults []transitgatewayapisv1.TransitGatewayConnectionCust\n",
                      "for pager.HasNext() {\n",
                      "  nextPage, err := pager.GetNext()\n",
                      "  if err != nil {\n",
                      "    panic(err)\n",
                      "  }\n",
                      "  allResults = append(allResults, nextPage...)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(allResults, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ListTransitGatewayConnectionsOptions listTransitGatewayConnectionsOptions = new ListTransitGatewayConnectionsOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .limit(Long.valueOf(\"10\"))\n",
                      "  .name(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "TransitGatewayConnectionsPager pager = new TransitGatewayConnectionsPager(transitGatewayApisService, listTransitGatewayConnectionsOptions);\n",
                      "List<TransitGatewayConnectionCust> allResults = new ArrayList<>();\n",
                      "while (pager.hasNext()) {\n",
                      "  List<TransitGatewayConnectionCust> nextPage = pager.getNext();\n",
                      "  allResults.addAll(nextPage);\n",
                      "}\n",
                      "\n",
                      "System.out.println(GsonSingleton.getGson().toJson(allResults));"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  limit: 10,\n",
                      "  name: 'testString',\n",
                      "};\n",
                      "\n",
                      "const allResults = [];\n",
                      "try {\n",
                      "  const pager = new TransitGatewayApisV1.TransitGatewayConnectionsPager(transitGatewayApisService, params);\n",
                      "  while (pager.hasNext()) {\n",
                      "    const nextPage = await pager.getNext();\n",
                      "    expect(nextPage).not.toBeNull();\n",
                      "    allResults.push(...nextPage);\n",
                      "  }\n",
                      "  console.log(JSON.stringify(allResults, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "all_results = []\n",
                      "pager = TransitGatewayConnectionsPager(\n",
                      "  client=transit_gateway_apis_service,\n",
                      "  transit_gateway_id='testString',\n",
                      "  limit=10,\n",
                      "  name='testString',\n",
                      ")\n",
                      "while pager.has_next():\n",
                      "  next_page = pager.get_next()\n",
                      "  assert next_page is not None\n",
                      "  all_results.extend(next_page)\n",
                      "\n",
                      "print(json.dumps(all_results, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        }
      ],
      "post": {
        "description": "Add a connection to Transit Gateway.",
        "operationId": "create_transit_gateway_connection",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TransitGatewayConnectionTemplate"
              }
            }
          },
          "description": "The connection template",
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "created_at": "2020-03-31T12:08:05Z",
                      "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                      "name": "example-connection",
                      "network_id": "crn:[...]",
                      "network_type": "vpc",
                      "prefix_filters_default": "permit",
                      "request_status": "approved",
                      "status": "pending",
                      "updated_at": "2020-03-31T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayConnectionCust"
                }
              }
            },
            "description": "The Transit Gateway connection was created successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "validation_required_field_missing",
                          "message": "Mandatory field is missing.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
                          "target": {
                            "name": "type",
                            "type": "field"
                          }
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "An invalid connection template was provided."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The specified Transit Gateway could not be found, the specified resource group could not be found, or the default resource group could not be found (if the resource group was not specified in the template)."
          },
          "409": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "invalid_state",
                          "message": "NetworkID already exists, Invalid request",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The network being connected must either be in a location that is considered \"local\" to the specified Transit Gateway, or the specified Transit Gateway needs to be global. The network being connected cannot already be connected to another Transit Gateway."
          }
        },
        "summary": "Adds a connection to a Transit Gateway",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X POST --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"network_type\": \"vpc\" }' \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "createTransitGatewayConnectionOptions := transitGatewayApisService.NewCreateTransitGatewayConnectionOptions(\n",
                      "  \"testString\",\n",
                      "  \"vpc\",\n",
                      ")\n",
                      "\n",
                      "transitGatewayConnectionCust, response, err := transitGatewayApisService.CreateTransitGatewayConnection(createTransitGatewayConnectionOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGatewayConnectionCust, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "CreateTransitGatewayConnectionOptions createTransitGatewayConnectionOptions = new CreateTransitGatewayConnectionOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .networkType(\"vpc\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGatewayConnectionCust> response = transitGatewayApisService.createTransitGatewayConnection(createTransitGatewayConnectionOptions).execute();\n",
                      "TransitGatewayConnectionCust transitGatewayConnectionCust = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGatewayConnectionCust);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  networkType: 'vpc',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.createTransitGatewayConnection(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.create_transit_gateway_connection(\n",
                      "  transit_gateway_id='testString',\n",
                      "  network_type='vpc',\n",
                      ")\n",
                      "transit_gateway_connection_cust = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway_connection_cust, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/connections/{id}": {
      "delete": {
        "description": "After the specified connection is detached, entities still within the Transit Gateway will no longer be able to communicate directly to it through the IBM Cloud private backbone.",
        "operationId": "delete_transit_gateway_connection",
        "responses": {
          "204": {
            "description": "The connection was removed successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Connection",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A Transit Gateway or Transit Gateway connection with the specified identifier could not be found."
          }
        },
        "summary": "Removes a connection from Transit Gateway",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X DELETE --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "deleteTransitGatewayConnectionOptions := transitGatewayApisService.NewDeleteTransitGatewayConnectionOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "response, err := transitGatewayApisService.DeleteTransitGatewayConnection(deleteTransitGatewayConnectionOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "if response.StatusCode != 204 {\n",
                      "  fmt.Printf(\"\\nUnexpected response status code received from DeleteTransitGatewayConnection(): %d\\n\", response.StatusCode)\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "DeleteTransitGatewayConnectionOptions deleteTransitGatewayConnectionOptions = new DeleteTransitGatewayConnectionOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<Void> response = transitGatewayApisService.deleteTransitGatewayConnection(deleteTransitGatewayConnectionOptions).execute();"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "try {\n",
                      "  await transitGatewayApisService.deleteTransitGatewayConnection(params);\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.delete_transit_gateway_connection(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      ")"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "get": {
        "description": "This request retrieves a connection from the Transit Gateway.",
        "operationId": "get_transit_gateway_connection",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "created_at": "2020-03-31T12:08:05Z",
                      "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                      "name": "example-connection",
                      "network_id": "crn:[...]",
                      "network_type": "vpc",
                      "prefix_filters_default": "permit",
                      "request_status": "approved",
                      "status": "attached",
                      "updated_at": "2020-03-31T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayConnectionCust"
                }
              }
            },
            "description": "The connection was retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Connection",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A connection or gateway with the specified identifier(s) could not be found."
          }
        },
        "summary": "Retrieves specified Transit Gateway connection",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getTransitGatewayConnectionOptions := transitGatewayApisService.NewGetTransitGatewayConnectionOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "transitGatewayConnectionCust, response, err := transitGatewayApisService.GetTransitGatewayConnection(getTransitGatewayConnectionOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGatewayConnectionCust, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetTransitGatewayConnectionOptions getTransitGatewayConnectionOptions = new GetTransitGatewayConnectionOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGatewayConnectionCust> response = transitGatewayApisService.getTransitGatewayConnection(getTransitGatewayConnectionOptions).execute();\n",
                      "TransitGatewayConnectionCust transitGatewayConnectionCust = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGatewayConnectionCust);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.getTransitGatewayConnection(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.get_transit_gateway_connection(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      ")\n",
                      "transit_gateway_connection_cust = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway_connection_cust, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        },
        {
          "$ref": "#/components/parameters/connection_id_unqualified"
        }
      ],
      "patch": {
        "description": "Update the name of a connection to a Transit Gateway.",
        "operationId": "update_transit_gateway_connection",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TransitGatewayConnectionPatch"
              }
            }
          },
          "description": "The connection template",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "created_at": "2020-03-31T12:08:05Z",
                      "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                      "name": "example-connection-new-name",
                      "network_id": "crn:[...]",
                      "network_type": "vpc",
                      "prefix_filters_default": "permit",
                      "request_status": "approved",
                      "status": "attached",
                      "updated_at": "2020-03-31T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayConnectionCust"
                }
              }
            },
            "description": "The connection was updated successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "bad_request",
                          "message": "The information given was invalid, malformed, or missing a required field.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
                          "target": {
                            "name": "request_body",
                            "type": "field"
                          }
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The connection update template was invalid."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Connection",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A connection or gateway with the specified identifier(s) could not be found."
          }
        },
        "summary": "Updates specified Transit Gateway connection",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X PATCH --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{}' \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "updateTransitGatewayConnectionOptions := transitGatewayApisService.NewUpdateTransitGatewayConnectionOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "transitGatewayConnectionCust, response, err := transitGatewayApisService.UpdateTransitGatewayConnection(updateTransitGatewayConnectionOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGatewayConnectionCust, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "UpdateTransitGatewayConnectionOptions updateTransitGatewayConnectionOptions = new UpdateTransitGatewayConnectionOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGatewayConnectionCust> response = transitGatewayApisService.updateTransitGatewayConnection(updateTransitGatewayConnectionOptions).execute();\n",
                      "TransitGatewayConnectionCust transitGatewayConnectionCust = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGatewayConnectionCust);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.updateTransitGatewayConnection(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.update_transit_gateway_connection(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      ")\n",
                      "transit_gateway_connection_cust = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway_connection_cust, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/connections/{id}/actions": {
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        },
        {
          "$ref": "#/components/parameters/connection_id_unqualified"
        }
      ],
      "post": {
        "description": "Allow a network owner to approve or reject a cross-account connection request.",
        "operationId": "create_transit_gateway_connection_actions",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TransitGatewayConnectionActions"
              }
            }
          },
          "description": "The action template",
          "required": true
        },
        "responses": {
          "204": {
            "description": "The connection approval/rejection was successful."
          },
          "403": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_authorized",
                          "message": "The request is not authorized.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The caller is not authorized to perform the requested action, or the action was called by the gateway owning account."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Connection",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A Transit Gateway or Transit Gateway connection with the specified identifier could not be found."
          },
          "409": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "invalid_state",
                          "message": "Attempted to approve a classic_access VPC connection.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "Attempted to approve a classic_access VPC connection."
          }
        },
        "summary": "Performs actions on a connection for a Transit Gateway",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X POST --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"action\": \"approve\" }' \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/actions?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "createTransitGatewayConnectionActionsOptions := transitGatewayApisService.NewCreateTransitGatewayConnectionActionsOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"approve\",\n",
                      ")\n",
                      "\n",
                      "response, err := transitGatewayApisService.CreateTransitGatewayConnectionActions(createTransitGatewayConnectionActionsOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "if response.StatusCode != 204 {\n",
                      "  fmt.Printf(\"\\nUnexpected response status code received from CreateTransitGatewayConnectionActions(): %d\\n\", response.StatusCode)\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "CreateTransitGatewayConnectionActionsOptions createTransitGatewayConnectionActionsOptions = new CreateTransitGatewayConnectionActionsOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .action(\"approve\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<Void> response = transitGatewayApisService.createTransitGatewayConnectionActions(createTransitGatewayConnectionActionsOptions).execute();"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  action: 'approve',\n",
                      "};\n",
                      "\n",
                      "try {\n",
                      "  await transitGatewayApisService.createTransitGatewayConnectionActions(params);\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.create_transit_gateway_connection_actions(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  action='approve',\n",
                      ")"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/connections/{id}/prefix_filters": {
      "get": {
        "description": "This request retrieves all prefix filters in a Transit Gateway connection.",
        "operationId": "list_transit_gateway_connection_prefix_filters",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "prefix_filters": [
                        {
                          "action": "permit",
                          "before": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
                          "created_at": "2021-11-15T12:08:05Z",
                          "ge": 0,
                          "id": "1a15dcab-7e30-45e1-b7c5-bc690eaa9865",
                          "le": 32,
                          "prefix": "192.168.100.0/24",
                          "updated_at": "2021-11-15T12:08:05Z"
                        }
                      ]
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/PrefixFilterCollection"
                }
              }
            },
            "description": "The prefix filters were retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "The specified Transit Gateway could not be found."
          }
        },
        "summary": "Retrieves all prefix filters in a Transit Gateway connection",
        "tags": [
          "Transit Gateway Connection Prefix Filters"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "listTransitGatewayConnectionPrefixFiltersOptions := transitGatewayApisService.NewListTransitGatewayConnectionPrefixFiltersOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "prefixFilterCollection, response, err := transitGatewayApisService.ListTransitGatewayConnectionPrefixFilters(listTransitGatewayConnectionPrefixFiltersOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(prefixFilterCollection, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/prefix_filters?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ListTransitGatewayConnectionPrefixFiltersOptions listTransitGatewayConnectionPrefixFiltersOptions = new ListTransitGatewayConnectionPrefixFiltersOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<PrefixFilterCollection> response = transitGatewayApisService.listTransitGatewayConnectionPrefixFilters(listTransitGatewayConnectionPrefixFiltersOptions).execute();\n",
                      "PrefixFilterCollection prefixFilterCollection = response.getResult();\n",
                      "\n",
                      "System.out.println(prefixFilterCollection);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.listTransitGatewayConnectionPrefixFilters(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.list_transit_gateway_connection_prefix_filters(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      ")\n",
                      "prefix_filter_collection = response.get_result()\n",
                      "\n",
                      "print(json.dumps(prefix_filter_collection, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        },
        {
          "$ref": "#/components/parameters/connection_id_unqualified"
        }
      ],
      "post": {
        "description": "Add a Prefix Filter to a Transit Gateway Connection.\nPrefix Filters can be added to all Connection types.",
        "operationId": "create_transit_gateway_connection_prefix_filter",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PrefixFilterTemplate"
              }
            }
          },
          "description": "The prefix filters template",
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "action": "permit",
                      "before": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
                      "created_at": "2021-11-15T12:08:05Z",
                      "ge": 0,
                      "id": "1a15dcab-7e30-45e1-b7c5-bc690eaa9865",
                      "le": 32,
                      "prefix": "192.168.100.0/24",
                      "updated_at": "2021-11-15T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/PrefixFilterCust"
                }
              }
            },
            "description": "The Transit Gateway connection prefix filters was created successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "bad_request",
                          "message": "The information given was invalid, malformed, or missing a required field.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
                          "target": {
                            "name": "request_body",
                            "type": "field"
                          }
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "An invalid prefix filter template was provided."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "The specified Transit Gateway could not be found."
          }
        },
        "summary": "Add a prefix filter to a Transit Gateway connection",
        "tags": [
          "Transit Gateway Connection Prefix Filters"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "createTransitGatewayConnectionPrefixFilterOptions := transitGatewayApisService.NewCreateTransitGatewayConnectionPrefixFilterOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"permit\",\n",
                      "  \"192.168.100.0/24\",\n",
                      ")\n",
                      "\n",
                      "prefixFilterCust, response, err := transitGatewayApisService.CreateTransitGatewayConnectionPrefixFilter(createTransitGatewayConnectionPrefixFilterOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(prefixFilterCust, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X POST --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"action\": \"permit\", \"prefix\": \"192.168.100.0/24\" }' \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/prefix_filters?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "CreateTransitGatewayConnectionPrefixFilterOptions createTransitGatewayConnectionPrefixFilterOptions = new CreateTransitGatewayConnectionPrefixFilterOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .action(\"permit\")\n",
                      "  .prefix(\"192.168.100.0/24\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<PrefixFilterCust> response = transitGatewayApisService.createTransitGatewayConnectionPrefixFilter(createTransitGatewayConnectionPrefixFilterOptions).execute();\n",
                      "PrefixFilterCust prefixFilterCust = response.getResult();\n",
                      "\n",
                      "System.out.println(prefixFilterCust);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  action: 'permit',\n",
                      "  prefix: '192.168.100.0/24',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.createTransitGatewayConnectionPrefixFilter(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.create_transit_gateway_connection_prefix_filter(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  action='permit',\n",
                      "  prefix='192.168.100.0/24',\n",
                      ")\n",
                      "prefix_filter_cust = response.get_result()\n",
                      "\n",
                      "print(json.dumps(prefix_filter_cust, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "put": {
        "description": "Replaces the prefix filters of the Transit Gateway connection.",
        "operationId": "replace_transit_gateway_connection_prefix_filter",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PrefixFilterPutCollection"
              }
            }
          },
          "description": "The prefix filter list template",
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "prefix_filters": [
                        {
                          "action": "permit",
                          "before": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
                          "created_at": "2021-11-15T12:08:05Z",
                          "ge": 0,
                          "id": "1a15dcab-7e30-45e1-b7c5-bc690eaa9865",
                          "le": 32,
                          "prefix": "192.168.100.0/24",
                          "updated_at": "2021-11-15T12:08:05Z"
                        }
                      ]
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/PrefixFilterCollection"
                }
              }
            },
            "description": "The Transit Gateway connection prefix filters was replaced successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "bad_request",
                          "message": "The information given was invalid, malformed, or missing a required field.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
                          "target": {
                            "name": "request_body",
                            "type": "field"
                          }
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "An invalid prefix filter template was provided."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "The specified Transit Gateway could not be found."
          }
        },
        "summary": "Replaces the prefix filters of the Transit Gateway connection",
        "tags": [
          "Transit Gateway Connection Prefix Filters"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "prefixFilterPutModel := &transitgatewayapisv1.PrefixFilterPut{\n",
                      "  Action: core.StringPtr(\"permit\"),\n",
                      "  Prefix: core.StringPtr(\"192.168.100.0/24\"),\n",
                      "}\n",
                      "\n",
                      "replaceTransitGatewayConnectionPrefixFilterOptions := transitGatewayApisService.NewReplaceTransitGatewayConnectionPrefixFilterOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  []transitgatewayapisv1.PrefixFilterPut{*prefixFilterPutModel},\n",
                      ")\n",
                      "\n",
                      "prefixFilterCollection, response, err := transitGatewayApisService.ReplaceTransitGatewayConnectionPrefixFilter(replaceTransitGatewayConnectionPrefixFilterOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(prefixFilterCollection, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X PUT --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"prefix_filters\": [] }' \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/prefix_filters?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "PrefixFilterPut prefixFilterPutModel = new PrefixFilterPut.Builder()\n",
                      "  .action(\"permit\")\n",
                      "  .prefix(\"192.168.100.0/24\")\n",
                      "  .build();\n",
                      "ReplaceTransitGatewayConnectionPrefixFilterOptions replaceTransitGatewayConnectionPrefixFilterOptions = new ReplaceTransitGatewayConnectionPrefixFilterOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .prefixFilters(java.util.Arrays.asList(prefixFilterPutModel))\n",
                      "  .build();\n",
                      "\n",
                      "Response<PrefixFilterCollection> response = transitGatewayApisService.replaceTransitGatewayConnectionPrefixFilter(replaceTransitGatewayConnectionPrefixFilterOptions).execute();\n",
                      "PrefixFilterCollection prefixFilterCollection = response.getResult();\n",
                      "\n",
                      "System.out.println(prefixFilterCollection);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "// Request models needed by this operation.\n",
                      "\n",
                      "// PrefixFilterPut\n",
                      "const prefixFilterPutModel = {\n",
                      "  action: 'permit',\n",
                      "  prefix: '192.168.100.0/24',\n",
                      "};\n",
                      "\n",
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  prefixFilters: [prefixFilterPutModel],\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.replaceTransitGatewayConnectionPrefixFilter(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "prefix_filter_put_model = {\n",
                      "  'action': 'permit',\n",
                      "  'prefix': '192.168.100.0/24',\n",
                      "}\n",
                      "\n",
                      "response = transit_gateway_apis_service.replace_transit_gateway_connection_prefix_filter(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  prefix_filters=[prefix_filter_put_model],\n",
                      ")\n",
                      "prefix_filter_collection = response.get_result()\n",
                      "\n",
                      "print(json.dumps(prefix_filter_collection, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/connections/{id}/prefix_filters/{filter_id}": {
      "delete": {
        "description": "Delete a prefix filter.",
        "operationId": "delete_transit_gateway_connection_prefix_filter",
        "responses": {
          "204": {
            "description": "Prefix filter deleted successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Prefix Filter",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "A Prefix Filter with the specified identifier could not be found."
          }
        },
        "summary": "Remove prefix filter from Transit Gateway connection",
        "tags": [
          "Transit Gateway Connection Prefix Filters"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "deleteTransitGatewayConnectionPrefixFilterOptions := transitGatewayApisService.NewDeleteTransitGatewayConnectionPrefixFilterOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "response, err := transitGatewayApisService.DeleteTransitGatewayConnectionPrefixFilter(deleteTransitGatewayConnectionPrefixFilterOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "if response.StatusCode != 204 {\n",
                      "  fmt.Printf(\"\\nUnexpected response status code received from DeleteTransitGatewayConnectionPrefixFilter(): %d\\n\", response.StatusCode)\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X DELETE --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/prefix_filters/${filter_id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "DeleteTransitGatewayConnectionPrefixFilterOptions deleteTransitGatewayConnectionPrefixFilterOptions = new DeleteTransitGatewayConnectionPrefixFilterOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .filterId(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<Void> response = transitGatewayApisService.deleteTransitGatewayConnectionPrefixFilter(deleteTransitGatewayConnectionPrefixFilterOptions).execute();"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  filterId: 'testString',\n",
                      "};\n",
                      "\n",
                      "try {\n",
                      "  await transitGatewayApisService.deleteTransitGatewayConnectionPrefixFilter(params);\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.delete_transit_gateway_connection_prefix_filter(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  filter_id='testString',\n",
                      ")"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "get": {
        "description": "This request retrieves a prefix filter from the Transit Gateway connection.",
        "operationId": "get_transit_gateway_connection_prefix_filter",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "action": "permit",
                      "before": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
                      "created_at": "2021-11-15T12:08:05Z",
                      "ge": 0,
                      "id": "1a15dcab-7e30-45e1-b7c5-bc690eaa9865",
                      "le": 32,
                      "prefix": "192.168.100.0/24",
                      "updated_at": "2021-11-15T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/PrefixFilterCust"
                }
              }
            },
            "description": "The prefix filter was retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Prefix Filter",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "A prefix filter with the specified identifier could not be found."
          }
        },
        "summary": "Retrieves specified Transit Gateway connection prefix filter",
        "tags": [
          "Transit Gateway Connection Prefix Filters"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getTransitGatewayConnectionPrefixFilterOptions := transitGatewayApisService.NewGetTransitGatewayConnectionPrefixFilterOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "prefixFilterCust, response, err := transitGatewayApisService.GetTransitGatewayConnectionPrefixFilter(getTransitGatewayConnectionPrefixFilterOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(prefixFilterCust, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/prefix_filters/${filter_id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetTransitGatewayConnectionPrefixFilterOptions getTransitGatewayConnectionPrefixFilterOptions = new GetTransitGatewayConnectionPrefixFilterOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .filterId(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<PrefixFilterCust> response = transitGatewayApisService.getTransitGatewayConnectionPrefixFilter(getTransitGatewayConnectionPrefixFilterOptions).execute();\n",
                      "PrefixFilterCust prefixFilterCust = response.getResult();\n",
                      "\n",
                      "System.out.println(prefixFilterCust);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  filterId: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.getTransitGatewayConnectionPrefixFilter(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.get_transit_gateway_connection_prefix_filter(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  filter_id='testString',\n",
                      ")\n",
                      "prefix_filter_cust = response.get_result()\n",
                      "\n",
                      "print(json.dumps(prefix_filter_cust, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        },
        {
          "$ref": "#/components/parameters/connection_id_unqualified"
        },
        {
          "$ref": "#/components/parameters/prefix_filter_id"
        }
      ],
      "patch": {
        "description": "Update prefix filter for a Transit Gateway Connection.",
        "operationId": "update_transit_gateway_connection_prefix_filter",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PrefixFilterPatch"
              }
            }
          },
          "description": "The prefix filter patch template",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "action": "deny",
                      "before": "1a15dcab-7e40-45e1-b7c5-bc690eaa9782",
                      "created_at": "2021-11-15T12:08:05Z",
                      "ge": 0,
                      "id": "1a15dcab-7e30-45e1-b7c5-bc690eaa9865",
                      "le": 32,
                      "prefix": "192.168.100.0/24",
                      "updated_at": "2021-11-16T12:08:05Z"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/PrefixFilterCust"
                }
              }
            },
            "description": "The prefix was updated successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "bad_request",
                          "message": "The information given was invalid, malformed, or missing a required field.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
                          "target": {
                            "name": "request_body",
                            "type": "field"
                          }
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The prefix filter update template was invalid."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Prefix Filter",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "A prefix filter with the specified identifier could not be found."
          }
        },
        "summary": "Updates specified Transit Gateway connection prefix filter",
        "tags": [
          "Transit Gateway Connection Prefix Filters"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "updateTransitGatewayConnectionPrefixFilterOptions := transitGatewayApisService.NewUpdateTransitGatewayConnectionPrefixFilterOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "prefixFilterCust, response, err := transitGatewayApisService.UpdateTransitGatewayConnectionPrefixFilter(updateTransitGatewayConnectionPrefixFilterOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(prefixFilterCust, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X PATCH --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{}' \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/prefix_filters/${filter_id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "UpdateTransitGatewayConnectionPrefixFilterOptions updateTransitGatewayConnectionPrefixFilterOptions = new UpdateTransitGatewayConnectionPrefixFilterOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .filterId(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<PrefixFilterCust> response = transitGatewayApisService.updateTransitGatewayConnectionPrefixFilter(updateTransitGatewayConnectionPrefixFilterOptions).execute();\n",
                      "PrefixFilterCust prefixFilterCust = response.getResult();\n",
                      "\n",
                      "System.out.println(prefixFilterCust);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  filterId: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.updateTransitGatewayConnectionPrefixFilter(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.update_transit_gateway_connection_prefix_filter(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  filter_id='testString',\n",
                      ")\n",
                      "prefix_filter_cust = response.get_result()\n",
                      "\n",
                      "print(json.dumps(prefix_filter_cust, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/connections/{id}/tunnels": {
      "get": {
        "description": "This request retrieves a list of all the tunnels for connection.",
        "operationId": "list_transit_gateway_gre_tunnel",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "tunnels": [
                        {
                          "base_network_type": "vpc",
                          "created_at": "2023-11-13T17:12:36.625Z",
                          "id": "0a06fb9b-820f-4c44-8a31-77f1f0806d32",
                          "local_bgp_asn": 45876,
                          "local_gateway_ip": "192.168.100.1",
                          "local_tunnel_ip": "192.168.129.2",
                          "mtu": 9000,
                          "name": "gre1",
                          "network_id": "crn:v1:bluemix:public:is:us-south:a/123456::vpc:4727d842-f94f-4a2d-824a-9bc9b02c523b",
                          "remote_bgp_asn": 65010,
                          "remote_gateway_ip": "10.242.63.12",
                          "remote_tunnel_ip": "192.168.129.1",
                          "status": "attached",
                          "updated_at": "2023-11-13T17:11:55.625Z",
                          "zone": {
                            "name": "us-south-1"
                          }
                        },
                        {
                          "base_network_type": "vpc",
                          "created_at": "2023-11-13T16:12:36.625Z",
                          "id": "b0b6fb9b-820f-4c44-8a31-aaff1f08106d32",
                          "local_bgp_asn": 45992,
                          "local_gateway_ip": "192.168.210.1",
                          "local_tunnel_ip": "192.168.229.2",
                          "mtu": 9000,
                          "name": "gre1",
                          "network_id": "crn:v1:bluemix:public:is:us-south:a/123456::vpc:4727d842-f94f-4a2d-824a-9bc9b02c523b",
                          "remote_bgp_asn": 63220,
                          "remote_gateway_ip": "10.100.163.12",
                          "remote_tunnel_ip": "192.168.229.1",
                          "status": "pending",
                          "updated_at": "2023-11-13T16:11:55.625Z",
                          "zone": {
                            "name": "us-south-2"
                          }
                        }
                      ]
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayTunnelCollection"
                }
              }
            },
            "description": "The list of tunnels was retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find redundant gre tunnels",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A connection or gateway with the specified identifier(s) could not be found."
          }
        },
        "summary": "Retrieves specified Transit Gateway redundant gre connection tunnels",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/tunnels?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "listTransitGatewayGreTunnelOptions := transitGatewayApisService.NewListTransitGatewayGreTunnelOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "transitGatewayTunnelCollection, response, err := transitGatewayApisService.ListTransitGatewayGreTunnel(listTransitGatewayGreTunnelOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGatewayTunnelCollection, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ListTransitGatewayGreTunnelOptions listTransitGatewayGreTunnelOptions = new ListTransitGatewayGreTunnelOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGatewayTunnelCollection> response = transitGatewayApisService.listTransitGatewayGreTunnel(listTransitGatewayGreTunnelOptions).execute();\n",
                      "TransitGatewayTunnelCollection transitGatewayTunnelCollection = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGatewayTunnelCollection);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.listTransitGatewayGreTunnel(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.list_transit_gateway_gre_tunnel(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      ")\n",
                      "transit_gateway_tunnel_collection = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway_tunnel_collection, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        },
        {
          "$ref": "#/components/parameters/connection_id_unqualified"
        }
      ],
      "post": {
        "description": "Add a tunnel to an existing Redundant GRE connection.",
        "operationId": "create_transit_gateway_gre_tunnel",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TransitGatewayTunnelTemplate"
              }
            }
          },
          "description": "The action template",
          "required": true
        },
        "responses": {
          "201": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "base_network_type": "classic",
                      "created_at": "2023-11-13T17:12:36.625Z",
                      "id": "0a06fb9b-820f-4c44-8a31-77f1f0806d32",
                      "local_bgp_asn": 45876,
                      "local_gateway_ip": "192.168.100.1",
                      "local_tunnel_ip": "192.168.129.2",
                      "mtu": 9000,
                      "name": "gre1",
                      "network_account_id": "28e4d90ac7504be694471ee66e70d0d5",
                      "remote_bgp_asn": 65010,
                      "remote_gateway_ip": "10.242.63.12",
                      "remote_tunnel_ip": "192.168.129.1",
                      "status": "pending",
                      "updated_at": "2023-11-13T17:11:55.625Z",
                      "zone": {
                        "name": "us-south-1"
                      }
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayTunnel"
                }
              }
            },
            "description": "Successfully created the new Redundant GRE tunnel connection."
          },
          "403": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_authorized",
                          "message": "The request is not authorized.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The caller is not authorized to perform the requested action, or the action was called by the gateway owning account."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Connection",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A Transit Gateway or Transit Gateway connection with the specified identifier could not be found."
          }
        },
        "summary": "Creates a Transit Gateway redundant GRE tunnel",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X POST --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/json\" \\\n",
                      "  --data '{ \"local_gateway_ip\": \"10.242.63.12\", \"local_tunnel_ip\": \"192.168.100.20\", \"name\": \"gre1\", \"remote_gateway_ip\": \"10.242.33.22\", \"remote_tunnel_ip\": \"192.168.129.1\", \"zone\": {} }' \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/tunnels?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "zoneIdentityModel := &transitgatewayapisv1.ZoneIdentityByName{\n",
                      "}\n",
                      "\n",
                      "createTransitGatewayGreTunnelOptions := transitGatewayApisService.NewCreateTransitGatewayGreTunnelOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"10.242.63.12\",\n",
                      "  \"192.168.100.20\",\n",
                      "  \"gre1\",\n",
                      "  \"10.242.33.22\",\n",
                      "  \"192.168.129.1\",\n",
                      "  zoneIdentityModel,\n",
                      ")\n",
                      "\n",
                      "transitGatewayTunnel, response, err := transitGatewayApisService.CreateTransitGatewayGreTunnel(createTransitGatewayGreTunnelOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGatewayTunnel, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ZoneIdentityByName zoneIdentityModel = new ZoneIdentityByName.Builder()\n",
                      "  .build();\n",
                      "CreateTransitGatewayGreTunnelOptions createTransitGatewayGreTunnelOptions = new CreateTransitGatewayGreTunnelOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .localGatewayIp(\"10.242.63.12\")\n",
                      "  .localTunnelIp(\"192.168.100.20\")\n",
                      "  .name(\"gre1\")\n",
                      "  .remoteGatewayIp(\"10.242.33.22\")\n",
                      "  .remoteTunnelIp(\"192.168.129.1\")\n",
                      "  .zone(zoneIdentityModel)\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGatewayTunnel> response = transitGatewayApisService.createTransitGatewayGreTunnel(createTransitGatewayGreTunnelOptions).execute();\n",
                      "TransitGatewayTunnel transitGatewayTunnel = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGatewayTunnel);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "// Request models needed by this operation.\n",
                      "\n",
                      "// ZoneIdentityByName\n",
                      "const zoneIdentityModel = {\n",
                      "};\n",
                      "\n",
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  localGatewayIp: '10.242.63.12',\n",
                      "  localTunnelIp: '192.168.100.20',\n",
                      "  name: 'gre1',\n",
                      "  remoteGatewayIp: '10.242.33.22',\n",
                      "  remoteTunnelIp: '192.168.129.1',\n",
                      "  zone: zoneIdentityModel,\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.createTransitGatewayGreTunnel(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "zone_identity_model = {\n",
                      "}\n",
                      "\n",
                      "response = transit_gateway_apis_service.create_transit_gateway_gre_tunnel(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  local_gateway_ip='10.242.63.12',\n",
                      "  local_tunnel_ip='192.168.100.20',\n",
                      "  name='gre1',\n",
                      "  remote_gateway_ip='10.242.33.22',\n",
                      "  remote_tunnel_ip='192.168.129.1',\n",
                      "  zone=zone_identity_model,\n",
                      ")\n",
                      "transit_gateway_tunnel = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway_tunnel, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/connections/{id}/tunnels/{gre_tunnel_id}": {
      "delete": {
        "description": "Remove a tunnel from a redundant GRE connection",
        "operationId": "delete_transit_gateway_connection_tunnels",
        "responses": {
          "204": {
            "description": "The connection tunnel was removed successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Connection Tunnel",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A Transit Gateway or Transit Gateway connection with the specified identifier could not be found."
          }
        },
        "summary": "Deletes a specified Transit Gateway redundant GRE tunnel",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X DELETE --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/tunnels/${gre_tunnel_id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "deleteTransitGatewayConnectionTunnelsOptions := transitGatewayApisService.NewDeleteTransitGatewayConnectionTunnelsOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "response, err := transitGatewayApisService.DeleteTransitGatewayConnectionTunnels(deleteTransitGatewayConnectionTunnelsOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "if response.StatusCode != 204 {\n",
                      "  fmt.Printf(\"\\nUnexpected response status code received from DeleteTransitGatewayConnectionTunnels(): %d\\n\", response.StatusCode)\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "DeleteTransitGatewayConnectionTunnelsOptions deleteTransitGatewayConnectionTunnelsOptions = new DeleteTransitGatewayConnectionTunnelsOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .greTunnelId(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<Void> response = transitGatewayApisService.deleteTransitGatewayConnectionTunnels(deleteTransitGatewayConnectionTunnelsOptions).execute();"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  greTunnelId: 'testString',\n",
                      "};\n",
                      "\n",
                      "try {\n",
                      "  await transitGatewayApisService.deleteTransitGatewayConnectionTunnels(params);\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.delete_transit_gateway_connection_tunnels(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  gre_tunnel_id='testString',\n",
                      ")"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "get": {
        "description": "This request retrieves a connection tunnel from the Transit Gateway connection.",
        "operationId": "get_transit_gateway_connection_tunnels",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "base_network_type": "classic",
                      "created_at": "2023-11-13T17:12:36.625Z",
                      "id": "0a06fb9b-820f-4c44-8a31-77f1f0806d32",
                      "local_bgp_asn": 45876,
                      "local_gateway_ip": "192.168.100.1",
                      "local_tunnel_ip": "192.168.129.2",
                      "mtu": 9000,
                      "name": "gre1",
                      "network_account_id": "28e4d90ac7504be694471ee66e70d0d5",
                      "remote_bgp_asn": 65010,
                      "remote_gateway_ip": "10.242.63.12",
                      "remote_tunnel_ip": "192.168.129.1",
                      "status": "attached",
                      "updated_at": "2023-11-13T17:11:55.625Z",
                      "zone": {
                        "name": "us-south-1"
                      }
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayTunnel"
                }
              }
            },
            "description": "The connection tunnel was retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Connection Tunnel",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A connection, gateway or tunnel with the specified identifier(s) could not be found."
          }
        },
        "summary": "Retrieves specified Transit Gateway connection tunnel",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/tunnels/${gre_tunnel_id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getTransitGatewayConnectionTunnelsOptions := transitGatewayApisService.NewGetTransitGatewayConnectionTunnelsOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "transitGatewayTunnel, response, err := transitGatewayApisService.GetTransitGatewayConnectionTunnels(getTransitGatewayConnectionTunnelsOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGatewayTunnel, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetTransitGatewayConnectionTunnelsOptions getTransitGatewayConnectionTunnelsOptions = new GetTransitGatewayConnectionTunnelsOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .greTunnelId(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGatewayTunnel> response = transitGatewayApisService.getTransitGatewayConnectionTunnels(getTransitGatewayConnectionTunnelsOptions).execute();\n",
                      "TransitGatewayTunnel transitGatewayTunnel = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGatewayTunnel);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  greTunnelId: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.getTransitGatewayConnectionTunnels(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.get_transit_gateway_connection_tunnels(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  gre_tunnel_id='testString',\n",
                      ")\n",
                      "transit_gateway_tunnel = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway_tunnel, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        },
        {
          "$ref": "#/components/parameters/connection_id_unqualified"
        },
        {
          "$ref": "#/components/parameters/tunnel_id_unqualified"
        }
      ],
      "patch": {
        "description": "Update the name of a connection tunnel.",
        "operationId": "update_transit_gateway_connection_tunnels",
        "requestBody": {
          "content": {
            "application/merge-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/TransitGatewayTunnelPatch"
              }
            }
          },
          "description": "The update connection tunnel template",
          "required": true
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "base_network_type": "classic",
                      "created_at": "2023-11-13T17:12:36.625Z",
                      "id": "0a06fb9b-820f-4c44-8a31-77f1f0806d32",
                      "local_bgp_asn": 45876,
                      "local_gateway_ip": "192.168.100.1",
                      "local_tunnel_ip": "192.168.129.2",
                      "mtu": 9000,
                      "name": "gre2",
                      "network_account_id": "28e4d90ac7504be694471ee66e70d0d5",
                      "redundant_gre_id": "83792525-471c-47d0-9e84-fdb830fd",
                      "remote_bgp_asn": 65010,
                      "remote_gateway_ip": "10.242.63.12",
                      "remote_tunnel_ip": "192.168.129.1",
                      "status": "attached",
                      "updated_at": "2023-12-10T07:52:22.234Z",
                      "zone": {
                        "name": "us-south-1"
                      }
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/TransitGatewayTunnel"
                }
              }
            },
            "description": "The connection tunnel was updated successfully."
          },
          "400": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "bad_request",
                          "message": "The information given was invalid, malformed, or missing a required field.",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling",
                          "target": {
                            "name": "request_body",
                            "type": "field"
                          }
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "The connection tunnel update template was invalid."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Connection Tunnel",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainer"
                }
              }
            },
            "description": "A connection, gateway or tunnel with the specified identifier(s) could not be found."
          }
        },
        "summary": "Updates specified Transit Gateway redundant GRE tunnel",
        "tags": [
          "Transit Gateways Network Connections"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X PATCH --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  --header \"Content-Type: application/merge-patch+json\" \\\n",
                      "  --data '' \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/connections/${id}/tunnels/${gre_tunnel_id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "transitGatewayTunnelPatchModel := &transitgatewayapisv1.TransitGatewayTunnelPatch{\n",
                      "}\n",
                      "transitGatewayTunnelPatchModelAsPatch, asPatchErr := transitGatewayTunnelPatchModel.AsPatch()\n",
                      "Expect(asPatchErr).To(BeNil())\n",
                      "\n",
                      "updateTransitGatewayConnectionTunnelsOptions := transitGatewayApisService.NewUpdateTransitGatewayConnectionTunnelsOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      "  transitGatewayTunnelPatchModelAsPatch,\n",
                      ")\n",
                      "\n",
                      "transitGatewayTunnel, response, err := transitGatewayApisService.UpdateTransitGatewayConnectionTunnels(updateTransitGatewayConnectionTunnelsOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(transitGatewayTunnel, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "TransitGatewayTunnelPatch transitGatewayTunnelPatchModel = new TransitGatewayTunnelPatch.Builder()\n",
                      "  .build();\n",
                      "Map<String, Object> transitGatewayTunnelPatchModelAsPatch = transitGatewayTunnelPatchModel.asPatch();\n",
                      "UpdateTransitGatewayConnectionTunnelsOptions updateTransitGatewayConnectionTunnelsOptions = new UpdateTransitGatewayConnectionTunnelsOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .greTunnelId(\"testString\")\n",
                      "  .transitGatewayTunnelPatch(transitGatewayTunnelPatchModelAsPatch)\n",
                      "  .build();\n",
                      "\n",
                      "Response<TransitGatewayTunnel> response = transitGatewayApisService.updateTransitGatewayConnectionTunnels(updateTransitGatewayConnectionTunnelsOptions).execute();\n",
                      "TransitGatewayTunnel transitGatewayTunnel = response.getResult();\n",
                      "\n",
                      "System.out.println(transitGatewayTunnel);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "  greTunnelId: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.updateTransitGatewayConnectionTunnels(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "transit_gateway_tunnel_patch_model = {\n",
                      "}\n",
                      "\n",
                      "response = transit_gateway_apis_service.update_transit_gateway_connection_tunnels(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      "  gre_tunnel_id='testString',\n",
                      "  transit_gateway_tunnel_patch=transit_gateway_tunnel_patch_model,\n",
                      ")\n",
                      "transit_gateway_tunnel = response.get_result()\n",
                      "\n",
                      "print(json.dumps(transit_gateway_tunnel, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/route_reports": {
      "get": {
        "description": "Retrieve all route reports for the specified Transit Gateway.  There will normally be at most one\ncompleted report and one pending report.  Additionally, completed route reports are written to IBM Cloud Activity Tracker.",
        "operationId": "list_transit_gateway_route_reports",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "route_reports": [
                        {
                          "connections": [
                            {
                              "bgps": [
                                {
                                  "as_path": "(65201 4201065544) 4203065544",
                                  "is_used": true,
                                  "local_preference": "190",
                                  "prefix": "172.17.0.0/16"
                                }
                              ],
                              "id": "3c265a62-91da-4261-a950-950b6af0eb58",
                              "name": "transit-connection-vpc1",
                              "routes": [
                                {
                                  "prefix": "172.17.0.0/16"
                                }
                              ],
                              "type": "vpc"
                            },
                            {
                              "bgps": [
                                {
                                  "as_path": "(65201 4201065544) 4203065545",
                                  "is_used": true,
                                  "local_preference": "190",
                                  "prefix": "172.17.0.0/16"
                                }
                              ],
                              "id": "d2d985d8-1d8e-4e8b-96cd-cee2290ecaff",
                              "name": "transit-connection-vpc2",
                              "routes": [
                                {
                                  "prefix": "172.17.0.0/16"
                                }
                              ],
                              "type": "vpc"
                            }
                          ],
                          "created_at": "2020-03-31T12:08:05Z",
                          "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                          "overlapping_routes": [
                            {
                              "routes": [
                                {
                                  "connection_id": "3c265a62-91da-4261-a950-950b6af0eb58",
                                  "prefix": "172.17.0.0/16"
                                },
                                {
                                  "connection_id": "d2d985d8-1d8e-4e8b-96cd-cee2290ecaff",
                                  "prefix": "172.17.0.0/16"
                                }
                              ]
                            }
                          ],
                          "status": "complete"
                        }
                      ]
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/RouteReportCollection"
                }
              }
            },
            "description": "Reports retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "The specified Transit Gateway could not be found."
          }
        },
        "summary": "Lists route reports",
        "tags": [
          "Transit Gateway Route Reports"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "listTransitGatewayRouteReportsOptions := transitGatewayApisService.NewListTransitGatewayRouteReportsOptions(\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "routeReportCollection, response, err := transitGatewayApisService.ListTransitGatewayRouteReports(listTransitGatewayRouteReportsOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(routeReportCollection, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/route_reports?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "ListTransitGatewayRouteReportsOptions listTransitGatewayRouteReportsOptions = new ListTransitGatewayRouteReportsOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<RouteReportCollection> response = transitGatewayApisService.listTransitGatewayRouteReports(listTransitGatewayRouteReportsOptions).execute();\n",
                      "RouteReportCollection routeReportCollection = response.getResult();\n",
                      "\n",
                      "System.out.println(routeReportCollection);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.listTransitGatewayRouteReports(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.list_transit_gateway_route_reports(\n",
                      "  transit_gateway_id='testString',\n",
                      ")\n",
                      "route_report_collection = response.get_result()\n",
                      "\n",
                      "print(json.dumps(route_report_collection, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        }
      ],
      "post": {
        "description": "Request route report generation.  While report generation is in progress, additional requests to generate a report are ignored and return the current pending report.",
        "operationId": "create_transit_gateway_route_report",
        "responses": {
          "202": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "connections": [
                        {
                          "bgps": [
                            {
                              "as_path": "(65201 4201065544) 4203065544",
                              "is_used": true,
                              "local_preference": "190",
                              "prefix": "172.17.0.0/16"
                            }
                          ],
                          "id": "3c265a62-91da-4261-a950-950b6af0eb58",
                          "name": "transit-connection-vpc1",
                          "routes": [
                            {
                              "prefix": "172.17.0.0/16"
                            }
                          ],
                          "type": "vpc"
                        },
                        {
                          "bgps": [
                            {
                              "as_path": "(65201 4201065544) 4203065545",
                              "is_used": true,
                              "local_preference": "190",
                              "prefix": "172.17.0.0/16"
                            }
                          ],
                          "id": "d2d985d8-1d8e-4e8b-96cd-cee2290ecaff",
                          "name": "transit-connection-vpc2",
                          "routes": [
                            {
                              "prefix": "172.17.0.0/16"
                            }
                          ],
                          "type": "vpc"
                        }
                      ],
                      "created_at": "2020-03-31T12:08:05Z",
                      "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                      "overlapping_routes": [
                        {
                          "routes": [
                            {
                              "connection_id": "3c265a62-91da-4261-a950-950b6af0eb58",
                              "prefix": "172.17.0.0/16"
                            },
                            {
                              "connection_id": "d2d985d8-1d8e-4e8b-96cd-cee2290ecaff",
                              "prefix": "172.17.0.0/16"
                            }
                          ]
                        }
                      ],
                      "status": "complete"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/RouteReport"
                }
              }
            },
            "description": "Route report request successful.  If not already in progress, report generation has begun."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Cannot find Gateway",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "The specified Transit Gateway could not be found."
          }
        },
        "summary": "Requests a route report",
        "tags": [
          "Transit Gateway Route Reports"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "createTransitGatewayRouteReportOptions := transitGatewayApisService.NewCreateTransitGatewayRouteReportOptions(\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "routeReport, response, err := transitGatewayApisService.CreateTransitGatewayRouteReport(createTransitGatewayRouteReportOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(routeReport, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X POST --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/route_reports?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "CreateTransitGatewayRouteReportOptions createTransitGatewayRouteReportOptions = new CreateTransitGatewayRouteReportOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<RouteReport> response = transitGatewayApisService.createTransitGatewayRouteReport(createTransitGatewayRouteReportOptions).execute();\n",
                      "RouteReport routeReport = response.getResult();\n",
                      "\n",
                      "System.out.println(routeReport);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.createTransitGatewayRouteReport(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.create_transit_gateway_route_report(\n",
                      "  transit_gateway_id='testString',\n",
                      ")\n",
                      "route_report = response.get_result()\n",
                      "\n",
                      "print(json.dumps(route_report, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      }
    },
    "/transit_gateways/{transit_gateway_id}/route_reports/{id}": {
      "delete": {
        "description": "Delete a route report.",
        "operationId": "delete_transit_gateway_route_report",
        "responses": {
          "204": {
            "description": "Route report deleted successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Route report not found",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "A Transit Gateway or route report with the specified identifier could not be found."
          }
        },
        "summary": "Deletes a route report",
        "tags": [
          "Transit Gateway Route Reports"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "deleteTransitGatewayRouteReportOptions := transitGatewayApisService.NewDeleteTransitGatewayRouteReportOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "response, err := transitGatewayApisService.DeleteTransitGatewayRouteReport(deleteTransitGatewayRouteReportOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "if response.StatusCode != 204 {\n",
                      "  fmt.Printf(\"\\nUnexpected response status code received from DeleteTransitGatewayRouteReport(): %d\\n\", response.StatusCode)\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X DELETE --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/route_reports/${id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "DeleteTransitGatewayRouteReportOptions deleteTransitGatewayRouteReportOptions = new DeleteTransitGatewayRouteReportOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<Void> response = transitGatewayApisService.deleteTransitGatewayRouteReport(deleteTransitGatewayRouteReportOptions).execute();"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "try {\n",
                      "  await transitGatewayApisService.deleteTransitGatewayRouteReport(params);\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.delete_transit_gateway_route_report(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      ")"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "get": {
        "description": "Retrieve a route report.",
        "operationId": "get_transit_gateway_route_report",
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "connections": [
                        {
                          "bgps": [
                            {
                              "as_path": "(65201 4201065544) 4203065544",
                              "is_used": true,
                              "local_preference": "190",
                              "prefix": "172.17.0.0/16"
                            }
                          ],
                          "id": "3c265a62-91da-4261-a950-950b6af0eb58",
                          "name": "transit-connection-vpc1",
                          "routes": [
                            {
                              "prefix": "172.17.0.0/16"
                            }
                          ],
                          "type": "vpc"
                        },
                        {
                          "bgps": [
                            {
                              "as_path": "(65201 4201065544) 4203065545",
                              "is_used": true,
                              "local_preference": "190",
                              "prefix": "172.17.0.0/16"
                            }
                          ],
                          "id": "d2d985d8-1d8e-4e8b-96cd-cee2290ecaff",
                          "name": "transit-connection-vpc2",
                          "routes": [
                            {
                              "prefix": "172.17.0.0/16"
                            }
                          ],
                          "type": "vpc"
                        }
                      ],
                      "created_at": "2020-03-31T12:08:05Z",
                      "id": "1a15dca5-7e33-45e1-b7c5-bc690e569531",
                      "overlapping_routes": [
                        {
                          "routes": [
                            {
                              "connection_id": "3c265a62-91da-4261-a950-950b6af0eb58",
                              "prefix": "172.17.0.0/16"
                            },
                            {
                              "connection_id": "d2d985d8-1d8e-4e8b-96cd-cee2290ecaff",
                              "prefix": "172.17.0.0/16"
                            }
                          ]
                        }
                      ],
                      "status": "complete"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/RouteReport"
                }
              }
            },
            "description": "Route report retrieved successfully."
          },
          "404": {
            "content": {
              "application/json": {
                "examples": {
                  "response": {
                    "value": {
                      "errors": [
                        {
                          "code": "not_found",
                          "message": "Route report not found",
                          "more_info": "https://cloud.ibm.com/apidocs/transit-gateway#error-handling"
                        }
                      ],
                      "trace": "86780a34-e651-4b47-9fb0-184a169cc9af"
                    }
                  }
                },
                "schema": {
                  "$ref": "#/components/schemas/ErrorContainerGateway404"
                }
              }
            },
            "description": "A route report or gateway with the specified identifier(s) could not be found."
          }
        },
        "summary": "Retrieves a route report",
        "tags": [
          "Transit Gateway Route Reports"
        ],
        "x-sdk-operations": {
          "request-examples": {
            "go": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "getTransitGatewayRouteReportOptions := transitGatewayApisService.NewGetTransitGatewayRouteReportOptions(\n",
                      "  \"testString\",\n",
                      "  \"testString\",\n",
                      ")\n",
                      "\n",
                      "routeReport, response, err := transitGatewayApisService.GetTransitGatewayRouteReport(getTransitGatewayRouteReportOptions)\n",
                      "if err != nil {\n",
                      "  panic(err)\n",
                      "}\n",
                      "b, _ := json.MarshalIndent(routeReport, \"\", \"  \")\n",
                      "fmt.Println(string(b))"
                    ]
                  }
                ]
              }
            ],
            "curl": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "curl -X GET --location --header \"Authorization: Bearer ${iam_token}\" \\\n",
                      "  --header \"Accept: application/json\" \\\n",
                      "  \"${base_url}/transit_gateways/${transit_gateway_id}/route_reports/${id}?version=${version}\""
                    ]
                  }
                ]
              }
            ],
            "java": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "GetTransitGatewayRouteReportOptions getTransitGatewayRouteReportOptions = new GetTransitGatewayRouteReportOptions.Builder()\n",
                      "  .transitGatewayId(\"testString\")\n",
                      "  .id(\"testString\")\n",
                      "  .build();\n",
                      "\n",
                      "Response<RouteReport> response = transitGatewayApisService.getTransitGatewayRouteReport(getTransitGatewayRouteReportOptions).execute();\n",
                      "RouteReport routeReport = response.getResult();\n",
                      "\n",
                      "System.out.println(routeReport);"
                    ]
                  }
                ]
              }
            ],
            "node": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "const params = {\n",
                      "  transitGatewayId: 'testString',\n",
                      "  id: 'testString',\n",
                      "};\n",
                      "\n",
                      "let res;\n",
                      "try {\n",
                      "  res = await transitGatewayApisService.getTransitGatewayRouteReport(params);\n",
                      "  console.log(JSON.stringify(res.result, null, 2));\n",
                      "} catch (err) {\n",
                      "  console.warn(err);\n",
                      "}"
                    ]
                  }
                ]
              }
            ],
            "python": [
              {
                "name": "Example request",
                "example": [
                  {
                    "type": "code",
                    "source": [
                      "response = transit_gateway_apis_service.get_transit_gateway_route_report(\n",
                      "  transit_gateway_id='testString',\n",
                      "  id='testString',\n",
                      ")\n",
                      "route_report = response.get_result()\n",
                      "\n",
                      "print(json.dumps(route_report, indent=2))"
                    ]
                  }
                ]
              }
            ]
          }
        }
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/version"
        },
        {
          "$ref": "#/components/parameters/transit_gateway_id"
        },
        {
          "$ref": "#/components/parameters/route_report_id_unqualified"
        }
      ]
    }
  },
  "servers": [
    {
      "url": "https://transit.cloud.ibm.com/v1"
    }
  ],
  "tags": [
    {
      "description": "Operations related to Transit Gateways.",
      "name": "Transit Gateways"
    },
    {
      "description": "Operations related to Transit Connections.",
      "name": "Transit Connections"
    },
    {
      "description": "Operations related to Transit Gateways Network Connections.",
      "name": "Transit Gateways Network Connections"
    },
    {
      "description": "Operations related to Transit Locations.",
      "name": "Transit Locations"
    },
    {
      "description": "Operations related to Transit Gateway Connection Prefix Filters.",
      "name": "Transit Gateway Connection Prefix Filters"
    },
    {
      "description": "Operations related to Transit Gateway Route Reports.",
      "name": "Transit Gateway Route Reports"
    }
  ]
}