Create a workload
curl --request POST \
--url https://api.cpln.io/org/{org}/gvc/{gvc}/workload \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"description": "<string>",
"tags": {},
"name": "<string>",
"health": {
"readiness": "<string>",
"syncFailed": true,
"readyLocations": 123,
"totalLocations": 123,
"readyReplicas": 123,
"totalReplicas": 123
},
"spec": {
"type": "serverless",
"identityLink": "<string>",
"containers": [
{
"name": "<string>",
"image": "<string>",
"workingDir": "<string>",
"metrics": {
"port": 123,
"path": "/metrics",
"dropMetrics": [
"<string>"
]
},
"port": 123,
"ports": [
{
"protocol": "http",
"number": 123
}
],
"memory": "128Mi",
"readinessProbe": {
"exec": {
"command": [
"<string>"
]
},
"grpc": {
"port": 123
},
"tcpSocket": {
"port": 123
},
"httpGet": {
"path": "/",
"port": 123,
"httpHeaders": [
{
"name": "<string>",
"value": "<string>"
}
],
"scheme": "HTTP"
},
"initialDelaySeconds": 123,
"periodSeconds": 123,
"timeoutSeconds": 123,
"successThreshold": 123,
"failureThreshold": 123
},
"livenessProbe": {
"exec": {
"command": [
"<string>"
]
},
"grpc": {
"port": 123
},
"tcpSocket": {
"port": 123
},
"httpGet": {
"path": "/",
"port": 123,
"httpHeaders": [
{
"name": "<string>",
"value": "<string>"
}
],
"scheme": "HTTP"
},
"periodSeconds": 123,
"timeoutSeconds": 123,
"successThreshold": 123,
"failureThreshold": 123,
"initialDelaySeconds": 123
},
"cpu": "50m",
"minCpu": "<string>",
"minMemory": "<string>",
"env": [
{
"name": "<string>",
"value": "<string>"
}
],
"gpu": {
"nvidia": {
"model": {},
"quantity": 123
},
"custom": {
"resource": "<string>",
"runtimeClass": "<string>",
"quantity": 123
}
},
"inheritEnv": true,
"command": "<string>",
"args": [
"<string>"
],
"lifecycle": {
"postStart": {
"exec": {
"command": [
"<string>"
]
}
},
"preStop": {
"exec": {
"command": [
"<string>"
]
}
}
},
"volumes": [
{
"uri": "<string>",
"recoveryPolicy": "retain",
"path": "<string>",
"name": "<string>",
"bootOrder": 123
}
]
}
],
"firewallConfig": {
"external": {
"inboundAllowCIDR": [
"<string>"
],
"inboundBlockedCIDR": [
"<string>"
],
"outboundAllowHostname": [
"<string>"
],
"outboundAllowPort": [
{
"protocol": "tcp",
"number": 123
}
],
"outboundAllowCIDR": [
"<string>"
],
"outboundBlockedCIDR": [
"<string>"
],
"http": {
"inboundHeaderFilter": [
{
"key": "<string>",
"allowedValues": [
"<string>"
],
"blockedValues": [
"<string>"
]
}
]
}
},
"internal": {
"inboundAllowType": "none",
"inboundAllowWorkload": [
"<string>"
]
}
},
"defaultOptions": {
"autoscaling": {
"multi": [
{
"metric": {},
"target": 123
}
],
"target": 123,
"maxScale": 123,
"minScale": 123,
"scaleToZeroDelay": 123,
"maxConcurrency": 123,
"keda": {
"triggers": [
{
"type": "<string>",
"metadata": {},
"name": "<string>",
"useCachedMetrics": true,
"authenticationRef": {
"name": "<string>"
}
}
],
"advanced": {
"scalingModifiers": {
"target": "<string>",
"activationTarget": "<string>",
"formula": "<string>"
}
},
"fallback": {
"failureThreshold": 123,
"replicas": 123
},
"pollingInterval": 123,
"cooldownPeriod": 123,
"initialCooldownPeriod": 123
}
},
"timeoutSeconds": 123,
"capacityAI": true,
"capacityAIUpdateMinutes": 123,
"spot": true,
"debug": true,
"suspend": true,
"multiZone": {
"enabled": true
}
},
"localOptions": [
{
"autoscaling": {
"multi": [
{
"metric": {},
"target": 123
}
],
"target": 123,
"maxScale": 123,
"minScale": 123,
"scaleToZeroDelay": 123,
"maxConcurrency": 123,
"keda": {
"triggers": [
{
"type": "<string>",
"metadata": {},
"name": "<string>",
"useCachedMetrics": true,
"authenticationRef": {
"name": "<string>"
}
}
],
"advanced": {
"scalingModifiers": {
"target": "<string>",
"activationTarget": "<string>",
"formula": "<string>"
}
},
"fallback": {
"failureThreshold": 123,
"replicas": 123
},
"pollingInterval": 123,
"cooldownPeriod": 123,
"initialCooldownPeriod": 123
}
},
"timeoutSeconds": 123,
"capacityAI": true,
"capacityAIUpdateMinutes": 123,
"spot": true,
"debug": true,
"suspend": true,
"multiZone": {
"enabled": true
},
"location": "<string>"
}
],
"job": {
"schedule": "<string>",
"concurrencyPolicy": "Forbid",
"historyLimit": 123,
"activeDeadlineSeconds": 123
},
"sidecar": {
"envoy": {
"accessLog": [
{
"priority": 123,
"name": "envoy.http_grpc_access_log",
"excludedWorkloads": [
"<string>"
],
"typed_config": {
"@type": {},
"common_config": {
"log_name": "<string>",
"grpc_service": {
"envoy_grpc": {
"cluster_name": "<string>",
"authority": {
"adjust": null,
"in": false,
"iterables": null,
"map": null,
"separator": ".",
"type": "value",
"ancestor": 1,
"path": [
"cluster_name"
],
"depth": 1,
"key": "cluster_name",
"root": "cluster_name",
"display": "ref:cluster_name"
},
"retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"google_grpc": {
"target_uri": "<string>",
"channel_credentials": {
"ssl_credentials": {
"root_certs": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"private_key": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"cert_chain": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
}
},
"google_default": {}
},
"call_credentials": [
{
"access_token": "<string>",
"google_compute_engine": {},
"google_refresh_token": "<string>",
"service_account_jwt_access": {
"json_key": "<string>",
"token_lifetime_seconds": 123
},
"google_iam": {
"authorization_token": "<string>",
"authority_selector": "<string>"
},
"from_plugin": {
"name": "<string>",
"typed_config": {}
},
"sts_service": {
"token_exchange_service_uri": "<string>",
"resource": "<string>",
"audience": "<string>",
"scope": "<string>",
"requested_token_type": "<string>",
"subject_token_path": "<string>",
"subject_token_type": "<string>",
"actor_token_path": "<string>",
"actor_token_type": "<string>"
}
}
],
"stat_prefix": "<string>",
"credentials_factory_name": "<string>",
"config": {}
},
"timeout": "<string>",
"initial_metadata": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"buffer_flush_interval": "<string>",
"buffer_size_bytes": 123,
"filter_state_objects_to_log": [
"<string>"
],
"grpc_stream_retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"additional_request_headers_to_log": [
"<string>"
],
"additional_response_headers_to_log": [
"<string>"
],
"additional_response_trailers_to_log": [
"<string>"
]
}
}
],
"clusters": [
{
"name": "<string>",
"excludedWorkloads": [
"<string>"
],
"transport_socket_matches": {},
"alt_stat_name": {},
"cluster_type": {},
"eds_cluster_config": {},
"connect_timeout": {},
"per_connection_buffer_limit_bytes": {},
"lb_policy": {},
"load_assignment": {
"cluster_name": "<string>",
"endpoints": {},
"policy": {}
},
"health_checks": {},
"max_requests_per_connection": {},
"circuit_breakers": {},
"upstream_http_protocol_options": {},
"common_http_protocol_options": {},
"http_protocol_options": {},
"http2_protocol_options": {},
"typed_extension_protocol_options": {},
"dns_refresh_rate": {},
"dns_failure_refresh_rate": {},
"respect_dns_ttl": {},
"dns_lookup_family": {},
"dns_resolvers": {},
"use_tcp_for_dns_lookups": {},
"dns_resolution_config": {},
"typed_dns_resolver_config": {},
"wait_for_warm_on_init": {},
"outlier_detection": {},
"cleanup_interval": {},
"upstream_bind_config": {},
"lb_subset_config": {},
"ring_hash_lb_config": {},
"maglev_lb_config": {},
"least_request_lb_config": {},
"common_lb_config": {},
"transport_socket": {},
"metadata": {},
"protocol_selection": {},
"upstream_connection_options": {},
"close_connections_on_host_health_failure": {},
"ignore_health_on_host_removal": {},
"filters": {},
"load_balancing_policy": {},
"track_timeout_budgets": {},
"upstream_config": {},
"track_cluster_stats": {},
"preconnect_policy": {},
"connection_pool_per_downstream_connection": {}
}
],
"excludedExternalAuth": [
{
"match": {
"prefix": "<string>",
"path": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"path_separated_prefix": "<string>",
"path_match_policy": {
"name": "<string>",
"typed_config": {}
},
"case_sensitive": true,
"runtime_fraction": {
"default_value": {
"numerator": 123,
"denominator": 123
},
"runtime_key": "<string>"
},
"headers": [
{
"name": "<string>",
"safe_regex_match": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"range_match": {
"start": 123,
"end": 123
},
"present_match": true,
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"invert_match": true,
"treat_missing_header_as_empty": true
}
],
"query_parameters": [
{
"name": "<string>",
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"present_match": true
}
],
"grpc": {
"presented": true,
"validated": true
},
"tls_context": {
"presented": true,
"validated": true
},
"dynamic_metadata": [
{
"filter": "<string>",
"path": [
{
"key": "<string>"
}
],
"value": {
"null_match": {},
"double_match": {
"range": {
"start": 123,
"end": 123
},
"exact": 123
},
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"bool_match": true,
"present_match": true
},
"invert": true
}
]
},
"port": 123,
"svcPort": 123
}
],
"excludedRateLimit": [
{
"match": {
"prefix": "<string>",
"path": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"path_separated_prefix": "<string>",
"path_match_policy": {
"name": "<string>",
"typed_config": {}
},
"case_sensitive": true,
"runtime_fraction": {
"default_value": {
"numerator": 123,
"denominator": 123
},
"runtime_key": "<string>"
},
"headers": [
{
"name": "<string>",
"safe_regex_match": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"range_match": {
"start": 123,
"end": 123
},
"present_match": true,
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"invert_match": true,
"treat_missing_header_as_empty": true
}
],
"query_parameters": [
{
"name": "<string>",
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"present_match": true
}
],
"grpc": {
"presented": true,
"validated": true
},
"tls_context": {
"presented": true,
"validated": true
},
"dynamic_metadata": [
{
"filter": "<string>",
"path": [
{
"key": "<string>"
}
],
"value": {
"null_match": {},
"double_match": {
"range": {
"start": 123,
"end": 123
},
"exact": 123
},
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"bool_match": true,
"present_match": true
},
"invert": true
}
]
},
"port": 123,
"svcPort": 123
}
],
"http": [
{
"priority": 123,
"excludedWorkloads": [
"<string>"
],
"name": "envoy.filters.http.ext_authz",
"typed_config": {
"grpc_service": {
"envoy_grpc": {
"cluster_name": "<string>",
"authority": {
"adjust": null,
"in": false,
"iterables": null,
"map": null,
"separator": ".",
"type": "value",
"ancestor": 1,
"path": [
"cluster_name"
],
"depth": 1,
"key": "cluster_name",
"root": "cluster_name",
"display": "ref:cluster_name"
},
"retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"google_grpc": {
"target_uri": "<string>",
"channel_credentials": {
"ssl_credentials": {
"root_certs": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"private_key": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"cert_chain": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
}
},
"google_default": {}
},
"call_credentials": [
{
"access_token": "<string>",
"google_compute_engine": {},
"google_refresh_token": "<string>",
"service_account_jwt_access": {
"json_key": "<string>",
"token_lifetime_seconds": 123
},
"google_iam": {
"authorization_token": "<string>",
"authority_selector": "<string>"
},
"from_plugin": {
"name": "<string>",
"typed_config": {}
},
"sts_service": {
"token_exchange_service_uri": "<string>",
"resource": "<string>",
"audience": "<string>",
"scope": "<string>",
"requested_token_type": "<string>",
"subject_token_path": "<string>",
"subject_token_type": "<string>",
"actor_token_path": "<string>",
"actor_token_type": "<string>"
}
}
],
"stat_prefix": "<string>",
"credentials_factory_name": "<string>",
"config": {}
},
"timeout": "<string>",
"initial_metadata": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"http_service": {
"server_uri": {
"uri": "<string>",
"cluster": "<string>",
"timeout": "<string>"
},
"path_prefix": "<string>",
"authorization_request": {
"allowed_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"headers_to_add": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"authorization_response": {
"allowed_upstream_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"allowed_upstream_headers_to_append": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"allowed_client_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"allowed_client_headers_on_success": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"dynamic_metadata_from_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
}
}
},
"failure_mode_allow": true,
"failure_mode_allow_header_add": true,
"with_request_body": {
"max_request_bytes": 123,
"allow_partial_message": true,
"pack_as_bytes": true
},
"clear_route_cache": true,
"status_on_error": {},
"metadata_context_namespaces": [
"<string>"
],
"typed_metadata_context_namespaces": [
"<string>"
],
"route_metadata_context_namespaces": [
"<string>"
],
"route_typed_metadata_context_namespaces": [
"<string>"
],
"filter_enabled": {
"numerator": 123,
"denominator": 123
},
"deny_at_disable": {
"default_value": true,
"runtime_key": "<string>"
},
"include_peer_certificate": true,
"stat_prefix": "<string>",
"bootstrap_metadata_labels_key": "<string>",
"allowed_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"include_tls_session": true,
"charge_cluster_response_stats": true,
"@type": "type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz"
}
}
],
"network": [
{}
],
"volumes": [
{
"uri": "<string>",
"recoveryPolicy": "retain",
"path": "<string>",
"name": "<string>",
"bootOrder": 123
}
]
}
},
"supportDynamicTags": true,
"rolloutOptions": {
"minReadySeconds": 123,
"maxUnavailableReplicas": "<string>",
"maxSurgeReplicas": "<string>",
"scalingPolicy": "OrderedReady",
"terminationGracePeriodSeconds": 123
},
"securityOptions": {
"filesystemGroupId": 123,
"runAsUser": 123
},
"loadBalancer": {
"direct": {
"enabled": true,
"ports": [
{
"externalPort": 123,
"containerPort": 123
}
],
"ipSet": "<string>"
},
"geoLocation": {
"enabled": true,
"headers": {
"asn": "<string>",
"city": "<string>",
"country": "<string>",
"region": "<string>"
}
},
"replicaDirect": true
},
"extras": {
"affinity": {},
"tolerations": [
{}
],
"topologySpreadConstraints": [
{}
]
},
"requestRetryPolicy": {
"attempts": 123,
"retryOn": [
"<string>"
]
},
"vm": {
"bootDisk": {
"source": {
"oci": {
"image": "<string>"
},
"http": {
"url": "<string>",
"checksum": "<string>"
}
},
"persist": {
"volumeSet": "<string>"
},
"bus": "virtio",
"bootOrder": 123
},
"cpu": {
"sockets": 123,
"threads": 123
},
"firmware": {
"bootloader": "efi",
"secureBoot": true,
"uuid": "<string>",
"serial": "<string>",
"smbios": {
"manufacturer": "<string>",
"product": "<string>",
"version": "<string>",
"sku": "<string>",
"family": "<string>"
}
},
"guestOS": "linux",
"networks": [
{
"name": "default"
}
],
"cloudInit": {
"userData": "<string>",
"userDataBase64": "<string>",
"userDataSecret": "<string>",
"sshPublicKeySecrets": [
"<string>"
]
},
"accessCredentials": [
{
"sshPublicKeySecret": "<string>",
"users": [
"<string>"
],
"deliveryMethod": "qemuGuestAgent"
}
],
"runStrategy": "Always",
"clock": {
"timezone": "UTC"
},
"hostname": "<string>",
"subdomain": "<string>"
}
}
}
'import requests
url = "https://api.cpln.io/org/{org}/gvc/{gvc}/workload"
payload = {
"description": "<string>",
"tags": {},
"name": "<string>",
"health": {
"readiness": "<string>",
"syncFailed": True,
"readyLocations": 123,
"totalLocations": 123,
"readyReplicas": 123,
"totalReplicas": 123
},
"spec": {
"type": "serverless",
"identityLink": "<string>",
"containers": [
{
"name": "<string>",
"image": "<string>",
"workingDir": "<string>",
"metrics": {
"port": 123,
"path": "/metrics",
"dropMetrics": ["<string>"]
},
"port": 123,
"ports": [
{
"protocol": "http",
"number": 123
}
],
"memory": "128Mi",
"readinessProbe": {
"exec": { "command": ["<string>"] },
"grpc": { "port": 123 },
"tcpSocket": { "port": 123 },
"httpGet": {
"path": "/",
"port": 123,
"httpHeaders": [
{
"name": "<string>",
"value": "<string>"
}
],
"scheme": "HTTP"
},
"initialDelaySeconds": 123,
"periodSeconds": 123,
"timeoutSeconds": 123,
"successThreshold": 123,
"failureThreshold": 123
},
"livenessProbe": {
"exec": { "command": ["<string>"] },
"grpc": { "port": 123 },
"tcpSocket": { "port": 123 },
"httpGet": {
"path": "/",
"port": 123,
"httpHeaders": [
{
"name": "<string>",
"value": "<string>"
}
],
"scheme": "HTTP"
},
"periodSeconds": 123,
"timeoutSeconds": 123,
"successThreshold": 123,
"failureThreshold": 123,
"initialDelaySeconds": 123
},
"cpu": "50m",
"minCpu": "<string>",
"minMemory": "<string>",
"env": [
{
"name": "<string>",
"value": "<string>"
}
],
"gpu": {
"nvidia": {
"model": {},
"quantity": 123
},
"custom": {
"resource": "<string>",
"runtimeClass": "<string>",
"quantity": 123
}
},
"inheritEnv": True,
"command": "<string>",
"args": ["<string>"],
"lifecycle": {
"postStart": { "exec": { "command": ["<string>"] } },
"preStop": { "exec": { "command": ["<string>"] } }
},
"volumes": [
{
"uri": "<string>",
"recoveryPolicy": "retain",
"path": "<string>",
"name": "<string>",
"bootOrder": 123
}
]
}
],
"firewallConfig": {
"external": {
"inboundAllowCIDR": ["<string>"],
"inboundBlockedCIDR": ["<string>"],
"outboundAllowHostname": ["<string>"],
"outboundAllowPort": [
{
"protocol": "tcp",
"number": 123
}
],
"outboundAllowCIDR": ["<string>"],
"outboundBlockedCIDR": ["<string>"],
"http": { "inboundHeaderFilter": [
{
"key": "<string>",
"allowedValues": ["<string>"],
"blockedValues": ["<string>"]
}
] }
},
"internal": {
"inboundAllowType": "none",
"inboundAllowWorkload": ["<string>"]
}
},
"defaultOptions": {
"autoscaling": {
"multi": [
{
"metric": {},
"target": 123
}
],
"target": 123,
"maxScale": 123,
"minScale": 123,
"scaleToZeroDelay": 123,
"maxConcurrency": 123,
"keda": {
"triggers": [
{
"type": "<string>",
"metadata": {},
"name": "<string>",
"useCachedMetrics": True,
"authenticationRef": { "name": "<string>" }
}
],
"advanced": { "scalingModifiers": {
"target": "<string>",
"activationTarget": "<string>",
"formula": "<string>"
} },
"fallback": {
"failureThreshold": 123,
"replicas": 123
},
"pollingInterval": 123,
"cooldownPeriod": 123,
"initialCooldownPeriod": 123
}
},
"timeoutSeconds": 123,
"capacityAI": True,
"capacityAIUpdateMinutes": 123,
"spot": True,
"debug": True,
"suspend": True,
"multiZone": { "enabled": True }
},
"localOptions": [
{
"autoscaling": {
"multi": [
{
"metric": {},
"target": 123
}
],
"target": 123,
"maxScale": 123,
"minScale": 123,
"scaleToZeroDelay": 123,
"maxConcurrency": 123,
"keda": {
"triggers": [
{
"type": "<string>",
"metadata": {},
"name": "<string>",
"useCachedMetrics": True,
"authenticationRef": { "name": "<string>" }
}
],
"advanced": { "scalingModifiers": {
"target": "<string>",
"activationTarget": "<string>",
"formula": "<string>"
} },
"fallback": {
"failureThreshold": 123,
"replicas": 123
},
"pollingInterval": 123,
"cooldownPeriod": 123,
"initialCooldownPeriod": 123
}
},
"timeoutSeconds": 123,
"capacityAI": True,
"capacityAIUpdateMinutes": 123,
"spot": True,
"debug": True,
"suspend": True,
"multiZone": { "enabled": True },
"location": "<string>"
}
],
"job": {
"schedule": "<string>",
"concurrencyPolicy": "Forbid",
"historyLimit": 123,
"activeDeadlineSeconds": 123
},
"sidecar": { "envoy": {
"accessLog": [
{
"priority": 123,
"name": "envoy.http_grpc_access_log",
"excludedWorkloads": ["<string>"],
"typed_config": {
"@type": {},
"common_config": {
"log_name": "<string>",
"grpc_service": {
"envoy_grpc": {
"cluster_name": "<string>",
"authority": {
"adjust": None,
"in": False,
"iterables": None,
"map": None,
"separator": ".",
"type": "value",
"ancestor": 1,
"path": ["cluster_name"],
"depth": 1,
"key": "cluster_name",
"root": "cluster_name",
"display": "ref:cluster_name"
},
"retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"google_grpc": {
"target_uri": "<string>",
"channel_credentials": {
"ssl_credentials": {
"root_certs": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"private_key": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"cert_chain": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
}
},
"google_default": {}
},
"call_credentials": [
{
"access_token": "<string>",
"google_compute_engine": {},
"google_refresh_token": "<string>",
"service_account_jwt_access": {
"json_key": "<string>",
"token_lifetime_seconds": 123
},
"google_iam": {
"authorization_token": "<string>",
"authority_selector": "<string>"
},
"from_plugin": {
"name": "<string>",
"typed_config": {}
},
"sts_service": {
"token_exchange_service_uri": "<string>",
"resource": "<string>",
"audience": "<string>",
"scope": "<string>",
"requested_token_type": "<string>",
"subject_token_path": "<string>",
"subject_token_type": "<string>",
"actor_token_path": "<string>",
"actor_token_type": "<string>"
}
}
],
"stat_prefix": "<string>",
"credentials_factory_name": "<string>",
"config": {}
},
"timeout": "<string>",
"initial_metadata": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"buffer_flush_interval": "<string>",
"buffer_size_bytes": 123,
"filter_state_objects_to_log": ["<string>"],
"grpc_stream_retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"additional_request_headers_to_log": ["<string>"],
"additional_response_headers_to_log": ["<string>"],
"additional_response_trailers_to_log": ["<string>"]
}
}
],
"clusters": [
{
"name": "<string>",
"excludedWorkloads": ["<string>"],
"transport_socket_matches": {},
"alt_stat_name": {},
"cluster_type": {},
"eds_cluster_config": {},
"connect_timeout": {},
"per_connection_buffer_limit_bytes": {},
"lb_policy": {},
"load_assignment": {
"cluster_name": "<string>",
"endpoints": {},
"policy": {}
},
"health_checks": {},
"max_requests_per_connection": {},
"circuit_breakers": {},
"upstream_http_protocol_options": {},
"common_http_protocol_options": {},
"http_protocol_options": {},
"http2_protocol_options": {},
"typed_extension_protocol_options": {},
"dns_refresh_rate": {},
"dns_failure_refresh_rate": {},
"respect_dns_ttl": {},
"dns_lookup_family": {},
"dns_resolvers": {},
"use_tcp_for_dns_lookups": {},
"dns_resolution_config": {},
"typed_dns_resolver_config": {},
"wait_for_warm_on_init": {},
"outlier_detection": {},
"cleanup_interval": {},
"upstream_bind_config": {},
"lb_subset_config": {},
"ring_hash_lb_config": {},
"maglev_lb_config": {},
"least_request_lb_config": {},
"common_lb_config": {},
"transport_socket": {},
"metadata": {},
"protocol_selection": {},
"upstream_connection_options": {},
"close_connections_on_host_health_failure": {},
"ignore_health_on_host_removal": {},
"filters": {},
"load_balancing_policy": {},
"track_timeout_budgets": {},
"upstream_config": {},
"track_cluster_stats": {},
"preconnect_policy": {},
"connection_pool_per_downstream_connection": {}
}
],
"excludedExternalAuth": [
{
"match": {
"prefix": "<string>",
"path": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"path_separated_prefix": "<string>",
"path_match_policy": {
"name": "<string>",
"typed_config": {}
},
"case_sensitive": True,
"runtime_fraction": {
"default_value": {
"numerator": 123,
"denominator": 123
},
"runtime_key": "<string>"
},
"headers": [
{
"name": "<string>",
"safe_regex_match": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"range_match": {
"start": 123,
"end": 123
},
"present_match": True,
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"invert_match": True,
"treat_missing_header_as_empty": True
}
],
"query_parameters": [
{
"name": "<string>",
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"present_match": True
}
],
"grpc": {
"presented": True,
"validated": True
},
"tls_context": {
"presented": True,
"validated": True
},
"dynamic_metadata": [
{
"filter": "<string>",
"path": [{ "key": "<string>" }],
"value": {
"null_match": {},
"double_match": {
"range": {
"start": 123,
"end": 123
},
"exact": 123
},
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"bool_match": True,
"present_match": True
},
"invert": True
}
]
},
"port": 123,
"svcPort": 123
}
],
"excludedRateLimit": [
{
"match": {
"prefix": "<string>",
"path": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"path_separated_prefix": "<string>",
"path_match_policy": {
"name": "<string>",
"typed_config": {}
},
"case_sensitive": True,
"runtime_fraction": {
"default_value": {
"numerator": 123,
"denominator": 123
},
"runtime_key": "<string>"
},
"headers": [
{
"name": "<string>",
"safe_regex_match": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"range_match": {
"start": 123,
"end": 123
},
"present_match": True,
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"invert_match": True,
"treat_missing_header_as_empty": True
}
],
"query_parameters": [
{
"name": "<string>",
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"present_match": True
}
],
"grpc": {
"presented": True,
"validated": True
},
"tls_context": {
"presented": True,
"validated": True
},
"dynamic_metadata": [
{
"filter": "<string>",
"path": [{ "key": "<string>" }],
"value": {
"null_match": {},
"double_match": {
"range": {
"start": 123,
"end": 123
},
"exact": 123
},
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"bool_match": True,
"present_match": True
},
"invert": True
}
]
},
"port": 123,
"svcPort": 123
}
],
"http": [
{
"priority": 123,
"excludedWorkloads": ["<string>"],
"name": "envoy.filters.http.ext_authz",
"typed_config": {
"grpc_service": {
"envoy_grpc": {
"cluster_name": "<string>",
"authority": {
"adjust": None,
"in": False,
"iterables": None,
"map": None,
"separator": ".",
"type": "value",
"ancestor": 1,
"path": ["cluster_name"],
"depth": 1,
"key": "cluster_name",
"root": "cluster_name",
"display": "ref:cluster_name"
},
"retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"google_grpc": {
"target_uri": "<string>",
"channel_credentials": {
"ssl_credentials": {
"root_certs": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"private_key": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"cert_chain": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
}
},
"google_default": {}
},
"call_credentials": [
{
"access_token": "<string>",
"google_compute_engine": {},
"google_refresh_token": "<string>",
"service_account_jwt_access": {
"json_key": "<string>",
"token_lifetime_seconds": 123
},
"google_iam": {
"authorization_token": "<string>",
"authority_selector": "<string>"
},
"from_plugin": {
"name": "<string>",
"typed_config": {}
},
"sts_service": {
"token_exchange_service_uri": "<string>",
"resource": "<string>",
"audience": "<string>",
"scope": "<string>",
"requested_token_type": "<string>",
"subject_token_path": "<string>",
"subject_token_type": "<string>",
"actor_token_path": "<string>",
"actor_token_type": "<string>"
}
}
],
"stat_prefix": "<string>",
"credentials_factory_name": "<string>",
"config": {}
},
"timeout": "<string>",
"initial_metadata": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"http_service": {
"server_uri": {
"uri": "<string>",
"cluster": "<string>",
"timeout": "<string>"
},
"path_prefix": "<string>",
"authorization_request": {
"allowed_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"headers_to_add": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"authorization_response": {
"allowed_upstream_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"allowed_upstream_headers_to_append": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"allowed_client_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"allowed_client_headers_on_success": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"dynamic_metadata_from_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] }
}
},
"failure_mode_allow": True,
"failure_mode_allow_header_add": True,
"with_request_body": {
"max_request_bytes": 123,
"allow_partial_message": True,
"pack_as_bytes": True
},
"clear_route_cache": True,
"status_on_error": {},
"metadata_context_namespaces": ["<string>"],
"typed_metadata_context_namespaces": ["<string>"],
"route_metadata_context_namespaces": ["<string>"],
"route_typed_metadata_context_namespaces": ["<string>"],
"filter_enabled": {
"numerator": 123,
"denominator": 123
},
"deny_at_disable": {
"default_value": True,
"runtime_key": "<string>"
},
"include_peer_certificate": True,
"stat_prefix": "<string>",
"bootstrap_metadata_labels_key": "<string>",
"allowed_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"include_tls_session": True,
"charge_cluster_response_stats": True,
"@type": "type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz"
}
}
],
"network": [{}],
"volumes": [
{
"uri": "<string>",
"recoveryPolicy": "retain",
"path": "<string>",
"name": "<string>",
"bootOrder": 123
}
]
} },
"supportDynamicTags": True,
"rolloutOptions": {
"minReadySeconds": 123,
"maxUnavailableReplicas": "<string>",
"maxSurgeReplicas": "<string>",
"scalingPolicy": "OrderedReady",
"terminationGracePeriodSeconds": 123
},
"securityOptions": {
"filesystemGroupId": 123,
"runAsUser": 123
},
"loadBalancer": {
"direct": {
"enabled": True,
"ports": [
{
"externalPort": 123,
"containerPort": 123
}
],
"ipSet": "<string>"
},
"geoLocation": {
"enabled": True,
"headers": {
"asn": "<string>",
"city": "<string>",
"country": "<string>",
"region": "<string>"
}
},
"replicaDirect": True
},
"extras": {
"affinity": {},
"tolerations": [{}],
"topologySpreadConstraints": [{}]
},
"requestRetryPolicy": {
"attempts": 123,
"retryOn": ["<string>"]
},
"vm": {
"bootDisk": {
"source": {
"oci": { "image": "<string>" },
"http": {
"url": "<string>",
"checksum": "<string>"
}
},
"persist": { "volumeSet": "<string>" },
"bus": "virtio",
"bootOrder": 123
},
"cpu": {
"sockets": 123,
"threads": 123
},
"firmware": {
"bootloader": "efi",
"secureBoot": True,
"uuid": "<string>",
"serial": "<string>",
"smbios": {
"manufacturer": "<string>",
"product": "<string>",
"version": "<string>",
"sku": "<string>",
"family": "<string>"
}
},
"guestOS": "linux",
"networks": [{ "name": "default" }],
"cloudInit": {
"userData": "<string>",
"userDataBase64": "<string>",
"userDataSecret": "<string>",
"sshPublicKeySecrets": ["<string>"]
},
"accessCredentials": [
{
"sshPublicKeySecret": "<string>",
"users": ["<string>"],
"deliveryMethod": "qemuGuestAgent"
}
],
"runStrategy": "Always",
"clock": { "timezone": "UTC" },
"hostname": "<string>",
"subdomain": "<string>"
}
}
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
description: '<string>',
tags: {},
name: '<string>',
health: {
readiness: '<string>',
syncFailed: true,
readyLocations: 123,
totalLocations: 123,
readyReplicas: 123,
totalReplicas: 123
},
spec: {
type: 'serverless',
identityLink: '<string>',
containers: [
{
name: '<string>',
image: '<string>',
workingDir: '<string>',
metrics: {port: 123, path: '/metrics', dropMetrics: ['<string>']},
port: 123,
ports: [{protocol: 'http', number: 123}],
memory: '128Mi',
readinessProbe: {
exec: {command: ['<string>']},
grpc: {port: 123},
tcpSocket: {port: 123},
httpGet: {
path: '/',
port: 123,
httpHeaders: [{name: '<string>', value: '<string>'}],
scheme: 'HTTP'
},
initialDelaySeconds: 123,
periodSeconds: 123,
timeoutSeconds: 123,
successThreshold: 123,
failureThreshold: 123
},
livenessProbe: {
exec: {command: ['<string>']},
grpc: {port: 123},
tcpSocket: {port: 123},
httpGet: {
path: '/',
port: 123,
httpHeaders: [{name: '<string>', value: '<string>'}],
scheme: 'HTTP'
},
periodSeconds: 123,
timeoutSeconds: 123,
successThreshold: 123,
failureThreshold: 123,
initialDelaySeconds: 123
},
cpu: '50m',
minCpu: '<string>',
minMemory: '<string>',
env: [{name: '<string>', value: '<string>'}],
gpu: {
nvidia: {model: {}, quantity: 123},
custom: {resource: '<string>', runtimeClass: '<string>', quantity: 123}
},
inheritEnv: true,
command: '<string>',
args: ['<string>'],
lifecycle: {
postStart: {exec: {command: ['<string>']}},
preStop: {exec: {command: ['<string>']}}
},
volumes: [
{
uri: '<string>',
recoveryPolicy: 'retain',
path: '<string>',
name: '<string>',
bootOrder: 123
}
]
}
],
firewallConfig: {
external: {
inboundAllowCIDR: ['<string>'],
inboundBlockedCIDR: ['<string>'],
outboundAllowHostname: ['<string>'],
outboundAllowPort: [{protocol: 'tcp', number: 123}],
outboundAllowCIDR: ['<string>'],
outboundBlockedCIDR: ['<string>'],
http: {
inboundHeaderFilter: [{key: '<string>', allowedValues: ['<string>'], blockedValues: ['<string>']}]
}
},
internal: {inboundAllowType: 'none', inboundAllowWorkload: ['<string>']}
},
defaultOptions: {
autoscaling: {
multi: [{metric: {}, target: 123}],
target: 123,
maxScale: 123,
minScale: 123,
scaleToZeroDelay: 123,
maxConcurrency: 123,
keda: {
triggers: [
{
type: '<string>',
metadata: {},
name: '<string>',
useCachedMetrics: true,
authenticationRef: {name: '<string>'}
}
],
advanced: {
scalingModifiers: {target: '<string>', activationTarget: '<string>', formula: '<string>'}
},
fallback: {failureThreshold: 123, replicas: 123},
pollingInterval: 123,
cooldownPeriod: 123,
initialCooldownPeriod: 123
}
},
timeoutSeconds: 123,
capacityAI: true,
capacityAIUpdateMinutes: 123,
spot: true,
debug: true,
suspend: true,
multiZone: {enabled: true}
},
localOptions: [
{
autoscaling: {
multi: [{metric: {}, target: 123}],
target: 123,
maxScale: 123,
minScale: 123,
scaleToZeroDelay: 123,
maxConcurrency: 123,
keda: {
triggers: [
{
type: '<string>',
metadata: {},
name: '<string>',
useCachedMetrics: true,
authenticationRef: {name: '<string>'}
}
],
advanced: {
scalingModifiers: {target: '<string>', activationTarget: '<string>', formula: '<string>'}
},
fallback: {failureThreshold: 123, replicas: 123},
pollingInterval: 123,
cooldownPeriod: 123,
initialCooldownPeriod: 123
}
},
timeoutSeconds: 123,
capacityAI: true,
capacityAIUpdateMinutes: 123,
spot: true,
debug: true,
suspend: true,
multiZone: {enabled: true},
location: '<string>'
}
],
job: {
schedule: '<string>',
concurrencyPolicy: 'Forbid',
historyLimit: 123,
activeDeadlineSeconds: 123
},
sidecar: {
envoy: {
accessLog: [
{
priority: 123,
name: 'envoy.http_grpc_access_log',
excludedWorkloads: ['<string>'],
typed_config: {
'@type': {},
common_config: {
log_name: '<string>',
grpc_service: {
envoy_grpc: {
cluster_name: '<string>',
authority: {
adjust: null,
in: false,
iterables: null,
map: null,
separator: '.',
type: 'value',
ancestor: 1,
path: ['cluster_name'],
depth: 1,
key: 'cluster_name',
root: 'cluster_name',
display: 'ref:cluster_name'
},
retry_policy: {
retry_back_off: {base_interval: '<string>', max_interval: '<string>'},
num_retries: 123
}
},
google_grpc: {
target_uri: '<string>',
channel_credentials: {
ssl_credentials: {
root_certs: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
},
private_key: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
},
cert_chain: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
}
},
google_default: {}
},
call_credentials: [
{
access_token: '<string>',
google_compute_engine: {},
google_refresh_token: '<string>',
service_account_jwt_access: {json_key: '<string>', token_lifetime_seconds: 123},
google_iam: {authorization_token: '<string>', authority_selector: '<string>'},
from_plugin: {name: '<string>', typed_config: {}},
sts_service: {
token_exchange_service_uri: '<string>',
resource: '<string>',
audience: '<string>',
scope: '<string>',
requested_token_type: '<string>',
subject_token_path: '<string>',
subject_token_type: '<string>',
actor_token_path: '<string>',
actor_token_type: '<string>'
}
}
],
stat_prefix: '<string>',
credentials_factory_name: '<string>',
config: {}
},
timeout: '<string>',
initial_metadata: [{key: '<string>', value: '<string>', raw_value: '<unknown>'}]
},
buffer_flush_interval: '<string>',
buffer_size_bytes: 123,
filter_state_objects_to_log: ['<string>'],
grpc_stream_retry_policy: {
retry_back_off: {base_interval: '<string>', max_interval: '<string>'},
num_retries: 123
}
},
additional_request_headers_to_log: ['<string>'],
additional_response_headers_to_log: ['<string>'],
additional_response_trailers_to_log: ['<string>']
}
}
],
clusters: [
{
name: '<string>',
excludedWorkloads: ['<string>'],
transport_socket_matches: {},
alt_stat_name: {},
cluster_type: {},
eds_cluster_config: {},
connect_timeout: {},
per_connection_buffer_limit_bytes: {},
lb_policy: {},
load_assignment: {cluster_name: '<string>', endpoints: {}, policy: {}},
health_checks: {},
max_requests_per_connection: {},
circuit_breakers: {},
upstream_http_protocol_options: {},
common_http_protocol_options: {},
http_protocol_options: {},
http2_protocol_options: {},
typed_extension_protocol_options: {},
dns_refresh_rate: {},
dns_failure_refresh_rate: {},
respect_dns_ttl: {},
dns_lookup_family: {},
dns_resolvers: {},
use_tcp_for_dns_lookups: {},
dns_resolution_config: {},
typed_dns_resolver_config: {},
wait_for_warm_on_init: {},
outlier_detection: {},
cleanup_interval: {},
upstream_bind_config: {},
lb_subset_config: {},
ring_hash_lb_config: {},
maglev_lb_config: {},
least_request_lb_config: {},
common_lb_config: {},
transport_socket: {},
metadata: {},
protocol_selection: {},
upstream_connection_options: {},
close_connections_on_host_health_failure: {},
ignore_health_on_host_removal: {},
filters: {},
load_balancing_policy: {},
track_timeout_budgets: {},
upstream_config: {},
track_cluster_stats: {},
preconnect_policy: {},
connection_pool_per_downstream_connection: {}
}
],
excludedExternalAuth: [
{
match: {
prefix: '<string>',
path: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
path_separated_prefix: '<string>',
path_match_policy: {name: '<string>', typed_config: {}},
case_sensitive: true,
runtime_fraction: {default_value: {numerator: 123, denominator: 123}, runtime_key: '<string>'},
headers: [
{
name: '<string>',
safe_regex_match: {google_re2: {max_program_size: 123}, regex: '<string>'},
range_match: {start: 123, end: 123},
present_match: true,
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
invert_match: true,
treat_missing_header_as_empty: true
}
],
query_parameters: [
{
name: '<string>',
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
present_match: true
}
],
grpc: {presented: true, validated: true},
tls_context: {presented: true, validated: true},
dynamic_metadata: [
{
filter: '<string>',
path: [{key: '<string>'}],
value: {
null_match: {},
double_match: {range: {start: 123, end: 123}, exact: 123},
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
bool_match: true,
present_match: true
},
invert: true
}
]
},
port: 123,
svcPort: 123
}
],
excludedRateLimit: [
{
match: {
prefix: '<string>',
path: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
path_separated_prefix: '<string>',
path_match_policy: {name: '<string>', typed_config: {}},
case_sensitive: true,
runtime_fraction: {default_value: {numerator: 123, denominator: 123}, runtime_key: '<string>'},
headers: [
{
name: '<string>',
safe_regex_match: {google_re2: {max_program_size: 123}, regex: '<string>'},
range_match: {start: 123, end: 123},
present_match: true,
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
invert_match: true,
treat_missing_header_as_empty: true
}
],
query_parameters: [
{
name: '<string>',
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
present_match: true
}
],
grpc: {presented: true, validated: true},
tls_context: {presented: true, validated: true},
dynamic_metadata: [
{
filter: '<string>',
path: [{key: '<string>'}],
value: {
null_match: {},
double_match: {range: {start: 123, end: 123}, exact: 123},
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
bool_match: true,
present_match: true
},
invert: true
}
]
},
port: 123,
svcPort: 123
}
],
http: [
{
priority: 123,
excludedWorkloads: ['<string>'],
name: 'envoy.filters.http.ext_authz',
typed_config: {
grpc_service: {
envoy_grpc: {
cluster_name: '<string>',
authority: {
adjust: null,
in: false,
iterables: null,
map: null,
separator: '.',
type: 'value',
ancestor: 1,
path: ['cluster_name'],
depth: 1,
key: 'cluster_name',
root: 'cluster_name',
display: 'ref:cluster_name'
},
retry_policy: {
retry_back_off: {base_interval: '<string>', max_interval: '<string>'},
num_retries: 123
}
},
google_grpc: {
target_uri: '<string>',
channel_credentials: {
ssl_credentials: {
root_certs: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
},
private_key: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
},
cert_chain: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
}
},
google_default: {}
},
call_credentials: [
{
access_token: '<string>',
google_compute_engine: {},
google_refresh_token: '<string>',
service_account_jwt_access: {json_key: '<string>', token_lifetime_seconds: 123},
google_iam: {authorization_token: '<string>', authority_selector: '<string>'},
from_plugin: {name: '<string>', typed_config: {}},
sts_service: {
token_exchange_service_uri: '<string>',
resource: '<string>',
audience: '<string>',
scope: '<string>',
requested_token_type: '<string>',
subject_token_path: '<string>',
subject_token_type: '<string>',
actor_token_path: '<string>',
actor_token_type: '<string>'
}
}
],
stat_prefix: '<string>',
credentials_factory_name: '<string>',
config: {}
},
timeout: '<string>',
initial_metadata: [{key: '<string>', value: '<string>', raw_value: '<unknown>'}]
},
http_service: {
server_uri: {uri: '<string>', cluster: '<string>', timeout: '<string>'},
path_prefix: '<string>',
authorization_request: {
allowed_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
headers_to_add: [{key: '<string>', value: '<string>', raw_value: '<unknown>'}]
},
authorization_response: {
allowed_upstream_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
allowed_upstream_headers_to_append: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
allowed_client_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
allowed_client_headers_on_success: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
dynamic_metadata_from_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
}
}
},
failure_mode_allow: true,
failure_mode_allow_header_add: true,
with_request_body: {max_request_bytes: 123, allow_partial_message: true, pack_as_bytes: true},
clear_route_cache: true,
status_on_error: {},
metadata_context_namespaces: ['<string>'],
typed_metadata_context_namespaces: ['<string>'],
route_metadata_context_namespaces: ['<string>'],
route_typed_metadata_context_namespaces: ['<string>'],
filter_enabled: {numerator: 123, denominator: 123},
deny_at_disable: {default_value: true, runtime_key: '<string>'},
include_peer_certificate: true,
stat_prefix: '<string>',
bootstrap_metadata_labels_key: '<string>',
allowed_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
include_tls_session: true,
charge_cluster_response_stats: true,
'@type': 'type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz'
}
}
],
network: [{}],
volumes: [
{
uri: '<string>',
recoveryPolicy: 'retain',
path: '<string>',
name: '<string>',
bootOrder: 123
}
]
}
},
supportDynamicTags: true,
rolloutOptions: {
minReadySeconds: 123,
maxUnavailableReplicas: '<string>',
maxSurgeReplicas: '<string>',
scalingPolicy: 'OrderedReady',
terminationGracePeriodSeconds: 123
},
securityOptions: {filesystemGroupId: 123, runAsUser: 123},
loadBalancer: {
direct: {
enabled: true,
ports: [{externalPort: 123, containerPort: 123}],
ipSet: '<string>'
},
geoLocation: {
enabled: true,
headers: {asn: '<string>', city: '<string>', country: '<string>', region: '<string>'}
},
replicaDirect: true
},
extras: {affinity: {}, tolerations: [{}], topologySpreadConstraints: [{}]},
requestRetryPolicy: {attempts: 123, retryOn: ['<string>']},
vm: {
bootDisk: {
source: {oci: {image: '<string>'}, http: {url: '<string>', checksum: '<string>'}},
persist: {volumeSet: '<string>'},
bus: 'virtio',
bootOrder: 123
},
cpu: {sockets: 123, threads: 123},
firmware: {
bootloader: 'efi',
secureBoot: true,
uuid: '<string>',
serial: '<string>',
smbios: {
manufacturer: '<string>',
product: '<string>',
version: '<string>',
sku: '<string>',
family: '<string>'
}
},
guestOS: 'linux',
networks: [{name: 'default'}],
cloudInit: {
userData: '<string>',
userDataBase64: '<string>',
userDataSecret: '<string>',
sshPublicKeySecrets: ['<string>']
},
accessCredentials: [
{
sshPublicKeySecret: '<string>',
users: ['<string>'],
deliveryMethod: 'qemuGuestAgent'
}
],
runStrategy: 'Always',
clock: {timezone: 'UTC'},
hostname: '<string>',
subdomain: '<string>'
}
}
})
};
fetch('https://api.cpln.io/org/{org}/gvc/{gvc}/workload', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cpln.io/org/{org}/gvc/{gvc}/workload",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'description' => '<string>',
'tags' => [
],
'name' => '<string>',
'health' => [
'readiness' => '<string>',
'syncFailed' => true,
'readyLocations' => 123,
'totalLocations' => 123,
'readyReplicas' => 123,
'totalReplicas' => 123
],
'spec' => [
'type' => 'serverless',
'identityLink' => '<string>',
'containers' => [
[
'name' => '<string>',
'image' => '<string>',
'workingDir' => '<string>',
'metrics' => [
'port' => 123,
'path' => '/metrics',
'dropMetrics' => [
'<string>'
]
],
'port' => 123,
'ports' => [
[
'protocol' => 'http',
'number' => 123
]
],
'memory' => '128Mi',
'readinessProbe' => [
'exec' => [
'command' => [
'<string>'
]
],
'grpc' => [
'port' => 123
],
'tcpSocket' => [
'port' => 123
],
'httpGet' => [
'path' => '/',
'port' => 123,
'httpHeaders' => [
[
'name' => '<string>',
'value' => '<string>'
]
],
'scheme' => 'HTTP'
],
'initialDelaySeconds' => 123,
'periodSeconds' => 123,
'timeoutSeconds' => 123,
'successThreshold' => 123,
'failureThreshold' => 123
],
'livenessProbe' => [
'exec' => [
'command' => [
'<string>'
]
],
'grpc' => [
'port' => 123
],
'tcpSocket' => [
'port' => 123
],
'httpGet' => [
'path' => '/',
'port' => 123,
'httpHeaders' => [
[
'name' => '<string>',
'value' => '<string>'
]
],
'scheme' => 'HTTP'
],
'periodSeconds' => 123,
'timeoutSeconds' => 123,
'successThreshold' => 123,
'failureThreshold' => 123,
'initialDelaySeconds' => 123
],
'cpu' => '50m',
'minCpu' => '<string>',
'minMemory' => '<string>',
'env' => [
[
'name' => '<string>',
'value' => '<string>'
]
],
'gpu' => [
'nvidia' => [
'model' => [
],
'quantity' => 123
],
'custom' => [
'resource' => '<string>',
'runtimeClass' => '<string>',
'quantity' => 123
]
],
'inheritEnv' => true,
'command' => '<string>',
'args' => [
'<string>'
],
'lifecycle' => [
'postStart' => [
'exec' => [
'command' => [
'<string>'
]
]
],
'preStop' => [
'exec' => [
'command' => [
'<string>'
]
]
]
],
'volumes' => [
[
'uri' => '<string>',
'recoveryPolicy' => 'retain',
'path' => '<string>',
'name' => '<string>',
'bootOrder' => 123
]
]
]
],
'firewallConfig' => [
'external' => [
'inboundAllowCIDR' => [
'<string>'
],
'inboundBlockedCIDR' => [
'<string>'
],
'outboundAllowHostname' => [
'<string>'
],
'outboundAllowPort' => [
[
'protocol' => 'tcp',
'number' => 123
]
],
'outboundAllowCIDR' => [
'<string>'
],
'outboundBlockedCIDR' => [
'<string>'
],
'http' => [
'inboundHeaderFilter' => [
[
'key' => '<string>',
'allowedValues' => [
'<string>'
],
'blockedValues' => [
'<string>'
]
]
]
]
],
'internal' => [
'inboundAllowType' => 'none',
'inboundAllowWorkload' => [
'<string>'
]
]
],
'defaultOptions' => [
'autoscaling' => [
'multi' => [
[
'metric' => [
],
'target' => 123
]
],
'target' => 123,
'maxScale' => 123,
'minScale' => 123,
'scaleToZeroDelay' => 123,
'maxConcurrency' => 123,
'keda' => [
'triggers' => [
[
'type' => '<string>',
'metadata' => [
],
'name' => '<string>',
'useCachedMetrics' => true,
'authenticationRef' => [
'name' => '<string>'
]
]
],
'advanced' => [
'scalingModifiers' => [
'target' => '<string>',
'activationTarget' => '<string>',
'formula' => '<string>'
]
],
'fallback' => [
'failureThreshold' => 123,
'replicas' => 123
],
'pollingInterval' => 123,
'cooldownPeriod' => 123,
'initialCooldownPeriod' => 123
]
],
'timeoutSeconds' => 123,
'capacityAI' => true,
'capacityAIUpdateMinutes' => 123,
'spot' => true,
'debug' => true,
'suspend' => true,
'multiZone' => [
'enabled' => true
]
],
'localOptions' => [
[
'autoscaling' => [
'multi' => [
[
'metric' => [
],
'target' => 123
]
],
'target' => 123,
'maxScale' => 123,
'minScale' => 123,
'scaleToZeroDelay' => 123,
'maxConcurrency' => 123,
'keda' => [
'triggers' => [
[
'type' => '<string>',
'metadata' => [
],
'name' => '<string>',
'useCachedMetrics' => true,
'authenticationRef' => [
'name' => '<string>'
]
]
],
'advanced' => [
'scalingModifiers' => [
'target' => '<string>',
'activationTarget' => '<string>',
'formula' => '<string>'
]
],
'fallback' => [
'failureThreshold' => 123,
'replicas' => 123
],
'pollingInterval' => 123,
'cooldownPeriod' => 123,
'initialCooldownPeriod' => 123
]
],
'timeoutSeconds' => 123,
'capacityAI' => true,
'capacityAIUpdateMinutes' => 123,
'spot' => true,
'debug' => true,
'suspend' => true,
'multiZone' => [
'enabled' => true
],
'location' => '<string>'
]
],
'job' => [
'schedule' => '<string>',
'concurrencyPolicy' => 'Forbid',
'historyLimit' => 123,
'activeDeadlineSeconds' => 123
],
'sidecar' => [
'envoy' => [
'accessLog' => [
[
'priority' => 123,
'name' => 'envoy.http_grpc_access_log',
'excludedWorkloads' => [
'<string>'
],
'typed_config' => [
'@type' => [
],
'common_config' => [
'log_name' => '<string>',
'grpc_service' => [
'envoy_grpc' => [
'cluster_name' => '<string>',
'authority' => [
'adjust' => null,
'in' => false,
'iterables' => null,
'map' => null,
'separator' => '.',
'type' => 'value',
'ancestor' => 1,
'path' => [
'cluster_name'
],
'depth' => 1,
'key' => 'cluster_name',
'root' => 'cluster_name',
'display' => 'ref:cluster_name'
],
'retry_policy' => [
'retry_back_off' => [
'base_interval' => '<string>',
'max_interval' => '<string>'
],
'num_retries' => 123
]
],
'google_grpc' => [
'target_uri' => '<string>',
'channel_credentials' => [
'ssl_credentials' => [
'root_certs' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
],
'private_key' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
],
'cert_chain' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
]
],
'google_default' => [
]
],
'call_credentials' => [
[
'access_token' => '<string>',
'google_compute_engine' => [
],
'google_refresh_token' => '<string>',
'service_account_jwt_access' => [
'json_key' => '<string>',
'token_lifetime_seconds' => 123
],
'google_iam' => [
'authorization_token' => '<string>',
'authority_selector' => '<string>'
],
'from_plugin' => [
'name' => '<string>',
'typed_config' => [
]
],
'sts_service' => [
'token_exchange_service_uri' => '<string>',
'resource' => '<string>',
'audience' => '<string>',
'scope' => '<string>',
'requested_token_type' => '<string>',
'subject_token_path' => '<string>',
'subject_token_type' => '<string>',
'actor_token_path' => '<string>',
'actor_token_type' => '<string>'
]
]
],
'stat_prefix' => '<string>',
'credentials_factory_name' => '<string>',
'config' => [
]
],
'timeout' => '<string>',
'initial_metadata' => [
[
'key' => '<string>',
'value' => '<string>',
'raw_value' => '<unknown>'
]
]
],
'buffer_flush_interval' => '<string>',
'buffer_size_bytes' => 123,
'filter_state_objects_to_log' => [
'<string>'
],
'grpc_stream_retry_policy' => [
'retry_back_off' => [
'base_interval' => '<string>',
'max_interval' => '<string>'
],
'num_retries' => 123
]
],
'additional_request_headers_to_log' => [
'<string>'
],
'additional_response_headers_to_log' => [
'<string>'
],
'additional_response_trailers_to_log' => [
'<string>'
]
]
]
],
'clusters' => [
[
'name' => '<string>',
'excludedWorkloads' => [
'<string>'
],
'transport_socket_matches' => [
],
'alt_stat_name' => [
],
'cluster_type' => [
],
'eds_cluster_config' => [
],
'connect_timeout' => [
],
'per_connection_buffer_limit_bytes' => [
],
'lb_policy' => [
],
'load_assignment' => [
'cluster_name' => '<string>',
'endpoints' => [
],
'policy' => [
]
],
'health_checks' => [
],
'max_requests_per_connection' => [
],
'circuit_breakers' => [
],
'upstream_http_protocol_options' => [
],
'common_http_protocol_options' => [
],
'http_protocol_options' => [
],
'http2_protocol_options' => [
],
'typed_extension_protocol_options' => [
],
'dns_refresh_rate' => [
],
'dns_failure_refresh_rate' => [
],
'respect_dns_ttl' => [
],
'dns_lookup_family' => [
],
'dns_resolvers' => [
],
'use_tcp_for_dns_lookups' => [
],
'dns_resolution_config' => [
],
'typed_dns_resolver_config' => [
],
'wait_for_warm_on_init' => [
],
'outlier_detection' => [
],
'cleanup_interval' => [
],
'upstream_bind_config' => [
],
'lb_subset_config' => [
],
'ring_hash_lb_config' => [
],
'maglev_lb_config' => [
],
'least_request_lb_config' => [
],
'common_lb_config' => [
],
'transport_socket' => [
],
'metadata' => [
],
'protocol_selection' => [
],
'upstream_connection_options' => [
],
'close_connections_on_host_health_failure' => [
],
'ignore_health_on_host_removal' => [
],
'filters' => [
],
'load_balancing_policy' => [
],
'track_timeout_budgets' => [
],
'upstream_config' => [
],
'track_cluster_stats' => [
],
'preconnect_policy' => [
],
'connection_pool_per_downstream_connection' => [
]
]
],
'excludedExternalAuth' => [
[
'match' => [
'prefix' => '<string>',
'path' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'path_separated_prefix' => '<string>',
'path_match_policy' => [
'name' => '<string>',
'typed_config' => [
]
],
'case_sensitive' => true,
'runtime_fraction' => [
'default_value' => [
'numerator' => 123,
'denominator' => 123
],
'runtime_key' => '<string>'
],
'headers' => [
[
'name' => '<string>',
'safe_regex_match' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'range_match' => [
'start' => 123,
'end' => 123
],
'present_match' => true,
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'invert_match' => true,
'treat_missing_header_as_empty' => true
]
],
'query_parameters' => [
[
'name' => '<string>',
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'present_match' => true
]
],
'grpc' => [
'presented' => true,
'validated' => true
],
'tls_context' => [
'presented' => true,
'validated' => true
],
'dynamic_metadata' => [
[
'filter' => '<string>',
'path' => [
[
'key' => '<string>'
]
],
'value' => [
'null_match' => [
],
'double_match' => [
'range' => [
'start' => 123,
'end' => 123
],
'exact' => 123
],
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'bool_match' => true,
'present_match' => true
],
'invert' => true
]
]
],
'port' => 123,
'svcPort' => 123
]
],
'excludedRateLimit' => [
[
'match' => [
'prefix' => '<string>',
'path' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'path_separated_prefix' => '<string>',
'path_match_policy' => [
'name' => '<string>',
'typed_config' => [
]
],
'case_sensitive' => true,
'runtime_fraction' => [
'default_value' => [
'numerator' => 123,
'denominator' => 123
],
'runtime_key' => '<string>'
],
'headers' => [
[
'name' => '<string>',
'safe_regex_match' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'range_match' => [
'start' => 123,
'end' => 123
],
'present_match' => true,
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'invert_match' => true,
'treat_missing_header_as_empty' => true
]
],
'query_parameters' => [
[
'name' => '<string>',
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'present_match' => true
]
],
'grpc' => [
'presented' => true,
'validated' => true
],
'tls_context' => [
'presented' => true,
'validated' => true
],
'dynamic_metadata' => [
[
'filter' => '<string>',
'path' => [
[
'key' => '<string>'
]
],
'value' => [
'null_match' => [
],
'double_match' => [
'range' => [
'start' => 123,
'end' => 123
],
'exact' => 123
],
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'bool_match' => true,
'present_match' => true
],
'invert' => true
]
]
],
'port' => 123,
'svcPort' => 123
]
],
'http' => [
[
'priority' => 123,
'excludedWorkloads' => [
'<string>'
],
'name' => 'envoy.filters.http.ext_authz',
'typed_config' => [
'grpc_service' => [
'envoy_grpc' => [
'cluster_name' => '<string>',
'authority' => [
'adjust' => null,
'in' => false,
'iterables' => null,
'map' => null,
'separator' => '.',
'type' => 'value',
'ancestor' => 1,
'path' => [
'cluster_name'
],
'depth' => 1,
'key' => 'cluster_name',
'root' => 'cluster_name',
'display' => 'ref:cluster_name'
],
'retry_policy' => [
'retry_back_off' => [
'base_interval' => '<string>',
'max_interval' => '<string>'
],
'num_retries' => 123
]
],
'google_grpc' => [
'target_uri' => '<string>',
'channel_credentials' => [
'ssl_credentials' => [
'root_certs' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
],
'private_key' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
],
'cert_chain' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
]
],
'google_default' => [
]
],
'call_credentials' => [
[
'access_token' => '<string>',
'google_compute_engine' => [
],
'google_refresh_token' => '<string>',
'service_account_jwt_access' => [
'json_key' => '<string>',
'token_lifetime_seconds' => 123
],
'google_iam' => [
'authorization_token' => '<string>',
'authority_selector' => '<string>'
],
'from_plugin' => [
'name' => '<string>',
'typed_config' => [
]
],
'sts_service' => [
'token_exchange_service_uri' => '<string>',
'resource' => '<string>',
'audience' => '<string>',
'scope' => '<string>',
'requested_token_type' => '<string>',
'subject_token_path' => '<string>',
'subject_token_type' => '<string>',
'actor_token_path' => '<string>',
'actor_token_type' => '<string>'
]
]
],
'stat_prefix' => '<string>',
'credentials_factory_name' => '<string>',
'config' => [
]
],
'timeout' => '<string>',
'initial_metadata' => [
[
'key' => '<string>',
'value' => '<string>',
'raw_value' => '<unknown>'
]
]
],
'http_service' => [
'server_uri' => [
'uri' => '<string>',
'cluster' => '<string>',
'timeout' => '<string>'
],
'path_prefix' => '<string>',
'authorization_request' => [
'allowed_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'headers_to_add' => [
[
'key' => '<string>',
'value' => '<string>',
'raw_value' => '<unknown>'
]
]
],
'authorization_response' => [
'allowed_upstream_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'allowed_upstream_headers_to_append' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'allowed_client_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'allowed_client_headers_on_success' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'dynamic_metadata_from_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
]
]
],
'failure_mode_allow' => true,
'failure_mode_allow_header_add' => true,
'with_request_body' => [
'max_request_bytes' => 123,
'allow_partial_message' => true,
'pack_as_bytes' => true
],
'clear_route_cache' => true,
'status_on_error' => [
],
'metadata_context_namespaces' => [
'<string>'
],
'typed_metadata_context_namespaces' => [
'<string>'
],
'route_metadata_context_namespaces' => [
'<string>'
],
'route_typed_metadata_context_namespaces' => [
'<string>'
],
'filter_enabled' => [
'numerator' => 123,
'denominator' => 123
],
'deny_at_disable' => [
'default_value' => true,
'runtime_key' => '<string>'
],
'include_peer_certificate' => true,
'stat_prefix' => '<string>',
'bootstrap_metadata_labels_key' => '<string>',
'allowed_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'include_tls_session' => true,
'charge_cluster_response_stats' => true,
'@type' => 'type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz'
]
]
],
'network' => [
[
]
],
'volumes' => [
[
'uri' => '<string>',
'recoveryPolicy' => 'retain',
'path' => '<string>',
'name' => '<string>',
'bootOrder' => 123
]
]
]
],
'supportDynamicTags' => true,
'rolloutOptions' => [
'minReadySeconds' => 123,
'maxUnavailableReplicas' => '<string>',
'maxSurgeReplicas' => '<string>',
'scalingPolicy' => 'OrderedReady',
'terminationGracePeriodSeconds' => 123
],
'securityOptions' => [
'filesystemGroupId' => 123,
'runAsUser' => 123
],
'loadBalancer' => [
'direct' => [
'enabled' => true,
'ports' => [
[
'externalPort' => 123,
'containerPort' => 123
]
],
'ipSet' => '<string>'
],
'geoLocation' => [
'enabled' => true,
'headers' => [
'asn' => '<string>',
'city' => '<string>',
'country' => '<string>',
'region' => '<string>'
]
],
'replicaDirect' => true
],
'extras' => [
'affinity' => [
],
'tolerations' => [
[
]
],
'topologySpreadConstraints' => [
[
]
]
],
'requestRetryPolicy' => [
'attempts' => 123,
'retryOn' => [
'<string>'
]
],
'vm' => [
'bootDisk' => [
'source' => [
'oci' => [
'image' => '<string>'
],
'http' => [
'url' => '<string>',
'checksum' => '<string>'
]
],
'persist' => [
'volumeSet' => '<string>'
],
'bus' => 'virtio',
'bootOrder' => 123
],
'cpu' => [
'sockets' => 123,
'threads' => 123
],
'firmware' => [
'bootloader' => 'efi',
'secureBoot' => true,
'uuid' => '<string>',
'serial' => '<string>',
'smbios' => [
'manufacturer' => '<string>',
'product' => '<string>',
'version' => '<string>',
'sku' => '<string>',
'family' => '<string>'
]
],
'guestOS' => 'linux',
'networks' => [
[
'name' => 'default'
]
],
'cloudInit' => [
'userData' => '<string>',
'userDataBase64' => '<string>',
'userDataSecret' => '<string>',
'sshPublicKeySecrets' => [
'<string>'
]
],
'accessCredentials' => [
[
'sshPublicKeySecret' => '<string>',
'users' => [
'<string>'
],
'deliveryMethod' => 'qemuGuestAgent'
]
],
'runStrategy' => 'Always',
'clock' => [
'timezone' => 'UTC'
],
'hostname' => '<string>',
'subdomain' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.cpln.io/org/{org}/gvc/{gvc}/workload"
payload := strings.NewReader("{\n \"description\": \"<string>\",\n \"tags\": {},\n \"name\": \"<string>\",\n \"health\": {\n \"readiness\": \"<string>\",\n \"syncFailed\": true,\n \"readyLocations\": 123,\n \"totalLocations\": 123,\n \"readyReplicas\": 123,\n \"totalReplicas\": 123\n },\n \"spec\": {\n \"type\": \"serverless\",\n \"identityLink\": \"<string>\",\n \"containers\": [\n {\n \"name\": \"<string>\",\n \"image\": \"<string>\",\n \"workingDir\": \"<string>\",\n \"metrics\": {\n \"port\": 123,\n \"path\": \"/metrics\",\n \"dropMetrics\": [\n \"<string>\"\n ]\n },\n \"port\": 123,\n \"ports\": [\n {\n \"protocol\": \"http\",\n \"number\": 123\n }\n ],\n \"memory\": \"128Mi\",\n \"readinessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"initialDelaySeconds\": 123,\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123\n },\n \"livenessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123,\n \"initialDelaySeconds\": 123\n },\n \"cpu\": \"50m\",\n \"minCpu\": \"<string>\",\n \"minMemory\": \"<string>\",\n \"env\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"gpu\": {\n \"nvidia\": {\n \"model\": {},\n \"quantity\": 123\n },\n \"custom\": {\n \"resource\": \"<string>\",\n \"runtimeClass\": \"<string>\",\n \"quantity\": 123\n }\n },\n \"inheritEnv\": true,\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"lifecycle\": {\n \"postStart\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n },\n \"preStop\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n }\n },\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n ],\n \"firewallConfig\": {\n \"external\": {\n \"inboundAllowCIDR\": [\n \"<string>\"\n ],\n \"inboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"outboundAllowHostname\": [\n \"<string>\"\n ],\n \"outboundAllowPort\": [\n {\n \"protocol\": \"tcp\",\n \"number\": 123\n }\n ],\n \"outboundAllowCIDR\": [\n \"<string>\"\n ],\n \"outboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"http\": {\n \"inboundHeaderFilter\": [\n {\n \"key\": \"<string>\",\n \"allowedValues\": [\n \"<string>\"\n ],\n \"blockedValues\": [\n \"<string>\"\n ]\n }\n ]\n }\n },\n \"internal\": {\n \"inboundAllowType\": \"none\",\n \"inboundAllowWorkload\": [\n \"<string>\"\n ]\n }\n },\n \"defaultOptions\": {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n }\n },\n \"localOptions\": [\n {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n },\n \"location\": \"<string>\"\n }\n ],\n \"job\": {\n \"schedule\": \"<string>\",\n \"concurrencyPolicy\": \"Forbid\",\n \"historyLimit\": 123,\n \"activeDeadlineSeconds\": 123\n },\n \"sidecar\": {\n \"envoy\": {\n \"accessLog\": [\n {\n \"priority\": 123,\n \"name\": \"envoy.http_grpc_access_log\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"typed_config\": {\n \"@type\": {},\n \"common_config\": {\n \"log_name\": \"<string>\",\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"buffer_flush_interval\": \"<string>\",\n \"buffer_size_bytes\": 123,\n \"filter_state_objects_to_log\": [\n \"<string>\"\n ],\n \"grpc_stream_retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"additional_request_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_trailers_to_log\": [\n \"<string>\"\n ]\n }\n }\n ],\n \"clusters\": [\n {\n \"name\": \"<string>\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"transport_socket_matches\": {},\n \"alt_stat_name\": {},\n \"cluster_type\": {},\n \"eds_cluster_config\": {},\n \"connect_timeout\": {},\n \"per_connection_buffer_limit_bytes\": {},\n \"lb_policy\": {},\n \"load_assignment\": {\n \"cluster_name\": \"<string>\",\n \"endpoints\": {},\n \"policy\": {}\n },\n \"health_checks\": {},\n \"max_requests_per_connection\": {},\n \"circuit_breakers\": {},\n \"upstream_http_protocol_options\": {},\n \"common_http_protocol_options\": {},\n \"http_protocol_options\": {},\n \"http2_protocol_options\": {},\n \"typed_extension_protocol_options\": {},\n \"dns_refresh_rate\": {},\n \"dns_failure_refresh_rate\": {},\n \"respect_dns_ttl\": {},\n \"dns_lookup_family\": {},\n \"dns_resolvers\": {},\n \"use_tcp_for_dns_lookups\": {},\n \"dns_resolution_config\": {},\n \"typed_dns_resolver_config\": {},\n \"wait_for_warm_on_init\": {},\n \"outlier_detection\": {},\n \"cleanup_interval\": {},\n \"upstream_bind_config\": {},\n \"lb_subset_config\": {},\n \"ring_hash_lb_config\": {},\n \"maglev_lb_config\": {},\n \"least_request_lb_config\": {},\n \"common_lb_config\": {},\n \"transport_socket\": {},\n \"metadata\": {},\n \"protocol_selection\": {},\n \"upstream_connection_options\": {},\n \"close_connections_on_host_health_failure\": {},\n \"ignore_health_on_host_removal\": {},\n \"filters\": {},\n \"load_balancing_policy\": {},\n \"track_timeout_budgets\": {},\n \"upstream_config\": {},\n \"track_cluster_stats\": {},\n \"preconnect_policy\": {},\n \"connection_pool_per_downstream_connection\": {}\n }\n ],\n \"excludedExternalAuth\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"excludedRateLimit\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"http\": [\n {\n \"priority\": 123,\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"name\": \"envoy.filters.http.ext_authz\",\n \"typed_config\": {\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"http_service\": {\n \"server_uri\": {\n \"uri\": \"<string>\",\n \"cluster\": \"<string>\",\n \"timeout\": \"<string>\"\n },\n \"path_prefix\": \"<string>\",\n \"authorization_request\": {\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"headers_to_add\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"authorization_response\": {\n \"allowed_upstream_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_upstream_headers_to_append\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers_on_success\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"dynamic_metadata_from_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n }\n }\n },\n \"failure_mode_allow\": true,\n \"failure_mode_allow_header_add\": true,\n \"with_request_body\": {\n \"max_request_bytes\": 123,\n \"allow_partial_message\": true,\n \"pack_as_bytes\": true\n },\n \"clear_route_cache\": true,\n \"status_on_error\": {},\n \"metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"filter_enabled\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"deny_at_disable\": {\n \"default_value\": true,\n \"runtime_key\": \"<string>\"\n },\n \"include_peer_certificate\": true,\n \"stat_prefix\": \"<string>\",\n \"bootstrap_metadata_labels_key\": \"<string>\",\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"include_tls_session\": true,\n \"charge_cluster_response_stats\": true,\n \"@type\": \"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz\"\n }\n }\n ],\n \"network\": [\n {}\n ],\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n },\n \"supportDynamicTags\": true,\n \"rolloutOptions\": {\n \"minReadySeconds\": 123,\n \"maxUnavailableReplicas\": \"<string>\",\n \"maxSurgeReplicas\": \"<string>\",\n \"scalingPolicy\": \"OrderedReady\",\n \"terminationGracePeriodSeconds\": 123\n },\n \"securityOptions\": {\n \"filesystemGroupId\": 123,\n \"runAsUser\": 123\n },\n \"loadBalancer\": {\n \"direct\": {\n \"enabled\": true,\n \"ports\": [\n {\n \"externalPort\": 123,\n \"containerPort\": 123\n }\n ],\n \"ipSet\": \"<string>\"\n },\n \"geoLocation\": {\n \"enabled\": true,\n \"headers\": {\n \"asn\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"region\": \"<string>\"\n }\n },\n \"replicaDirect\": true\n },\n \"extras\": {\n \"affinity\": {},\n \"tolerations\": [\n {}\n ],\n \"topologySpreadConstraints\": [\n {}\n ]\n },\n \"requestRetryPolicy\": {\n \"attempts\": 123,\n \"retryOn\": [\n \"<string>\"\n ]\n },\n \"vm\": {\n \"bootDisk\": {\n \"source\": {\n \"oci\": {\n \"image\": \"<string>\"\n },\n \"http\": {\n \"url\": \"<string>\",\n \"checksum\": \"<string>\"\n }\n },\n \"persist\": {\n \"volumeSet\": \"<string>\"\n },\n \"bus\": \"virtio\",\n \"bootOrder\": 123\n },\n \"cpu\": {\n \"sockets\": 123,\n \"threads\": 123\n },\n \"firmware\": {\n \"bootloader\": \"efi\",\n \"secureBoot\": true,\n \"uuid\": \"<string>\",\n \"serial\": \"<string>\",\n \"smbios\": {\n \"manufacturer\": \"<string>\",\n \"product\": \"<string>\",\n \"version\": \"<string>\",\n \"sku\": \"<string>\",\n \"family\": \"<string>\"\n }\n },\n \"guestOS\": \"linux\",\n \"networks\": [\n {\n \"name\": \"default\"\n }\n ],\n \"cloudInit\": {\n \"userData\": \"<string>\",\n \"userDataBase64\": \"<string>\",\n \"userDataSecret\": \"<string>\",\n \"sshPublicKeySecrets\": [\n \"<string>\"\n ]\n },\n \"accessCredentials\": [\n {\n \"sshPublicKeySecret\": \"<string>\",\n \"users\": [\n \"<string>\"\n ],\n \"deliveryMethod\": \"qemuGuestAgent\"\n }\n ],\n \"runStrategy\": \"Always\",\n \"clock\": {\n \"timezone\": \"UTC\"\n },\n \"hostname\": \"<string>\",\n \"subdomain\": \"<string>\"\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.cpln.io/org/{org}/gvc/{gvc}/workload")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"description\": \"<string>\",\n \"tags\": {},\n \"name\": \"<string>\",\n \"health\": {\n \"readiness\": \"<string>\",\n \"syncFailed\": true,\n \"readyLocations\": 123,\n \"totalLocations\": 123,\n \"readyReplicas\": 123,\n \"totalReplicas\": 123\n },\n \"spec\": {\n \"type\": \"serverless\",\n \"identityLink\": \"<string>\",\n \"containers\": [\n {\n \"name\": \"<string>\",\n \"image\": \"<string>\",\n \"workingDir\": \"<string>\",\n \"metrics\": {\n \"port\": 123,\n \"path\": \"/metrics\",\n \"dropMetrics\": [\n \"<string>\"\n ]\n },\n \"port\": 123,\n \"ports\": [\n {\n \"protocol\": \"http\",\n \"number\": 123\n }\n ],\n \"memory\": \"128Mi\",\n \"readinessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"initialDelaySeconds\": 123,\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123\n },\n \"livenessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123,\n \"initialDelaySeconds\": 123\n },\n \"cpu\": \"50m\",\n \"minCpu\": \"<string>\",\n \"minMemory\": \"<string>\",\n \"env\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"gpu\": {\n \"nvidia\": {\n \"model\": {},\n \"quantity\": 123\n },\n \"custom\": {\n \"resource\": \"<string>\",\n \"runtimeClass\": \"<string>\",\n \"quantity\": 123\n }\n },\n \"inheritEnv\": true,\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"lifecycle\": {\n \"postStart\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n },\n \"preStop\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n }\n },\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n ],\n \"firewallConfig\": {\n \"external\": {\n \"inboundAllowCIDR\": [\n \"<string>\"\n ],\n \"inboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"outboundAllowHostname\": [\n \"<string>\"\n ],\n \"outboundAllowPort\": [\n {\n \"protocol\": \"tcp\",\n \"number\": 123\n }\n ],\n \"outboundAllowCIDR\": [\n \"<string>\"\n ],\n \"outboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"http\": {\n \"inboundHeaderFilter\": [\n {\n \"key\": \"<string>\",\n \"allowedValues\": [\n \"<string>\"\n ],\n \"blockedValues\": [\n \"<string>\"\n ]\n }\n ]\n }\n },\n \"internal\": {\n \"inboundAllowType\": \"none\",\n \"inboundAllowWorkload\": [\n \"<string>\"\n ]\n }\n },\n \"defaultOptions\": {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n }\n },\n \"localOptions\": [\n {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n },\n \"location\": \"<string>\"\n }\n ],\n \"job\": {\n \"schedule\": \"<string>\",\n \"concurrencyPolicy\": \"Forbid\",\n \"historyLimit\": 123,\n \"activeDeadlineSeconds\": 123\n },\n \"sidecar\": {\n \"envoy\": {\n \"accessLog\": [\n {\n \"priority\": 123,\n \"name\": \"envoy.http_grpc_access_log\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"typed_config\": {\n \"@type\": {},\n \"common_config\": {\n \"log_name\": \"<string>\",\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"buffer_flush_interval\": \"<string>\",\n \"buffer_size_bytes\": 123,\n \"filter_state_objects_to_log\": [\n \"<string>\"\n ],\n \"grpc_stream_retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"additional_request_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_trailers_to_log\": [\n \"<string>\"\n ]\n }\n }\n ],\n \"clusters\": [\n {\n \"name\": \"<string>\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"transport_socket_matches\": {},\n \"alt_stat_name\": {},\n \"cluster_type\": {},\n \"eds_cluster_config\": {},\n \"connect_timeout\": {},\n \"per_connection_buffer_limit_bytes\": {},\n \"lb_policy\": {},\n \"load_assignment\": {\n \"cluster_name\": \"<string>\",\n \"endpoints\": {},\n \"policy\": {}\n },\n \"health_checks\": {},\n \"max_requests_per_connection\": {},\n \"circuit_breakers\": {},\n \"upstream_http_protocol_options\": {},\n \"common_http_protocol_options\": {},\n \"http_protocol_options\": {},\n \"http2_protocol_options\": {},\n \"typed_extension_protocol_options\": {},\n \"dns_refresh_rate\": {},\n \"dns_failure_refresh_rate\": {},\n \"respect_dns_ttl\": {},\n \"dns_lookup_family\": {},\n \"dns_resolvers\": {},\n \"use_tcp_for_dns_lookups\": {},\n \"dns_resolution_config\": {},\n \"typed_dns_resolver_config\": {},\n \"wait_for_warm_on_init\": {},\n \"outlier_detection\": {},\n \"cleanup_interval\": {},\n \"upstream_bind_config\": {},\n \"lb_subset_config\": {},\n \"ring_hash_lb_config\": {},\n \"maglev_lb_config\": {},\n \"least_request_lb_config\": {},\n \"common_lb_config\": {},\n \"transport_socket\": {},\n \"metadata\": {},\n \"protocol_selection\": {},\n \"upstream_connection_options\": {},\n \"close_connections_on_host_health_failure\": {},\n \"ignore_health_on_host_removal\": {},\n \"filters\": {},\n \"load_balancing_policy\": {},\n \"track_timeout_budgets\": {},\n \"upstream_config\": {},\n \"track_cluster_stats\": {},\n \"preconnect_policy\": {},\n \"connection_pool_per_downstream_connection\": {}\n }\n ],\n \"excludedExternalAuth\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"excludedRateLimit\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"http\": [\n {\n \"priority\": 123,\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"name\": \"envoy.filters.http.ext_authz\",\n \"typed_config\": {\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"http_service\": {\n \"server_uri\": {\n \"uri\": \"<string>\",\n \"cluster\": \"<string>\",\n \"timeout\": \"<string>\"\n },\n \"path_prefix\": \"<string>\",\n \"authorization_request\": {\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"headers_to_add\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"authorization_response\": {\n \"allowed_upstream_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_upstream_headers_to_append\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers_on_success\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"dynamic_metadata_from_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n }\n }\n },\n \"failure_mode_allow\": true,\n \"failure_mode_allow_header_add\": true,\n \"with_request_body\": {\n \"max_request_bytes\": 123,\n \"allow_partial_message\": true,\n \"pack_as_bytes\": true\n },\n \"clear_route_cache\": true,\n \"status_on_error\": {},\n \"metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"filter_enabled\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"deny_at_disable\": {\n \"default_value\": true,\n \"runtime_key\": \"<string>\"\n },\n \"include_peer_certificate\": true,\n \"stat_prefix\": \"<string>\",\n \"bootstrap_metadata_labels_key\": \"<string>\",\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"include_tls_session\": true,\n \"charge_cluster_response_stats\": true,\n \"@type\": \"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz\"\n }\n }\n ],\n \"network\": [\n {}\n ],\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n },\n \"supportDynamicTags\": true,\n \"rolloutOptions\": {\n \"minReadySeconds\": 123,\n \"maxUnavailableReplicas\": \"<string>\",\n \"maxSurgeReplicas\": \"<string>\",\n \"scalingPolicy\": \"OrderedReady\",\n \"terminationGracePeriodSeconds\": 123\n },\n \"securityOptions\": {\n \"filesystemGroupId\": 123,\n \"runAsUser\": 123\n },\n \"loadBalancer\": {\n \"direct\": {\n \"enabled\": true,\n \"ports\": [\n {\n \"externalPort\": 123,\n \"containerPort\": 123\n }\n ],\n \"ipSet\": \"<string>\"\n },\n \"geoLocation\": {\n \"enabled\": true,\n \"headers\": {\n \"asn\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"region\": \"<string>\"\n }\n },\n \"replicaDirect\": true\n },\n \"extras\": {\n \"affinity\": {},\n \"tolerations\": [\n {}\n ],\n \"topologySpreadConstraints\": [\n {}\n ]\n },\n \"requestRetryPolicy\": {\n \"attempts\": 123,\n \"retryOn\": [\n \"<string>\"\n ]\n },\n \"vm\": {\n \"bootDisk\": {\n \"source\": {\n \"oci\": {\n \"image\": \"<string>\"\n },\n \"http\": {\n \"url\": \"<string>\",\n \"checksum\": \"<string>\"\n }\n },\n \"persist\": {\n \"volumeSet\": \"<string>\"\n },\n \"bus\": \"virtio\",\n \"bootOrder\": 123\n },\n \"cpu\": {\n \"sockets\": 123,\n \"threads\": 123\n },\n \"firmware\": {\n \"bootloader\": \"efi\",\n \"secureBoot\": true,\n \"uuid\": \"<string>\",\n \"serial\": \"<string>\",\n \"smbios\": {\n \"manufacturer\": \"<string>\",\n \"product\": \"<string>\",\n \"version\": \"<string>\",\n \"sku\": \"<string>\",\n \"family\": \"<string>\"\n }\n },\n \"guestOS\": \"linux\",\n \"networks\": [\n {\n \"name\": \"default\"\n }\n ],\n \"cloudInit\": {\n \"userData\": \"<string>\",\n \"userDataBase64\": \"<string>\",\n \"userDataSecret\": \"<string>\",\n \"sshPublicKeySecrets\": [\n \"<string>\"\n ]\n },\n \"accessCredentials\": [\n {\n \"sshPublicKeySecret\": \"<string>\",\n \"users\": [\n \"<string>\"\n ],\n \"deliveryMethod\": \"qemuGuestAgent\"\n }\n ],\n \"runStrategy\": \"Always\",\n \"clock\": {\n \"timezone\": \"UTC\"\n },\n \"hostname\": \"<string>\",\n \"subdomain\": \"<string>\"\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cpln.io/org/{org}/gvc/{gvc}/workload")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"description\": \"<string>\",\n \"tags\": {},\n \"name\": \"<string>\",\n \"health\": {\n \"readiness\": \"<string>\",\n \"syncFailed\": true,\n \"readyLocations\": 123,\n \"totalLocations\": 123,\n \"readyReplicas\": 123,\n \"totalReplicas\": 123\n },\n \"spec\": {\n \"type\": \"serverless\",\n \"identityLink\": \"<string>\",\n \"containers\": [\n {\n \"name\": \"<string>\",\n \"image\": \"<string>\",\n \"workingDir\": \"<string>\",\n \"metrics\": {\n \"port\": 123,\n \"path\": \"/metrics\",\n \"dropMetrics\": [\n \"<string>\"\n ]\n },\n \"port\": 123,\n \"ports\": [\n {\n \"protocol\": \"http\",\n \"number\": 123\n }\n ],\n \"memory\": \"128Mi\",\n \"readinessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"initialDelaySeconds\": 123,\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123\n },\n \"livenessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123,\n \"initialDelaySeconds\": 123\n },\n \"cpu\": \"50m\",\n \"minCpu\": \"<string>\",\n \"minMemory\": \"<string>\",\n \"env\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"gpu\": {\n \"nvidia\": {\n \"model\": {},\n \"quantity\": 123\n },\n \"custom\": {\n \"resource\": \"<string>\",\n \"runtimeClass\": \"<string>\",\n \"quantity\": 123\n }\n },\n \"inheritEnv\": true,\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"lifecycle\": {\n \"postStart\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n },\n \"preStop\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n }\n },\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n ],\n \"firewallConfig\": {\n \"external\": {\n \"inboundAllowCIDR\": [\n \"<string>\"\n ],\n \"inboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"outboundAllowHostname\": [\n \"<string>\"\n ],\n \"outboundAllowPort\": [\n {\n \"protocol\": \"tcp\",\n \"number\": 123\n }\n ],\n \"outboundAllowCIDR\": [\n \"<string>\"\n ],\n \"outboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"http\": {\n \"inboundHeaderFilter\": [\n {\n \"key\": \"<string>\",\n \"allowedValues\": [\n \"<string>\"\n ],\n \"blockedValues\": [\n \"<string>\"\n ]\n }\n ]\n }\n },\n \"internal\": {\n \"inboundAllowType\": \"none\",\n \"inboundAllowWorkload\": [\n \"<string>\"\n ]\n }\n },\n \"defaultOptions\": {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n }\n },\n \"localOptions\": [\n {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n },\n \"location\": \"<string>\"\n }\n ],\n \"job\": {\n \"schedule\": \"<string>\",\n \"concurrencyPolicy\": \"Forbid\",\n \"historyLimit\": 123,\n \"activeDeadlineSeconds\": 123\n },\n \"sidecar\": {\n \"envoy\": {\n \"accessLog\": [\n {\n \"priority\": 123,\n \"name\": \"envoy.http_grpc_access_log\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"typed_config\": {\n \"@type\": {},\n \"common_config\": {\n \"log_name\": \"<string>\",\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"buffer_flush_interval\": \"<string>\",\n \"buffer_size_bytes\": 123,\n \"filter_state_objects_to_log\": [\n \"<string>\"\n ],\n \"grpc_stream_retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"additional_request_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_trailers_to_log\": [\n \"<string>\"\n ]\n }\n }\n ],\n \"clusters\": [\n {\n \"name\": \"<string>\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"transport_socket_matches\": {},\n \"alt_stat_name\": {},\n \"cluster_type\": {},\n \"eds_cluster_config\": {},\n \"connect_timeout\": {},\n \"per_connection_buffer_limit_bytes\": {},\n \"lb_policy\": {},\n \"load_assignment\": {\n \"cluster_name\": \"<string>\",\n \"endpoints\": {},\n \"policy\": {}\n },\n \"health_checks\": {},\n \"max_requests_per_connection\": {},\n \"circuit_breakers\": {},\n \"upstream_http_protocol_options\": {},\n \"common_http_protocol_options\": {},\n \"http_protocol_options\": {},\n \"http2_protocol_options\": {},\n \"typed_extension_protocol_options\": {},\n \"dns_refresh_rate\": {},\n \"dns_failure_refresh_rate\": {},\n \"respect_dns_ttl\": {},\n \"dns_lookup_family\": {},\n \"dns_resolvers\": {},\n \"use_tcp_for_dns_lookups\": {},\n \"dns_resolution_config\": {},\n \"typed_dns_resolver_config\": {},\n \"wait_for_warm_on_init\": {},\n \"outlier_detection\": {},\n \"cleanup_interval\": {},\n \"upstream_bind_config\": {},\n \"lb_subset_config\": {},\n \"ring_hash_lb_config\": {},\n \"maglev_lb_config\": {},\n \"least_request_lb_config\": {},\n \"common_lb_config\": {},\n \"transport_socket\": {},\n \"metadata\": {},\n \"protocol_selection\": {},\n \"upstream_connection_options\": {},\n \"close_connections_on_host_health_failure\": {},\n \"ignore_health_on_host_removal\": {},\n \"filters\": {},\n \"load_balancing_policy\": {},\n \"track_timeout_budgets\": {},\n \"upstream_config\": {},\n \"track_cluster_stats\": {},\n \"preconnect_policy\": {},\n \"connection_pool_per_downstream_connection\": {}\n }\n ],\n \"excludedExternalAuth\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"excludedRateLimit\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"http\": [\n {\n \"priority\": 123,\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"name\": \"envoy.filters.http.ext_authz\",\n \"typed_config\": {\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"http_service\": {\n \"server_uri\": {\n \"uri\": \"<string>\",\n \"cluster\": \"<string>\",\n \"timeout\": \"<string>\"\n },\n \"path_prefix\": \"<string>\",\n \"authorization_request\": {\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"headers_to_add\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"authorization_response\": {\n \"allowed_upstream_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_upstream_headers_to_append\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers_on_success\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"dynamic_metadata_from_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n }\n }\n },\n \"failure_mode_allow\": true,\n \"failure_mode_allow_header_add\": true,\n \"with_request_body\": {\n \"max_request_bytes\": 123,\n \"allow_partial_message\": true,\n \"pack_as_bytes\": true\n },\n \"clear_route_cache\": true,\n \"status_on_error\": {},\n \"metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"filter_enabled\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"deny_at_disable\": {\n \"default_value\": true,\n \"runtime_key\": \"<string>\"\n },\n \"include_peer_certificate\": true,\n \"stat_prefix\": \"<string>\",\n \"bootstrap_metadata_labels_key\": \"<string>\",\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"include_tls_session\": true,\n \"charge_cluster_response_stats\": true,\n \"@type\": \"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz\"\n }\n }\n ],\n \"network\": [\n {}\n ],\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n },\n \"supportDynamicTags\": true,\n \"rolloutOptions\": {\n \"minReadySeconds\": 123,\n \"maxUnavailableReplicas\": \"<string>\",\n \"maxSurgeReplicas\": \"<string>\",\n \"scalingPolicy\": \"OrderedReady\",\n \"terminationGracePeriodSeconds\": 123\n },\n \"securityOptions\": {\n \"filesystemGroupId\": 123,\n \"runAsUser\": 123\n },\n \"loadBalancer\": {\n \"direct\": {\n \"enabled\": true,\n \"ports\": [\n {\n \"externalPort\": 123,\n \"containerPort\": 123\n }\n ],\n \"ipSet\": \"<string>\"\n },\n \"geoLocation\": {\n \"enabled\": true,\n \"headers\": {\n \"asn\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"region\": \"<string>\"\n }\n },\n \"replicaDirect\": true\n },\n \"extras\": {\n \"affinity\": {},\n \"tolerations\": [\n {}\n ],\n \"topologySpreadConstraints\": [\n {}\n ]\n },\n \"requestRetryPolicy\": {\n \"attempts\": 123,\n \"retryOn\": [\n \"<string>\"\n ]\n },\n \"vm\": {\n \"bootDisk\": {\n \"source\": {\n \"oci\": {\n \"image\": \"<string>\"\n },\n \"http\": {\n \"url\": \"<string>\",\n \"checksum\": \"<string>\"\n }\n },\n \"persist\": {\n \"volumeSet\": \"<string>\"\n },\n \"bus\": \"virtio\",\n \"bootOrder\": 123\n },\n \"cpu\": {\n \"sockets\": 123,\n \"threads\": 123\n },\n \"firmware\": {\n \"bootloader\": \"efi\",\n \"secureBoot\": true,\n \"uuid\": \"<string>\",\n \"serial\": \"<string>\",\n \"smbios\": {\n \"manufacturer\": \"<string>\",\n \"product\": \"<string>\",\n \"version\": \"<string>\",\n \"sku\": \"<string>\",\n \"family\": \"<string>\"\n }\n },\n \"guestOS\": \"linux\",\n \"networks\": [\n {\n \"name\": \"default\"\n }\n ],\n \"cloudInit\": {\n \"userData\": \"<string>\",\n \"userDataBase64\": \"<string>\",\n \"userDataSecret\": \"<string>\",\n \"sshPublicKeySecrets\": [\n \"<string>\"\n ]\n },\n \"accessCredentials\": [\n {\n \"sshPublicKeySecret\": \"<string>\",\n \"users\": [\n \"<string>\"\n ],\n \"deliveryMethod\": \"qemuGuestAgent\"\n }\n ],\n \"runStrategy\": \"Always\",\n \"clock\": {\n \"timezone\": \"UTC\"\n },\n \"hostname\": \"<string>\",\n \"subdomain\": \"<string>\"\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"status": 123,
"message": "<string>",
"code": "<string>",
"details": {},
"id": "<string>"
}{
"status": 123,
"message": "<string>",
"code": "<string>",
"details": {},
"id": "<string>"
}Workload
Create a workload
POST
/
org
/
{org}
/
gvc
/
{gvc}
/
workload
Create a workload
curl --request POST \
--url https://api.cpln.io/org/{org}/gvc/{gvc}/workload \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"description": "<string>",
"tags": {},
"name": "<string>",
"health": {
"readiness": "<string>",
"syncFailed": true,
"readyLocations": 123,
"totalLocations": 123,
"readyReplicas": 123,
"totalReplicas": 123
},
"spec": {
"type": "serverless",
"identityLink": "<string>",
"containers": [
{
"name": "<string>",
"image": "<string>",
"workingDir": "<string>",
"metrics": {
"port": 123,
"path": "/metrics",
"dropMetrics": [
"<string>"
]
},
"port": 123,
"ports": [
{
"protocol": "http",
"number": 123
}
],
"memory": "128Mi",
"readinessProbe": {
"exec": {
"command": [
"<string>"
]
},
"grpc": {
"port": 123
},
"tcpSocket": {
"port": 123
},
"httpGet": {
"path": "/",
"port": 123,
"httpHeaders": [
{
"name": "<string>",
"value": "<string>"
}
],
"scheme": "HTTP"
},
"initialDelaySeconds": 123,
"periodSeconds": 123,
"timeoutSeconds": 123,
"successThreshold": 123,
"failureThreshold": 123
},
"livenessProbe": {
"exec": {
"command": [
"<string>"
]
},
"grpc": {
"port": 123
},
"tcpSocket": {
"port": 123
},
"httpGet": {
"path": "/",
"port": 123,
"httpHeaders": [
{
"name": "<string>",
"value": "<string>"
}
],
"scheme": "HTTP"
},
"periodSeconds": 123,
"timeoutSeconds": 123,
"successThreshold": 123,
"failureThreshold": 123,
"initialDelaySeconds": 123
},
"cpu": "50m",
"minCpu": "<string>",
"minMemory": "<string>",
"env": [
{
"name": "<string>",
"value": "<string>"
}
],
"gpu": {
"nvidia": {
"model": {},
"quantity": 123
},
"custom": {
"resource": "<string>",
"runtimeClass": "<string>",
"quantity": 123
}
},
"inheritEnv": true,
"command": "<string>",
"args": [
"<string>"
],
"lifecycle": {
"postStart": {
"exec": {
"command": [
"<string>"
]
}
},
"preStop": {
"exec": {
"command": [
"<string>"
]
}
}
},
"volumes": [
{
"uri": "<string>",
"recoveryPolicy": "retain",
"path": "<string>",
"name": "<string>",
"bootOrder": 123
}
]
}
],
"firewallConfig": {
"external": {
"inboundAllowCIDR": [
"<string>"
],
"inboundBlockedCIDR": [
"<string>"
],
"outboundAllowHostname": [
"<string>"
],
"outboundAllowPort": [
{
"protocol": "tcp",
"number": 123
}
],
"outboundAllowCIDR": [
"<string>"
],
"outboundBlockedCIDR": [
"<string>"
],
"http": {
"inboundHeaderFilter": [
{
"key": "<string>",
"allowedValues": [
"<string>"
],
"blockedValues": [
"<string>"
]
}
]
}
},
"internal": {
"inboundAllowType": "none",
"inboundAllowWorkload": [
"<string>"
]
}
},
"defaultOptions": {
"autoscaling": {
"multi": [
{
"metric": {},
"target": 123
}
],
"target": 123,
"maxScale": 123,
"minScale": 123,
"scaleToZeroDelay": 123,
"maxConcurrency": 123,
"keda": {
"triggers": [
{
"type": "<string>",
"metadata": {},
"name": "<string>",
"useCachedMetrics": true,
"authenticationRef": {
"name": "<string>"
}
}
],
"advanced": {
"scalingModifiers": {
"target": "<string>",
"activationTarget": "<string>",
"formula": "<string>"
}
},
"fallback": {
"failureThreshold": 123,
"replicas": 123
},
"pollingInterval": 123,
"cooldownPeriod": 123,
"initialCooldownPeriod": 123
}
},
"timeoutSeconds": 123,
"capacityAI": true,
"capacityAIUpdateMinutes": 123,
"spot": true,
"debug": true,
"suspend": true,
"multiZone": {
"enabled": true
}
},
"localOptions": [
{
"autoscaling": {
"multi": [
{
"metric": {},
"target": 123
}
],
"target": 123,
"maxScale": 123,
"minScale": 123,
"scaleToZeroDelay": 123,
"maxConcurrency": 123,
"keda": {
"triggers": [
{
"type": "<string>",
"metadata": {},
"name": "<string>",
"useCachedMetrics": true,
"authenticationRef": {
"name": "<string>"
}
}
],
"advanced": {
"scalingModifiers": {
"target": "<string>",
"activationTarget": "<string>",
"formula": "<string>"
}
},
"fallback": {
"failureThreshold": 123,
"replicas": 123
},
"pollingInterval": 123,
"cooldownPeriod": 123,
"initialCooldownPeriod": 123
}
},
"timeoutSeconds": 123,
"capacityAI": true,
"capacityAIUpdateMinutes": 123,
"spot": true,
"debug": true,
"suspend": true,
"multiZone": {
"enabled": true
},
"location": "<string>"
}
],
"job": {
"schedule": "<string>",
"concurrencyPolicy": "Forbid",
"historyLimit": 123,
"activeDeadlineSeconds": 123
},
"sidecar": {
"envoy": {
"accessLog": [
{
"priority": 123,
"name": "envoy.http_grpc_access_log",
"excludedWorkloads": [
"<string>"
],
"typed_config": {
"@type": {},
"common_config": {
"log_name": "<string>",
"grpc_service": {
"envoy_grpc": {
"cluster_name": "<string>",
"authority": {
"adjust": null,
"in": false,
"iterables": null,
"map": null,
"separator": ".",
"type": "value",
"ancestor": 1,
"path": [
"cluster_name"
],
"depth": 1,
"key": "cluster_name",
"root": "cluster_name",
"display": "ref:cluster_name"
},
"retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"google_grpc": {
"target_uri": "<string>",
"channel_credentials": {
"ssl_credentials": {
"root_certs": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"private_key": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"cert_chain": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
}
},
"google_default": {}
},
"call_credentials": [
{
"access_token": "<string>",
"google_compute_engine": {},
"google_refresh_token": "<string>",
"service_account_jwt_access": {
"json_key": "<string>",
"token_lifetime_seconds": 123
},
"google_iam": {
"authorization_token": "<string>",
"authority_selector": "<string>"
},
"from_plugin": {
"name": "<string>",
"typed_config": {}
},
"sts_service": {
"token_exchange_service_uri": "<string>",
"resource": "<string>",
"audience": "<string>",
"scope": "<string>",
"requested_token_type": "<string>",
"subject_token_path": "<string>",
"subject_token_type": "<string>",
"actor_token_path": "<string>",
"actor_token_type": "<string>"
}
}
],
"stat_prefix": "<string>",
"credentials_factory_name": "<string>",
"config": {}
},
"timeout": "<string>",
"initial_metadata": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"buffer_flush_interval": "<string>",
"buffer_size_bytes": 123,
"filter_state_objects_to_log": [
"<string>"
],
"grpc_stream_retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"additional_request_headers_to_log": [
"<string>"
],
"additional_response_headers_to_log": [
"<string>"
],
"additional_response_trailers_to_log": [
"<string>"
]
}
}
],
"clusters": [
{
"name": "<string>",
"excludedWorkloads": [
"<string>"
],
"transport_socket_matches": {},
"alt_stat_name": {},
"cluster_type": {},
"eds_cluster_config": {},
"connect_timeout": {},
"per_connection_buffer_limit_bytes": {},
"lb_policy": {},
"load_assignment": {
"cluster_name": "<string>",
"endpoints": {},
"policy": {}
},
"health_checks": {},
"max_requests_per_connection": {},
"circuit_breakers": {},
"upstream_http_protocol_options": {},
"common_http_protocol_options": {},
"http_protocol_options": {},
"http2_protocol_options": {},
"typed_extension_protocol_options": {},
"dns_refresh_rate": {},
"dns_failure_refresh_rate": {},
"respect_dns_ttl": {},
"dns_lookup_family": {},
"dns_resolvers": {},
"use_tcp_for_dns_lookups": {},
"dns_resolution_config": {},
"typed_dns_resolver_config": {},
"wait_for_warm_on_init": {},
"outlier_detection": {},
"cleanup_interval": {},
"upstream_bind_config": {},
"lb_subset_config": {},
"ring_hash_lb_config": {},
"maglev_lb_config": {},
"least_request_lb_config": {},
"common_lb_config": {},
"transport_socket": {},
"metadata": {},
"protocol_selection": {},
"upstream_connection_options": {},
"close_connections_on_host_health_failure": {},
"ignore_health_on_host_removal": {},
"filters": {},
"load_balancing_policy": {},
"track_timeout_budgets": {},
"upstream_config": {},
"track_cluster_stats": {},
"preconnect_policy": {},
"connection_pool_per_downstream_connection": {}
}
],
"excludedExternalAuth": [
{
"match": {
"prefix": "<string>",
"path": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"path_separated_prefix": "<string>",
"path_match_policy": {
"name": "<string>",
"typed_config": {}
},
"case_sensitive": true,
"runtime_fraction": {
"default_value": {
"numerator": 123,
"denominator": 123
},
"runtime_key": "<string>"
},
"headers": [
{
"name": "<string>",
"safe_regex_match": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"range_match": {
"start": 123,
"end": 123
},
"present_match": true,
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"invert_match": true,
"treat_missing_header_as_empty": true
}
],
"query_parameters": [
{
"name": "<string>",
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"present_match": true
}
],
"grpc": {
"presented": true,
"validated": true
},
"tls_context": {
"presented": true,
"validated": true
},
"dynamic_metadata": [
{
"filter": "<string>",
"path": [
{
"key": "<string>"
}
],
"value": {
"null_match": {},
"double_match": {
"range": {
"start": 123,
"end": 123
},
"exact": 123
},
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"bool_match": true,
"present_match": true
},
"invert": true
}
]
},
"port": 123,
"svcPort": 123
}
],
"excludedRateLimit": [
{
"match": {
"prefix": "<string>",
"path": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"path_separated_prefix": "<string>",
"path_match_policy": {
"name": "<string>",
"typed_config": {}
},
"case_sensitive": true,
"runtime_fraction": {
"default_value": {
"numerator": 123,
"denominator": 123
},
"runtime_key": "<string>"
},
"headers": [
{
"name": "<string>",
"safe_regex_match": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"range_match": {
"start": 123,
"end": 123
},
"present_match": true,
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"invert_match": true,
"treat_missing_header_as_empty": true
}
],
"query_parameters": [
{
"name": "<string>",
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"present_match": true
}
],
"grpc": {
"presented": true,
"validated": true
},
"tls_context": {
"presented": true,
"validated": true
},
"dynamic_metadata": [
{
"filter": "<string>",
"path": [
{
"key": "<string>"
}
],
"value": {
"null_match": {},
"double_match": {
"range": {
"start": 123,
"end": 123
},
"exact": 123
},
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
},
"bool_match": true,
"present_match": true
},
"invert": true
}
]
},
"port": 123,
"svcPort": 123
}
],
"http": [
{
"priority": 123,
"excludedWorkloads": [
"<string>"
],
"name": "envoy.filters.http.ext_authz",
"typed_config": {
"grpc_service": {
"envoy_grpc": {
"cluster_name": "<string>",
"authority": {
"adjust": null,
"in": false,
"iterables": null,
"map": null,
"separator": ".",
"type": "value",
"ancestor": 1,
"path": [
"cluster_name"
],
"depth": 1,
"key": "cluster_name",
"root": "cluster_name",
"display": "ref:cluster_name"
},
"retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"google_grpc": {
"target_uri": "<string>",
"channel_credentials": {
"ssl_credentials": {
"root_certs": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"private_key": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"cert_chain": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
}
},
"google_default": {}
},
"call_credentials": [
{
"access_token": "<string>",
"google_compute_engine": {},
"google_refresh_token": "<string>",
"service_account_jwt_access": {
"json_key": "<string>",
"token_lifetime_seconds": 123
},
"google_iam": {
"authorization_token": "<string>",
"authority_selector": "<string>"
},
"from_plugin": {
"name": "<string>",
"typed_config": {}
},
"sts_service": {
"token_exchange_service_uri": "<string>",
"resource": "<string>",
"audience": "<string>",
"scope": "<string>",
"requested_token_type": "<string>",
"subject_token_path": "<string>",
"subject_token_type": "<string>",
"actor_token_path": "<string>",
"actor_token_type": "<string>"
}
}
],
"stat_prefix": "<string>",
"credentials_factory_name": "<string>",
"config": {}
},
"timeout": "<string>",
"initial_metadata": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"http_service": {
"server_uri": {
"uri": "<string>",
"cluster": "<string>",
"timeout": "<string>"
},
"path_prefix": "<string>",
"authorization_request": {
"allowed_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"headers_to_add": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"authorization_response": {
"allowed_upstream_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"allowed_upstream_headers_to_append": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"allowed_client_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"allowed_client_headers_on_success": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"dynamic_metadata_from_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
}
}
},
"failure_mode_allow": true,
"failure_mode_allow_header_add": true,
"with_request_body": {
"max_request_bytes": 123,
"allow_partial_message": true,
"pack_as_bytes": true
},
"clear_route_cache": true,
"status_on_error": {},
"metadata_context_namespaces": [
"<string>"
],
"typed_metadata_context_namespaces": [
"<string>"
],
"route_metadata_context_namespaces": [
"<string>"
],
"route_typed_metadata_context_namespaces": [
"<string>"
],
"filter_enabled": {
"numerator": 123,
"denominator": 123
},
"deny_at_disable": {
"default_value": true,
"runtime_key": "<string>"
},
"include_peer_certificate": true,
"stat_prefix": "<string>",
"bootstrap_metadata_labels_key": "<string>",
"allowed_headers": {
"patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": {
"max_program_size": 123
},
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": true
}
]
},
"include_tls_session": true,
"charge_cluster_response_stats": true,
"@type": "type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz"
}
}
],
"network": [
{}
],
"volumes": [
{
"uri": "<string>",
"recoveryPolicy": "retain",
"path": "<string>",
"name": "<string>",
"bootOrder": 123
}
]
}
},
"supportDynamicTags": true,
"rolloutOptions": {
"minReadySeconds": 123,
"maxUnavailableReplicas": "<string>",
"maxSurgeReplicas": "<string>",
"scalingPolicy": "OrderedReady",
"terminationGracePeriodSeconds": 123
},
"securityOptions": {
"filesystemGroupId": 123,
"runAsUser": 123
},
"loadBalancer": {
"direct": {
"enabled": true,
"ports": [
{
"externalPort": 123,
"containerPort": 123
}
],
"ipSet": "<string>"
},
"geoLocation": {
"enabled": true,
"headers": {
"asn": "<string>",
"city": "<string>",
"country": "<string>",
"region": "<string>"
}
},
"replicaDirect": true
},
"extras": {
"affinity": {},
"tolerations": [
{}
],
"topologySpreadConstraints": [
{}
]
},
"requestRetryPolicy": {
"attempts": 123,
"retryOn": [
"<string>"
]
},
"vm": {
"bootDisk": {
"source": {
"oci": {
"image": "<string>"
},
"http": {
"url": "<string>",
"checksum": "<string>"
}
},
"persist": {
"volumeSet": "<string>"
},
"bus": "virtio",
"bootOrder": 123
},
"cpu": {
"sockets": 123,
"threads": 123
},
"firmware": {
"bootloader": "efi",
"secureBoot": true,
"uuid": "<string>",
"serial": "<string>",
"smbios": {
"manufacturer": "<string>",
"product": "<string>",
"version": "<string>",
"sku": "<string>",
"family": "<string>"
}
},
"guestOS": "linux",
"networks": [
{
"name": "default"
}
],
"cloudInit": {
"userData": "<string>",
"userDataBase64": "<string>",
"userDataSecret": "<string>",
"sshPublicKeySecrets": [
"<string>"
]
},
"accessCredentials": [
{
"sshPublicKeySecret": "<string>",
"users": [
"<string>"
],
"deliveryMethod": "qemuGuestAgent"
}
],
"runStrategy": "Always",
"clock": {
"timezone": "UTC"
},
"hostname": "<string>",
"subdomain": "<string>"
}
}
}
'import requests
url = "https://api.cpln.io/org/{org}/gvc/{gvc}/workload"
payload = {
"description": "<string>",
"tags": {},
"name": "<string>",
"health": {
"readiness": "<string>",
"syncFailed": True,
"readyLocations": 123,
"totalLocations": 123,
"readyReplicas": 123,
"totalReplicas": 123
},
"spec": {
"type": "serverless",
"identityLink": "<string>",
"containers": [
{
"name": "<string>",
"image": "<string>",
"workingDir": "<string>",
"metrics": {
"port": 123,
"path": "/metrics",
"dropMetrics": ["<string>"]
},
"port": 123,
"ports": [
{
"protocol": "http",
"number": 123
}
],
"memory": "128Mi",
"readinessProbe": {
"exec": { "command": ["<string>"] },
"grpc": { "port": 123 },
"tcpSocket": { "port": 123 },
"httpGet": {
"path": "/",
"port": 123,
"httpHeaders": [
{
"name": "<string>",
"value": "<string>"
}
],
"scheme": "HTTP"
},
"initialDelaySeconds": 123,
"periodSeconds": 123,
"timeoutSeconds": 123,
"successThreshold": 123,
"failureThreshold": 123
},
"livenessProbe": {
"exec": { "command": ["<string>"] },
"grpc": { "port": 123 },
"tcpSocket": { "port": 123 },
"httpGet": {
"path": "/",
"port": 123,
"httpHeaders": [
{
"name": "<string>",
"value": "<string>"
}
],
"scheme": "HTTP"
},
"periodSeconds": 123,
"timeoutSeconds": 123,
"successThreshold": 123,
"failureThreshold": 123,
"initialDelaySeconds": 123
},
"cpu": "50m",
"minCpu": "<string>",
"minMemory": "<string>",
"env": [
{
"name": "<string>",
"value": "<string>"
}
],
"gpu": {
"nvidia": {
"model": {},
"quantity": 123
},
"custom": {
"resource": "<string>",
"runtimeClass": "<string>",
"quantity": 123
}
},
"inheritEnv": True,
"command": "<string>",
"args": ["<string>"],
"lifecycle": {
"postStart": { "exec": { "command": ["<string>"] } },
"preStop": { "exec": { "command": ["<string>"] } }
},
"volumes": [
{
"uri": "<string>",
"recoveryPolicy": "retain",
"path": "<string>",
"name": "<string>",
"bootOrder": 123
}
]
}
],
"firewallConfig": {
"external": {
"inboundAllowCIDR": ["<string>"],
"inboundBlockedCIDR": ["<string>"],
"outboundAllowHostname": ["<string>"],
"outboundAllowPort": [
{
"protocol": "tcp",
"number": 123
}
],
"outboundAllowCIDR": ["<string>"],
"outboundBlockedCIDR": ["<string>"],
"http": { "inboundHeaderFilter": [
{
"key": "<string>",
"allowedValues": ["<string>"],
"blockedValues": ["<string>"]
}
] }
},
"internal": {
"inboundAllowType": "none",
"inboundAllowWorkload": ["<string>"]
}
},
"defaultOptions": {
"autoscaling": {
"multi": [
{
"metric": {},
"target": 123
}
],
"target": 123,
"maxScale": 123,
"minScale": 123,
"scaleToZeroDelay": 123,
"maxConcurrency": 123,
"keda": {
"triggers": [
{
"type": "<string>",
"metadata": {},
"name": "<string>",
"useCachedMetrics": True,
"authenticationRef": { "name": "<string>" }
}
],
"advanced": { "scalingModifiers": {
"target": "<string>",
"activationTarget": "<string>",
"formula": "<string>"
} },
"fallback": {
"failureThreshold": 123,
"replicas": 123
},
"pollingInterval": 123,
"cooldownPeriod": 123,
"initialCooldownPeriod": 123
}
},
"timeoutSeconds": 123,
"capacityAI": True,
"capacityAIUpdateMinutes": 123,
"spot": True,
"debug": True,
"suspend": True,
"multiZone": { "enabled": True }
},
"localOptions": [
{
"autoscaling": {
"multi": [
{
"metric": {},
"target": 123
}
],
"target": 123,
"maxScale": 123,
"minScale": 123,
"scaleToZeroDelay": 123,
"maxConcurrency": 123,
"keda": {
"triggers": [
{
"type": "<string>",
"metadata": {},
"name": "<string>",
"useCachedMetrics": True,
"authenticationRef": { "name": "<string>" }
}
],
"advanced": { "scalingModifiers": {
"target": "<string>",
"activationTarget": "<string>",
"formula": "<string>"
} },
"fallback": {
"failureThreshold": 123,
"replicas": 123
},
"pollingInterval": 123,
"cooldownPeriod": 123,
"initialCooldownPeriod": 123
}
},
"timeoutSeconds": 123,
"capacityAI": True,
"capacityAIUpdateMinutes": 123,
"spot": True,
"debug": True,
"suspend": True,
"multiZone": { "enabled": True },
"location": "<string>"
}
],
"job": {
"schedule": "<string>",
"concurrencyPolicy": "Forbid",
"historyLimit": 123,
"activeDeadlineSeconds": 123
},
"sidecar": { "envoy": {
"accessLog": [
{
"priority": 123,
"name": "envoy.http_grpc_access_log",
"excludedWorkloads": ["<string>"],
"typed_config": {
"@type": {},
"common_config": {
"log_name": "<string>",
"grpc_service": {
"envoy_grpc": {
"cluster_name": "<string>",
"authority": {
"adjust": None,
"in": False,
"iterables": None,
"map": None,
"separator": ".",
"type": "value",
"ancestor": 1,
"path": ["cluster_name"],
"depth": 1,
"key": "cluster_name",
"root": "cluster_name",
"display": "ref:cluster_name"
},
"retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"google_grpc": {
"target_uri": "<string>",
"channel_credentials": {
"ssl_credentials": {
"root_certs": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"private_key": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"cert_chain": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
}
},
"google_default": {}
},
"call_credentials": [
{
"access_token": "<string>",
"google_compute_engine": {},
"google_refresh_token": "<string>",
"service_account_jwt_access": {
"json_key": "<string>",
"token_lifetime_seconds": 123
},
"google_iam": {
"authorization_token": "<string>",
"authority_selector": "<string>"
},
"from_plugin": {
"name": "<string>",
"typed_config": {}
},
"sts_service": {
"token_exchange_service_uri": "<string>",
"resource": "<string>",
"audience": "<string>",
"scope": "<string>",
"requested_token_type": "<string>",
"subject_token_path": "<string>",
"subject_token_type": "<string>",
"actor_token_path": "<string>",
"actor_token_type": "<string>"
}
}
],
"stat_prefix": "<string>",
"credentials_factory_name": "<string>",
"config": {}
},
"timeout": "<string>",
"initial_metadata": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"buffer_flush_interval": "<string>",
"buffer_size_bytes": 123,
"filter_state_objects_to_log": ["<string>"],
"grpc_stream_retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"additional_request_headers_to_log": ["<string>"],
"additional_response_headers_to_log": ["<string>"],
"additional_response_trailers_to_log": ["<string>"]
}
}
],
"clusters": [
{
"name": "<string>",
"excludedWorkloads": ["<string>"],
"transport_socket_matches": {},
"alt_stat_name": {},
"cluster_type": {},
"eds_cluster_config": {},
"connect_timeout": {},
"per_connection_buffer_limit_bytes": {},
"lb_policy": {},
"load_assignment": {
"cluster_name": "<string>",
"endpoints": {},
"policy": {}
},
"health_checks": {},
"max_requests_per_connection": {},
"circuit_breakers": {},
"upstream_http_protocol_options": {},
"common_http_protocol_options": {},
"http_protocol_options": {},
"http2_protocol_options": {},
"typed_extension_protocol_options": {},
"dns_refresh_rate": {},
"dns_failure_refresh_rate": {},
"respect_dns_ttl": {},
"dns_lookup_family": {},
"dns_resolvers": {},
"use_tcp_for_dns_lookups": {},
"dns_resolution_config": {},
"typed_dns_resolver_config": {},
"wait_for_warm_on_init": {},
"outlier_detection": {},
"cleanup_interval": {},
"upstream_bind_config": {},
"lb_subset_config": {},
"ring_hash_lb_config": {},
"maglev_lb_config": {},
"least_request_lb_config": {},
"common_lb_config": {},
"transport_socket": {},
"metadata": {},
"protocol_selection": {},
"upstream_connection_options": {},
"close_connections_on_host_health_failure": {},
"ignore_health_on_host_removal": {},
"filters": {},
"load_balancing_policy": {},
"track_timeout_budgets": {},
"upstream_config": {},
"track_cluster_stats": {},
"preconnect_policy": {},
"connection_pool_per_downstream_connection": {}
}
],
"excludedExternalAuth": [
{
"match": {
"prefix": "<string>",
"path": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"path_separated_prefix": "<string>",
"path_match_policy": {
"name": "<string>",
"typed_config": {}
},
"case_sensitive": True,
"runtime_fraction": {
"default_value": {
"numerator": 123,
"denominator": 123
},
"runtime_key": "<string>"
},
"headers": [
{
"name": "<string>",
"safe_regex_match": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"range_match": {
"start": 123,
"end": 123
},
"present_match": True,
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"invert_match": True,
"treat_missing_header_as_empty": True
}
],
"query_parameters": [
{
"name": "<string>",
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"present_match": True
}
],
"grpc": {
"presented": True,
"validated": True
},
"tls_context": {
"presented": True,
"validated": True
},
"dynamic_metadata": [
{
"filter": "<string>",
"path": [{ "key": "<string>" }],
"value": {
"null_match": {},
"double_match": {
"range": {
"start": 123,
"end": 123
},
"exact": 123
},
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"bool_match": True,
"present_match": True
},
"invert": True
}
]
},
"port": 123,
"svcPort": 123
}
],
"excludedRateLimit": [
{
"match": {
"prefix": "<string>",
"path": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"path_separated_prefix": "<string>",
"path_match_policy": {
"name": "<string>",
"typed_config": {}
},
"case_sensitive": True,
"runtime_fraction": {
"default_value": {
"numerator": 123,
"denominator": 123
},
"runtime_key": "<string>"
},
"headers": [
{
"name": "<string>",
"safe_regex_match": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"range_match": {
"start": 123,
"end": 123
},
"present_match": True,
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"invert_match": True,
"treat_missing_header_as_empty": True
}
],
"query_parameters": [
{
"name": "<string>",
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"present_match": True
}
],
"grpc": {
"presented": True,
"validated": True
},
"tls_context": {
"presented": True,
"validated": True
},
"dynamic_metadata": [
{
"filter": "<string>",
"path": [{ "key": "<string>" }],
"value": {
"null_match": {},
"double_match": {
"range": {
"start": 123,
"end": 123
},
"exact": 123
},
"string_match": {
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
},
"bool_match": True,
"present_match": True
},
"invert": True
}
]
},
"port": 123,
"svcPort": 123
}
],
"http": [
{
"priority": 123,
"excludedWorkloads": ["<string>"],
"name": "envoy.filters.http.ext_authz",
"typed_config": {
"grpc_service": {
"envoy_grpc": {
"cluster_name": "<string>",
"authority": {
"adjust": None,
"in": False,
"iterables": None,
"map": None,
"separator": ".",
"type": "value",
"ancestor": 1,
"path": ["cluster_name"],
"depth": 1,
"key": "cluster_name",
"root": "cluster_name",
"display": "ref:cluster_name"
},
"retry_policy": {
"retry_back_off": {
"base_interval": "<string>",
"max_interval": "<string>"
},
"num_retries": 123
}
},
"google_grpc": {
"target_uri": "<string>",
"channel_credentials": {
"ssl_credentials": {
"root_certs": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"private_key": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
},
"cert_chain": {
"filename": "<string>",
"inline_bytes": "<unknown>",
"inline_string": "<string>",
"environment_variable": "<string>"
}
},
"google_default": {}
},
"call_credentials": [
{
"access_token": "<string>",
"google_compute_engine": {},
"google_refresh_token": "<string>",
"service_account_jwt_access": {
"json_key": "<string>",
"token_lifetime_seconds": 123
},
"google_iam": {
"authorization_token": "<string>",
"authority_selector": "<string>"
},
"from_plugin": {
"name": "<string>",
"typed_config": {}
},
"sts_service": {
"token_exchange_service_uri": "<string>",
"resource": "<string>",
"audience": "<string>",
"scope": "<string>",
"requested_token_type": "<string>",
"subject_token_path": "<string>",
"subject_token_type": "<string>",
"actor_token_path": "<string>",
"actor_token_type": "<string>"
}
}
],
"stat_prefix": "<string>",
"credentials_factory_name": "<string>",
"config": {}
},
"timeout": "<string>",
"initial_metadata": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"http_service": {
"server_uri": {
"uri": "<string>",
"cluster": "<string>",
"timeout": "<string>"
},
"path_prefix": "<string>",
"authorization_request": {
"allowed_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"headers_to_add": [
{
"key": "<string>",
"value": "<string>",
"raw_value": "<unknown>"
}
]
},
"authorization_response": {
"allowed_upstream_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"allowed_upstream_headers_to_append": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"allowed_client_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"allowed_client_headers_on_success": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"dynamic_metadata_from_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] }
}
},
"failure_mode_allow": True,
"failure_mode_allow_header_add": True,
"with_request_body": {
"max_request_bytes": 123,
"allow_partial_message": True,
"pack_as_bytes": True
},
"clear_route_cache": True,
"status_on_error": {},
"metadata_context_namespaces": ["<string>"],
"typed_metadata_context_namespaces": ["<string>"],
"route_metadata_context_namespaces": ["<string>"],
"route_typed_metadata_context_namespaces": ["<string>"],
"filter_enabled": {
"numerator": 123,
"denominator": 123
},
"deny_at_disable": {
"default_value": True,
"runtime_key": "<string>"
},
"include_peer_certificate": True,
"stat_prefix": "<string>",
"bootstrap_metadata_labels_key": "<string>",
"allowed_headers": { "patterns": [
{
"exact": "<string>",
"prefix": "<string>",
"suffix": "<string>",
"safe_regex": {
"google_re2": { "max_program_size": 123 },
"regex": "<string>"
},
"contains": "<string>",
"ignore_case": True
}
] },
"include_tls_session": True,
"charge_cluster_response_stats": True,
"@type": "type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz"
}
}
],
"network": [{}],
"volumes": [
{
"uri": "<string>",
"recoveryPolicy": "retain",
"path": "<string>",
"name": "<string>",
"bootOrder": 123
}
]
} },
"supportDynamicTags": True,
"rolloutOptions": {
"minReadySeconds": 123,
"maxUnavailableReplicas": "<string>",
"maxSurgeReplicas": "<string>",
"scalingPolicy": "OrderedReady",
"terminationGracePeriodSeconds": 123
},
"securityOptions": {
"filesystemGroupId": 123,
"runAsUser": 123
},
"loadBalancer": {
"direct": {
"enabled": True,
"ports": [
{
"externalPort": 123,
"containerPort": 123
}
],
"ipSet": "<string>"
},
"geoLocation": {
"enabled": True,
"headers": {
"asn": "<string>",
"city": "<string>",
"country": "<string>",
"region": "<string>"
}
},
"replicaDirect": True
},
"extras": {
"affinity": {},
"tolerations": [{}],
"topologySpreadConstraints": [{}]
},
"requestRetryPolicy": {
"attempts": 123,
"retryOn": ["<string>"]
},
"vm": {
"bootDisk": {
"source": {
"oci": { "image": "<string>" },
"http": {
"url": "<string>",
"checksum": "<string>"
}
},
"persist": { "volumeSet": "<string>" },
"bus": "virtio",
"bootOrder": 123
},
"cpu": {
"sockets": 123,
"threads": 123
},
"firmware": {
"bootloader": "efi",
"secureBoot": True,
"uuid": "<string>",
"serial": "<string>",
"smbios": {
"manufacturer": "<string>",
"product": "<string>",
"version": "<string>",
"sku": "<string>",
"family": "<string>"
}
},
"guestOS": "linux",
"networks": [{ "name": "default" }],
"cloudInit": {
"userData": "<string>",
"userDataBase64": "<string>",
"userDataSecret": "<string>",
"sshPublicKeySecrets": ["<string>"]
},
"accessCredentials": [
{
"sshPublicKeySecret": "<string>",
"users": ["<string>"],
"deliveryMethod": "qemuGuestAgent"
}
],
"runStrategy": "Always",
"clock": { "timezone": "UTC" },
"hostname": "<string>",
"subdomain": "<string>"
}
}
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
description: '<string>',
tags: {},
name: '<string>',
health: {
readiness: '<string>',
syncFailed: true,
readyLocations: 123,
totalLocations: 123,
readyReplicas: 123,
totalReplicas: 123
},
spec: {
type: 'serverless',
identityLink: '<string>',
containers: [
{
name: '<string>',
image: '<string>',
workingDir: '<string>',
metrics: {port: 123, path: '/metrics', dropMetrics: ['<string>']},
port: 123,
ports: [{protocol: 'http', number: 123}],
memory: '128Mi',
readinessProbe: {
exec: {command: ['<string>']},
grpc: {port: 123},
tcpSocket: {port: 123},
httpGet: {
path: '/',
port: 123,
httpHeaders: [{name: '<string>', value: '<string>'}],
scheme: 'HTTP'
},
initialDelaySeconds: 123,
periodSeconds: 123,
timeoutSeconds: 123,
successThreshold: 123,
failureThreshold: 123
},
livenessProbe: {
exec: {command: ['<string>']},
grpc: {port: 123},
tcpSocket: {port: 123},
httpGet: {
path: '/',
port: 123,
httpHeaders: [{name: '<string>', value: '<string>'}],
scheme: 'HTTP'
},
periodSeconds: 123,
timeoutSeconds: 123,
successThreshold: 123,
failureThreshold: 123,
initialDelaySeconds: 123
},
cpu: '50m',
minCpu: '<string>',
minMemory: '<string>',
env: [{name: '<string>', value: '<string>'}],
gpu: {
nvidia: {model: {}, quantity: 123},
custom: {resource: '<string>', runtimeClass: '<string>', quantity: 123}
},
inheritEnv: true,
command: '<string>',
args: ['<string>'],
lifecycle: {
postStart: {exec: {command: ['<string>']}},
preStop: {exec: {command: ['<string>']}}
},
volumes: [
{
uri: '<string>',
recoveryPolicy: 'retain',
path: '<string>',
name: '<string>',
bootOrder: 123
}
]
}
],
firewallConfig: {
external: {
inboundAllowCIDR: ['<string>'],
inboundBlockedCIDR: ['<string>'],
outboundAllowHostname: ['<string>'],
outboundAllowPort: [{protocol: 'tcp', number: 123}],
outboundAllowCIDR: ['<string>'],
outboundBlockedCIDR: ['<string>'],
http: {
inboundHeaderFilter: [{key: '<string>', allowedValues: ['<string>'], blockedValues: ['<string>']}]
}
},
internal: {inboundAllowType: 'none', inboundAllowWorkload: ['<string>']}
},
defaultOptions: {
autoscaling: {
multi: [{metric: {}, target: 123}],
target: 123,
maxScale: 123,
minScale: 123,
scaleToZeroDelay: 123,
maxConcurrency: 123,
keda: {
triggers: [
{
type: '<string>',
metadata: {},
name: '<string>',
useCachedMetrics: true,
authenticationRef: {name: '<string>'}
}
],
advanced: {
scalingModifiers: {target: '<string>', activationTarget: '<string>', formula: '<string>'}
},
fallback: {failureThreshold: 123, replicas: 123},
pollingInterval: 123,
cooldownPeriod: 123,
initialCooldownPeriod: 123
}
},
timeoutSeconds: 123,
capacityAI: true,
capacityAIUpdateMinutes: 123,
spot: true,
debug: true,
suspend: true,
multiZone: {enabled: true}
},
localOptions: [
{
autoscaling: {
multi: [{metric: {}, target: 123}],
target: 123,
maxScale: 123,
minScale: 123,
scaleToZeroDelay: 123,
maxConcurrency: 123,
keda: {
triggers: [
{
type: '<string>',
metadata: {},
name: '<string>',
useCachedMetrics: true,
authenticationRef: {name: '<string>'}
}
],
advanced: {
scalingModifiers: {target: '<string>', activationTarget: '<string>', formula: '<string>'}
},
fallback: {failureThreshold: 123, replicas: 123},
pollingInterval: 123,
cooldownPeriod: 123,
initialCooldownPeriod: 123
}
},
timeoutSeconds: 123,
capacityAI: true,
capacityAIUpdateMinutes: 123,
spot: true,
debug: true,
suspend: true,
multiZone: {enabled: true},
location: '<string>'
}
],
job: {
schedule: '<string>',
concurrencyPolicy: 'Forbid',
historyLimit: 123,
activeDeadlineSeconds: 123
},
sidecar: {
envoy: {
accessLog: [
{
priority: 123,
name: 'envoy.http_grpc_access_log',
excludedWorkloads: ['<string>'],
typed_config: {
'@type': {},
common_config: {
log_name: '<string>',
grpc_service: {
envoy_grpc: {
cluster_name: '<string>',
authority: {
adjust: null,
in: false,
iterables: null,
map: null,
separator: '.',
type: 'value',
ancestor: 1,
path: ['cluster_name'],
depth: 1,
key: 'cluster_name',
root: 'cluster_name',
display: 'ref:cluster_name'
},
retry_policy: {
retry_back_off: {base_interval: '<string>', max_interval: '<string>'},
num_retries: 123
}
},
google_grpc: {
target_uri: '<string>',
channel_credentials: {
ssl_credentials: {
root_certs: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
},
private_key: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
},
cert_chain: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
}
},
google_default: {}
},
call_credentials: [
{
access_token: '<string>',
google_compute_engine: {},
google_refresh_token: '<string>',
service_account_jwt_access: {json_key: '<string>', token_lifetime_seconds: 123},
google_iam: {authorization_token: '<string>', authority_selector: '<string>'},
from_plugin: {name: '<string>', typed_config: {}},
sts_service: {
token_exchange_service_uri: '<string>',
resource: '<string>',
audience: '<string>',
scope: '<string>',
requested_token_type: '<string>',
subject_token_path: '<string>',
subject_token_type: '<string>',
actor_token_path: '<string>',
actor_token_type: '<string>'
}
}
],
stat_prefix: '<string>',
credentials_factory_name: '<string>',
config: {}
},
timeout: '<string>',
initial_metadata: [{key: '<string>', value: '<string>', raw_value: '<unknown>'}]
},
buffer_flush_interval: '<string>',
buffer_size_bytes: 123,
filter_state_objects_to_log: ['<string>'],
grpc_stream_retry_policy: {
retry_back_off: {base_interval: '<string>', max_interval: '<string>'},
num_retries: 123
}
},
additional_request_headers_to_log: ['<string>'],
additional_response_headers_to_log: ['<string>'],
additional_response_trailers_to_log: ['<string>']
}
}
],
clusters: [
{
name: '<string>',
excludedWorkloads: ['<string>'],
transport_socket_matches: {},
alt_stat_name: {},
cluster_type: {},
eds_cluster_config: {},
connect_timeout: {},
per_connection_buffer_limit_bytes: {},
lb_policy: {},
load_assignment: {cluster_name: '<string>', endpoints: {}, policy: {}},
health_checks: {},
max_requests_per_connection: {},
circuit_breakers: {},
upstream_http_protocol_options: {},
common_http_protocol_options: {},
http_protocol_options: {},
http2_protocol_options: {},
typed_extension_protocol_options: {},
dns_refresh_rate: {},
dns_failure_refresh_rate: {},
respect_dns_ttl: {},
dns_lookup_family: {},
dns_resolvers: {},
use_tcp_for_dns_lookups: {},
dns_resolution_config: {},
typed_dns_resolver_config: {},
wait_for_warm_on_init: {},
outlier_detection: {},
cleanup_interval: {},
upstream_bind_config: {},
lb_subset_config: {},
ring_hash_lb_config: {},
maglev_lb_config: {},
least_request_lb_config: {},
common_lb_config: {},
transport_socket: {},
metadata: {},
protocol_selection: {},
upstream_connection_options: {},
close_connections_on_host_health_failure: {},
ignore_health_on_host_removal: {},
filters: {},
load_balancing_policy: {},
track_timeout_budgets: {},
upstream_config: {},
track_cluster_stats: {},
preconnect_policy: {},
connection_pool_per_downstream_connection: {}
}
],
excludedExternalAuth: [
{
match: {
prefix: '<string>',
path: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
path_separated_prefix: '<string>',
path_match_policy: {name: '<string>', typed_config: {}},
case_sensitive: true,
runtime_fraction: {default_value: {numerator: 123, denominator: 123}, runtime_key: '<string>'},
headers: [
{
name: '<string>',
safe_regex_match: {google_re2: {max_program_size: 123}, regex: '<string>'},
range_match: {start: 123, end: 123},
present_match: true,
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
invert_match: true,
treat_missing_header_as_empty: true
}
],
query_parameters: [
{
name: '<string>',
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
present_match: true
}
],
grpc: {presented: true, validated: true},
tls_context: {presented: true, validated: true},
dynamic_metadata: [
{
filter: '<string>',
path: [{key: '<string>'}],
value: {
null_match: {},
double_match: {range: {start: 123, end: 123}, exact: 123},
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
bool_match: true,
present_match: true
},
invert: true
}
]
},
port: 123,
svcPort: 123
}
],
excludedRateLimit: [
{
match: {
prefix: '<string>',
path: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
path_separated_prefix: '<string>',
path_match_policy: {name: '<string>', typed_config: {}},
case_sensitive: true,
runtime_fraction: {default_value: {numerator: 123, denominator: 123}, runtime_key: '<string>'},
headers: [
{
name: '<string>',
safe_regex_match: {google_re2: {max_program_size: 123}, regex: '<string>'},
range_match: {start: 123, end: 123},
present_match: true,
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
invert_match: true,
treat_missing_header_as_empty: true
}
],
query_parameters: [
{
name: '<string>',
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
present_match: true
}
],
grpc: {presented: true, validated: true},
tls_context: {presented: true, validated: true},
dynamic_metadata: [
{
filter: '<string>',
path: [{key: '<string>'}],
value: {
null_match: {},
double_match: {range: {start: 123, end: 123}, exact: 123},
string_match: {
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
},
bool_match: true,
present_match: true
},
invert: true
}
]
},
port: 123,
svcPort: 123
}
],
http: [
{
priority: 123,
excludedWorkloads: ['<string>'],
name: 'envoy.filters.http.ext_authz',
typed_config: {
grpc_service: {
envoy_grpc: {
cluster_name: '<string>',
authority: {
adjust: null,
in: false,
iterables: null,
map: null,
separator: '.',
type: 'value',
ancestor: 1,
path: ['cluster_name'],
depth: 1,
key: 'cluster_name',
root: 'cluster_name',
display: 'ref:cluster_name'
},
retry_policy: {
retry_back_off: {base_interval: '<string>', max_interval: '<string>'},
num_retries: 123
}
},
google_grpc: {
target_uri: '<string>',
channel_credentials: {
ssl_credentials: {
root_certs: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
},
private_key: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
},
cert_chain: {
filename: '<string>',
inline_bytes: '<unknown>',
inline_string: '<string>',
environment_variable: '<string>'
}
},
google_default: {}
},
call_credentials: [
{
access_token: '<string>',
google_compute_engine: {},
google_refresh_token: '<string>',
service_account_jwt_access: {json_key: '<string>', token_lifetime_seconds: 123},
google_iam: {authorization_token: '<string>', authority_selector: '<string>'},
from_plugin: {name: '<string>', typed_config: {}},
sts_service: {
token_exchange_service_uri: '<string>',
resource: '<string>',
audience: '<string>',
scope: '<string>',
requested_token_type: '<string>',
subject_token_path: '<string>',
subject_token_type: '<string>',
actor_token_path: '<string>',
actor_token_type: '<string>'
}
}
],
stat_prefix: '<string>',
credentials_factory_name: '<string>',
config: {}
},
timeout: '<string>',
initial_metadata: [{key: '<string>', value: '<string>', raw_value: '<unknown>'}]
},
http_service: {
server_uri: {uri: '<string>', cluster: '<string>', timeout: '<string>'},
path_prefix: '<string>',
authorization_request: {
allowed_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
headers_to_add: [{key: '<string>', value: '<string>', raw_value: '<unknown>'}]
},
authorization_response: {
allowed_upstream_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
allowed_upstream_headers_to_append: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
allowed_client_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
allowed_client_headers_on_success: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
dynamic_metadata_from_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
}
}
},
failure_mode_allow: true,
failure_mode_allow_header_add: true,
with_request_body: {max_request_bytes: 123, allow_partial_message: true, pack_as_bytes: true},
clear_route_cache: true,
status_on_error: {},
metadata_context_namespaces: ['<string>'],
typed_metadata_context_namespaces: ['<string>'],
route_metadata_context_namespaces: ['<string>'],
route_typed_metadata_context_namespaces: ['<string>'],
filter_enabled: {numerator: 123, denominator: 123},
deny_at_disable: {default_value: true, runtime_key: '<string>'},
include_peer_certificate: true,
stat_prefix: '<string>',
bootstrap_metadata_labels_key: '<string>',
allowed_headers: {
patterns: [
{
exact: '<string>',
prefix: '<string>',
suffix: '<string>',
safe_regex: {google_re2: {max_program_size: 123}, regex: '<string>'},
contains: '<string>',
ignore_case: true
}
]
},
include_tls_session: true,
charge_cluster_response_stats: true,
'@type': 'type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz'
}
}
],
network: [{}],
volumes: [
{
uri: '<string>',
recoveryPolicy: 'retain',
path: '<string>',
name: '<string>',
bootOrder: 123
}
]
}
},
supportDynamicTags: true,
rolloutOptions: {
minReadySeconds: 123,
maxUnavailableReplicas: '<string>',
maxSurgeReplicas: '<string>',
scalingPolicy: 'OrderedReady',
terminationGracePeriodSeconds: 123
},
securityOptions: {filesystemGroupId: 123, runAsUser: 123},
loadBalancer: {
direct: {
enabled: true,
ports: [{externalPort: 123, containerPort: 123}],
ipSet: '<string>'
},
geoLocation: {
enabled: true,
headers: {asn: '<string>', city: '<string>', country: '<string>', region: '<string>'}
},
replicaDirect: true
},
extras: {affinity: {}, tolerations: [{}], topologySpreadConstraints: [{}]},
requestRetryPolicy: {attempts: 123, retryOn: ['<string>']},
vm: {
bootDisk: {
source: {oci: {image: '<string>'}, http: {url: '<string>', checksum: '<string>'}},
persist: {volumeSet: '<string>'},
bus: 'virtio',
bootOrder: 123
},
cpu: {sockets: 123, threads: 123},
firmware: {
bootloader: 'efi',
secureBoot: true,
uuid: '<string>',
serial: '<string>',
smbios: {
manufacturer: '<string>',
product: '<string>',
version: '<string>',
sku: '<string>',
family: '<string>'
}
},
guestOS: 'linux',
networks: [{name: 'default'}],
cloudInit: {
userData: '<string>',
userDataBase64: '<string>',
userDataSecret: '<string>',
sshPublicKeySecrets: ['<string>']
},
accessCredentials: [
{
sshPublicKeySecret: '<string>',
users: ['<string>'],
deliveryMethod: 'qemuGuestAgent'
}
],
runStrategy: 'Always',
clock: {timezone: 'UTC'},
hostname: '<string>',
subdomain: '<string>'
}
}
})
};
fetch('https://api.cpln.io/org/{org}/gvc/{gvc}/workload', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.cpln.io/org/{org}/gvc/{gvc}/workload",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'description' => '<string>',
'tags' => [
],
'name' => '<string>',
'health' => [
'readiness' => '<string>',
'syncFailed' => true,
'readyLocations' => 123,
'totalLocations' => 123,
'readyReplicas' => 123,
'totalReplicas' => 123
],
'spec' => [
'type' => 'serverless',
'identityLink' => '<string>',
'containers' => [
[
'name' => '<string>',
'image' => '<string>',
'workingDir' => '<string>',
'metrics' => [
'port' => 123,
'path' => '/metrics',
'dropMetrics' => [
'<string>'
]
],
'port' => 123,
'ports' => [
[
'protocol' => 'http',
'number' => 123
]
],
'memory' => '128Mi',
'readinessProbe' => [
'exec' => [
'command' => [
'<string>'
]
],
'grpc' => [
'port' => 123
],
'tcpSocket' => [
'port' => 123
],
'httpGet' => [
'path' => '/',
'port' => 123,
'httpHeaders' => [
[
'name' => '<string>',
'value' => '<string>'
]
],
'scheme' => 'HTTP'
],
'initialDelaySeconds' => 123,
'periodSeconds' => 123,
'timeoutSeconds' => 123,
'successThreshold' => 123,
'failureThreshold' => 123
],
'livenessProbe' => [
'exec' => [
'command' => [
'<string>'
]
],
'grpc' => [
'port' => 123
],
'tcpSocket' => [
'port' => 123
],
'httpGet' => [
'path' => '/',
'port' => 123,
'httpHeaders' => [
[
'name' => '<string>',
'value' => '<string>'
]
],
'scheme' => 'HTTP'
],
'periodSeconds' => 123,
'timeoutSeconds' => 123,
'successThreshold' => 123,
'failureThreshold' => 123,
'initialDelaySeconds' => 123
],
'cpu' => '50m',
'minCpu' => '<string>',
'minMemory' => '<string>',
'env' => [
[
'name' => '<string>',
'value' => '<string>'
]
],
'gpu' => [
'nvidia' => [
'model' => [
],
'quantity' => 123
],
'custom' => [
'resource' => '<string>',
'runtimeClass' => '<string>',
'quantity' => 123
]
],
'inheritEnv' => true,
'command' => '<string>',
'args' => [
'<string>'
],
'lifecycle' => [
'postStart' => [
'exec' => [
'command' => [
'<string>'
]
]
],
'preStop' => [
'exec' => [
'command' => [
'<string>'
]
]
]
],
'volumes' => [
[
'uri' => '<string>',
'recoveryPolicy' => 'retain',
'path' => '<string>',
'name' => '<string>',
'bootOrder' => 123
]
]
]
],
'firewallConfig' => [
'external' => [
'inboundAllowCIDR' => [
'<string>'
],
'inboundBlockedCIDR' => [
'<string>'
],
'outboundAllowHostname' => [
'<string>'
],
'outboundAllowPort' => [
[
'protocol' => 'tcp',
'number' => 123
]
],
'outboundAllowCIDR' => [
'<string>'
],
'outboundBlockedCIDR' => [
'<string>'
],
'http' => [
'inboundHeaderFilter' => [
[
'key' => '<string>',
'allowedValues' => [
'<string>'
],
'blockedValues' => [
'<string>'
]
]
]
]
],
'internal' => [
'inboundAllowType' => 'none',
'inboundAllowWorkload' => [
'<string>'
]
]
],
'defaultOptions' => [
'autoscaling' => [
'multi' => [
[
'metric' => [
],
'target' => 123
]
],
'target' => 123,
'maxScale' => 123,
'minScale' => 123,
'scaleToZeroDelay' => 123,
'maxConcurrency' => 123,
'keda' => [
'triggers' => [
[
'type' => '<string>',
'metadata' => [
],
'name' => '<string>',
'useCachedMetrics' => true,
'authenticationRef' => [
'name' => '<string>'
]
]
],
'advanced' => [
'scalingModifiers' => [
'target' => '<string>',
'activationTarget' => '<string>',
'formula' => '<string>'
]
],
'fallback' => [
'failureThreshold' => 123,
'replicas' => 123
],
'pollingInterval' => 123,
'cooldownPeriod' => 123,
'initialCooldownPeriod' => 123
]
],
'timeoutSeconds' => 123,
'capacityAI' => true,
'capacityAIUpdateMinutes' => 123,
'spot' => true,
'debug' => true,
'suspend' => true,
'multiZone' => [
'enabled' => true
]
],
'localOptions' => [
[
'autoscaling' => [
'multi' => [
[
'metric' => [
],
'target' => 123
]
],
'target' => 123,
'maxScale' => 123,
'minScale' => 123,
'scaleToZeroDelay' => 123,
'maxConcurrency' => 123,
'keda' => [
'triggers' => [
[
'type' => '<string>',
'metadata' => [
],
'name' => '<string>',
'useCachedMetrics' => true,
'authenticationRef' => [
'name' => '<string>'
]
]
],
'advanced' => [
'scalingModifiers' => [
'target' => '<string>',
'activationTarget' => '<string>',
'formula' => '<string>'
]
],
'fallback' => [
'failureThreshold' => 123,
'replicas' => 123
],
'pollingInterval' => 123,
'cooldownPeriod' => 123,
'initialCooldownPeriod' => 123
]
],
'timeoutSeconds' => 123,
'capacityAI' => true,
'capacityAIUpdateMinutes' => 123,
'spot' => true,
'debug' => true,
'suspend' => true,
'multiZone' => [
'enabled' => true
],
'location' => '<string>'
]
],
'job' => [
'schedule' => '<string>',
'concurrencyPolicy' => 'Forbid',
'historyLimit' => 123,
'activeDeadlineSeconds' => 123
],
'sidecar' => [
'envoy' => [
'accessLog' => [
[
'priority' => 123,
'name' => 'envoy.http_grpc_access_log',
'excludedWorkloads' => [
'<string>'
],
'typed_config' => [
'@type' => [
],
'common_config' => [
'log_name' => '<string>',
'grpc_service' => [
'envoy_grpc' => [
'cluster_name' => '<string>',
'authority' => [
'adjust' => null,
'in' => false,
'iterables' => null,
'map' => null,
'separator' => '.',
'type' => 'value',
'ancestor' => 1,
'path' => [
'cluster_name'
],
'depth' => 1,
'key' => 'cluster_name',
'root' => 'cluster_name',
'display' => 'ref:cluster_name'
],
'retry_policy' => [
'retry_back_off' => [
'base_interval' => '<string>',
'max_interval' => '<string>'
],
'num_retries' => 123
]
],
'google_grpc' => [
'target_uri' => '<string>',
'channel_credentials' => [
'ssl_credentials' => [
'root_certs' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
],
'private_key' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
],
'cert_chain' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
]
],
'google_default' => [
]
],
'call_credentials' => [
[
'access_token' => '<string>',
'google_compute_engine' => [
],
'google_refresh_token' => '<string>',
'service_account_jwt_access' => [
'json_key' => '<string>',
'token_lifetime_seconds' => 123
],
'google_iam' => [
'authorization_token' => '<string>',
'authority_selector' => '<string>'
],
'from_plugin' => [
'name' => '<string>',
'typed_config' => [
]
],
'sts_service' => [
'token_exchange_service_uri' => '<string>',
'resource' => '<string>',
'audience' => '<string>',
'scope' => '<string>',
'requested_token_type' => '<string>',
'subject_token_path' => '<string>',
'subject_token_type' => '<string>',
'actor_token_path' => '<string>',
'actor_token_type' => '<string>'
]
]
],
'stat_prefix' => '<string>',
'credentials_factory_name' => '<string>',
'config' => [
]
],
'timeout' => '<string>',
'initial_metadata' => [
[
'key' => '<string>',
'value' => '<string>',
'raw_value' => '<unknown>'
]
]
],
'buffer_flush_interval' => '<string>',
'buffer_size_bytes' => 123,
'filter_state_objects_to_log' => [
'<string>'
],
'grpc_stream_retry_policy' => [
'retry_back_off' => [
'base_interval' => '<string>',
'max_interval' => '<string>'
],
'num_retries' => 123
]
],
'additional_request_headers_to_log' => [
'<string>'
],
'additional_response_headers_to_log' => [
'<string>'
],
'additional_response_trailers_to_log' => [
'<string>'
]
]
]
],
'clusters' => [
[
'name' => '<string>',
'excludedWorkloads' => [
'<string>'
],
'transport_socket_matches' => [
],
'alt_stat_name' => [
],
'cluster_type' => [
],
'eds_cluster_config' => [
],
'connect_timeout' => [
],
'per_connection_buffer_limit_bytes' => [
],
'lb_policy' => [
],
'load_assignment' => [
'cluster_name' => '<string>',
'endpoints' => [
],
'policy' => [
]
],
'health_checks' => [
],
'max_requests_per_connection' => [
],
'circuit_breakers' => [
],
'upstream_http_protocol_options' => [
],
'common_http_protocol_options' => [
],
'http_protocol_options' => [
],
'http2_protocol_options' => [
],
'typed_extension_protocol_options' => [
],
'dns_refresh_rate' => [
],
'dns_failure_refresh_rate' => [
],
'respect_dns_ttl' => [
],
'dns_lookup_family' => [
],
'dns_resolvers' => [
],
'use_tcp_for_dns_lookups' => [
],
'dns_resolution_config' => [
],
'typed_dns_resolver_config' => [
],
'wait_for_warm_on_init' => [
],
'outlier_detection' => [
],
'cleanup_interval' => [
],
'upstream_bind_config' => [
],
'lb_subset_config' => [
],
'ring_hash_lb_config' => [
],
'maglev_lb_config' => [
],
'least_request_lb_config' => [
],
'common_lb_config' => [
],
'transport_socket' => [
],
'metadata' => [
],
'protocol_selection' => [
],
'upstream_connection_options' => [
],
'close_connections_on_host_health_failure' => [
],
'ignore_health_on_host_removal' => [
],
'filters' => [
],
'load_balancing_policy' => [
],
'track_timeout_budgets' => [
],
'upstream_config' => [
],
'track_cluster_stats' => [
],
'preconnect_policy' => [
],
'connection_pool_per_downstream_connection' => [
]
]
],
'excludedExternalAuth' => [
[
'match' => [
'prefix' => '<string>',
'path' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'path_separated_prefix' => '<string>',
'path_match_policy' => [
'name' => '<string>',
'typed_config' => [
]
],
'case_sensitive' => true,
'runtime_fraction' => [
'default_value' => [
'numerator' => 123,
'denominator' => 123
],
'runtime_key' => '<string>'
],
'headers' => [
[
'name' => '<string>',
'safe_regex_match' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'range_match' => [
'start' => 123,
'end' => 123
],
'present_match' => true,
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'invert_match' => true,
'treat_missing_header_as_empty' => true
]
],
'query_parameters' => [
[
'name' => '<string>',
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'present_match' => true
]
],
'grpc' => [
'presented' => true,
'validated' => true
],
'tls_context' => [
'presented' => true,
'validated' => true
],
'dynamic_metadata' => [
[
'filter' => '<string>',
'path' => [
[
'key' => '<string>'
]
],
'value' => [
'null_match' => [
],
'double_match' => [
'range' => [
'start' => 123,
'end' => 123
],
'exact' => 123
],
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'bool_match' => true,
'present_match' => true
],
'invert' => true
]
]
],
'port' => 123,
'svcPort' => 123
]
],
'excludedRateLimit' => [
[
'match' => [
'prefix' => '<string>',
'path' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'path_separated_prefix' => '<string>',
'path_match_policy' => [
'name' => '<string>',
'typed_config' => [
]
],
'case_sensitive' => true,
'runtime_fraction' => [
'default_value' => [
'numerator' => 123,
'denominator' => 123
],
'runtime_key' => '<string>'
],
'headers' => [
[
'name' => '<string>',
'safe_regex_match' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'range_match' => [
'start' => 123,
'end' => 123
],
'present_match' => true,
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'invert_match' => true,
'treat_missing_header_as_empty' => true
]
],
'query_parameters' => [
[
'name' => '<string>',
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'present_match' => true
]
],
'grpc' => [
'presented' => true,
'validated' => true
],
'tls_context' => [
'presented' => true,
'validated' => true
],
'dynamic_metadata' => [
[
'filter' => '<string>',
'path' => [
[
'key' => '<string>'
]
],
'value' => [
'null_match' => [
],
'double_match' => [
'range' => [
'start' => 123,
'end' => 123
],
'exact' => 123
],
'string_match' => [
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
],
'bool_match' => true,
'present_match' => true
],
'invert' => true
]
]
],
'port' => 123,
'svcPort' => 123
]
],
'http' => [
[
'priority' => 123,
'excludedWorkloads' => [
'<string>'
],
'name' => 'envoy.filters.http.ext_authz',
'typed_config' => [
'grpc_service' => [
'envoy_grpc' => [
'cluster_name' => '<string>',
'authority' => [
'adjust' => null,
'in' => false,
'iterables' => null,
'map' => null,
'separator' => '.',
'type' => 'value',
'ancestor' => 1,
'path' => [
'cluster_name'
],
'depth' => 1,
'key' => 'cluster_name',
'root' => 'cluster_name',
'display' => 'ref:cluster_name'
],
'retry_policy' => [
'retry_back_off' => [
'base_interval' => '<string>',
'max_interval' => '<string>'
],
'num_retries' => 123
]
],
'google_grpc' => [
'target_uri' => '<string>',
'channel_credentials' => [
'ssl_credentials' => [
'root_certs' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
],
'private_key' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
],
'cert_chain' => [
'filename' => '<string>',
'inline_bytes' => '<unknown>',
'inline_string' => '<string>',
'environment_variable' => '<string>'
]
],
'google_default' => [
]
],
'call_credentials' => [
[
'access_token' => '<string>',
'google_compute_engine' => [
],
'google_refresh_token' => '<string>',
'service_account_jwt_access' => [
'json_key' => '<string>',
'token_lifetime_seconds' => 123
],
'google_iam' => [
'authorization_token' => '<string>',
'authority_selector' => '<string>'
],
'from_plugin' => [
'name' => '<string>',
'typed_config' => [
]
],
'sts_service' => [
'token_exchange_service_uri' => '<string>',
'resource' => '<string>',
'audience' => '<string>',
'scope' => '<string>',
'requested_token_type' => '<string>',
'subject_token_path' => '<string>',
'subject_token_type' => '<string>',
'actor_token_path' => '<string>',
'actor_token_type' => '<string>'
]
]
],
'stat_prefix' => '<string>',
'credentials_factory_name' => '<string>',
'config' => [
]
],
'timeout' => '<string>',
'initial_metadata' => [
[
'key' => '<string>',
'value' => '<string>',
'raw_value' => '<unknown>'
]
]
],
'http_service' => [
'server_uri' => [
'uri' => '<string>',
'cluster' => '<string>',
'timeout' => '<string>'
],
'path_prefix' => '<string>',
'authorization_request' => [
'allowed_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'headers_to_add' => [
[
'key' => '<string>',
'value' => '<string>',
'raw_value' => '<unknown>'
]
]
],
'authorization_response' => [
'allowed_upstream_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'allowed_upstream_headers_to_append' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'allowed_client_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'allowed_client_headers_on_success' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'dynamic_metadata_from_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
]
]
],
'failure_mode_allow' => true,
'failure_mode_allow_header_add' => true,
'with_request_body' => [
'max_request_bytes' => 123,
'allow_partial_message' => true,
'pack_as_bytes' => true
],
'clear_route_cache' => true,
'status_on_error' => [
],
'metadata_context_namespaces' => [
'<string>'
],
'typed_metadata_context_namespaces' => [
'<string>'
],
'route_metadata_context_namespaces' => [
'<string>'
],
'route_typed_metadata_context_namespaces' => [
'<string>'
],
'filter_enabled' => [
'numerator' => 123,
'denominator' => 123
],
'deny_at_disable' => [
'default_value' => true,
'runtime_key' => '<string>'
],
'include_peer_certificate' => true,
'stat_prefix' => '<string>',
'bootstrap_metadata_labels_key' => '<string>',
'allowed_headers' => [
'patterns' => [
[
'exact' => '<string>',
'prefix' => '<string>',
'suffix' => '<string>',
'safe_regex' => [
'google_re2' => [
'max_program_size' => 123
],
'regex' => '<string>'
],
'contains' => '<string>',
'ignore_case' => true
]
]
],
'include_tls_session' => true,
'charge_cluster_response_stats' => true,
'@type' => 'type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz'
]
]
],
'network' => [
[
]
],
'volumes' => [
[
'uri' => '<string>',
'recoveryPolicy' => 'retain',
'path' => '<string>',
'name' => '<string>',
'bootOrder' => 123
]
]
]
],
'supportDynamicTags' => true,
'rolloutOptions' => [
'minReadySeconds' => 123,
'maxUnavailableReplicas' => '<string>',
'maxSurgeReplicas' => '<string>',
'scalingPolicy' => 'OrderedReady',
'terminationGracePeriodSeconds' => 123
],
'securityOptions' => [
'filesystemGroupId' => 123,
'runAsUser' => 123
],
'loadBalancer' => [
'direct' => [
'enabled' => true,
'ports' => [
[
'externalPort' => 123,
'containerPort' => 123
]
],
'ipSet' => '<string>'
],
'geoLocation' => [
'enabled' => true,
'headers' => [
'asn' => '<string>',
'city' => '<string>',
'country' => '<string>',
'region' => '<string>'
]
],
'replicaDirect' => true
],
'extras' => [
'affinity' => [
],
'tolerations' => [
[
]
],
'topologySpreadConstraints' => [
[
]
]
],
'requestRetryPolicy' => [
'attempts' => 123,
'retryOn' => [
'<string>'
]
],
'vm' => [
'bootDisk' => [
'source' => [
'oci' => [
'image' => '<string>'
],
'http' => [
'url' => '<string>',
'checksum' => '<string>'
]
],
'persist' => [
'volumeSet' => '<string>'
],
'bus' => 'virtio',
'bootOrder' => 123
],
'cpu' => [
'sockets' => 123,
'threads' => 123
],
'firmware' => [
'bootloader' => 'efi',
'secureBoot' => true,
'uuid' => '<string>',
'serial' => '<string>',
'smbios' => [
'manufacturer' => '<string>',
'product' => '<string>',
'version' => '<string>',
'sku' => '<string>',
'family' => '<string>'
]
],
'guestOS' => 'linux',
'networks' => [
[
'name' => 'default'
]
],
'cloudInit' => [
'userData' => '<string>',
'userDataBase64' => '<string>',
'userDataSecret' => '<string>',
'sshPublicKeySecrets' => [
'<string>'
]
],
'accessCredentials' => [
[
'sshPublicKeySecret' => '<string>',
'users' => [
'<string>'
],
'deliveryMethod' => 'qemuGuestAgent'
]
],
'runStrategy' => 'Always',
'clock' => [
'timezone' => 'UTC'
],
'hostname' => '<string>',
'subdomain' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.cpln.io/org/{org}/gvc/{gvc}/workload"
payload := strings.NewReader("{\n \"description\": \"<string>\",\n \"tags\": {},\n \"name\": \"<string>\",\n \"health\": {\n \"readiness\": \"<string>\",\n \"syncFailed\": true,\n \"readyLocations\": 123,\n \"totalLocations\": 123,\n \"readyReplicas\": 123,\n \"totalReplicas\": 123\n },\n \"spec\": {\n \"type\": \"serverless\",\n \"identityLink\": \"<string>\",\n \"containers\": [\n {\n \"name\": \"<string>\",\n \"image\": \"<string>\",\n \"workingDir\": \"<string>\",\n \"metrics\": {\n \"port\": 123,\n \"path\": \"/metrics\",\n \"dropMetrics\": [\n \"<string>\"\n ]\n },\n \"port\": 123,\n \"ports\": [\n {\n \"protocol\": \"http\",\n \"number\": 123\n }\n ],\n \"memory\": \"128Mi\",\n \"readinessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"initialDelaySeconds\": 123,\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123\n },\n \"livenessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123,\n \"initialDelaySeconds\": 123\n },\n \"cpu\": \"50m\",\n \"minCpu\": \"<string>\",\n \"minMemory\": \"<string>\",\n \"env\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"gpu\": {\n \"nvidia\": {\n \"model\": {},\n \"quantity\": 123\n },\n \"custom\": {\n \"resource\": \"<string>\",\n \"runtimeClass\": \"<string>\",\n \"quantity\": 123\n }\n },\n \"inheritEnv\": true,\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"lifecycle\": {\n \"postStart\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n },\n \"preStop\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n }\n },\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n ],\n \"firewallConfig\": {\n \"external\": {\n \"inboundAllowCIDR\": [\n \"<string>\"\n ],\n \"inboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"outboundAllowHostname\": [\n \"<string>\"\n ],\n \"outboundAllowPort\": [\n {\n \"protocol\": \"tcp\",\n \"number\": 123\n }\n ],\n \"outboundAllowCIDR\": [\n \"<string>\"\n ],\n \"outboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"http\": {\n \"inboundHeaderFilter\": [\n {\n \"key\": \"<string>\",\n \"allowedValues\": [\n \"<string>\"\n ],\n \"blockedValues\": [\n \"<string>\"\n ]\n }\n ]\n }\n },\n \"internal\": {\n \"inboundAllowType\": \"none\",\n \"inboundAllowWorkload\": [\n \"<string>\"\n ]\n }\n },\n \"defaultOptions\": {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n }\n },\n \"localOptions\": [\n {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n },\n \"location\": \"<string>\"\n }\n ],\n \"job\": {\n \"schedule\": \"<string>\",\n \"concurrencyPolicy\": \"Forbid\",\n \"historyLimit\": 123,\n \"activeDeadlineSeconds\": 123\n },\n \"sidecar\": {\n \"envoy\": {\n \"accessLog\": [\n {\n \"priority\": 123,\n \"name\": \"envoy.http_grpc_access_log\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"typed_config\": {\n \"@type\": {},\n \"common_config\": {\n \"log_name\": \"<string>\",\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"buffer_flush_interval\": \"<string>\",\n \"buffer_size_bytes\": 123,\n \"filter_state_objects_to_log\": [\n \"<string>\"\n ],\n \"grpc_stream_retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"additional_request_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_trailers_to_log\": [\n \"<string>\"\n ]\n }\n }\n ],\n \"clusters\": [\n {\n \"name\": \"<string>\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"transport_socket_matches\": {},\n \"alt_stat_name\": {},\n \"cluster_type\": {},\n \"eds_cluster_config\": {},\n \"connect_timeout\": {},\n \"per_connection_buffer_limit_bytes\": {},\n \"lb_policy\": {},\n \"load_assignment\": {\n \"cluster_name\": \"<string>\",\n \"endpoints\": {},\n \"policy\": {}\n },\n \"health_checks\": {},\n \"max_requests_per_connection\": {},\n \"circuit_breakers\": {},\n \"upstream_http_protocol_options\": {},\n \"common_http_protocol_options\": {},\n \"http_protocol_options\": {},\n \"http2_protocol_options\": {},\n \"typed_extension_protocol_options\": {},\n \"dns_refresh_rate\": {},\n \"dns_failure_refresh_rate\": {},\n \"respect_dns_ttl\": {},\n \"dns_lookup_family\": {},\n \"dns_resolvers\": {},\n \"use_tcp_for_dns_lookups\": {},\n \"dns_resolution_config\": {},\n \"typed_dns_resolver_config\": {},\n \"wait_for_warm_on_init\": {},\n \"outlier_detection\": {},\n \"cleanup_interval\": {},\n \"upstream_bind_config\": {},\n \"lb_subset_config\": {},\n \"ring_hash_lb_config\": {},\n \"maglev_lb_config\": {},\n \"least_request_lb_config\": {},\n \"common_lb_config\": {},\n \"transport_socket\": {},\n \"metadata\": {},\n \"protocol_selection\": {},\n \"upstream_connection_options\": {},\n \"close_connections_on_host_health_failure\": {},\n \"ignore_health_on_host_removal\": {},\n \"filters\": {},\n \"load_balancing_policy\": {},\n \"track_timeout_budgets\": {},\n \"upstream_config\": {},\n \"track_cluster_stats\": {},\n \"preconnect_policy\": {},\n \"connection_pool_per_downstream_connection\": {}\n }\n ],\n \"excludedExternalAuth\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"excludedRateLimit\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"http\": [\n {\n \"priority\": 123,\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"name\": \"envoy.filters.http.ext_authz\",\n \"typed_config\": {\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"http_service\": {\n \"server_uri\": {\n \"uri\": \"<string>\",\n \"cluster\": \"<string>\",\n \"timeout\": \"<string>\"\n },\n \"path_prefix\": \"<string>\",\n \"authorization_request\": {\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"headers_to_add\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"authorization_response\": {\n \"allowed_upstream_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_upstream_headers_to_append\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers_on_success\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"dynamic_metadata_from_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n }\n }\n },\n \"failure_mode_allow\": true,\n \"failure_mode_allow_header_add\": true,\n \"with_request_body\": {\n \"max_request_bytes\": 123,\n \"allow_partial_message\": true,\n \"pack_as_bytes\": true\n },\n \"clear_route_cache\": true,\n \"status_on_error\": {},\n \"metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"filter_enabled\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"deny_at_disable\": {\n \"default_value\": true,\n \"runtime_key\": \"<string>\"\n },\n \"include_peer_certificate\": true,\n \"stat_prefix\": \"<string>\",\n \"bootstrap_metadata_labels_key\": \"<string>\",\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"include_tls_session\": true,\n \"charge_cluster_response_stats\": true,\n \"@type\": \"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz\"\n }\n }\n ],\n \"network\": [\n {}\n ],\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n },\n \"supportDynamicTags\": true,\n \"rolloutOptions\": {\n \"minReadySeconds\": 123,\n \"maxUnavailableReplicas\": \"<string>\",\n \"maxSurgeReplicas\": \"<string>\",\n \"scalingPolicy\": \"OrderedReady\",\n \"terminationGracePeriodSeconds\": 123\n },\n \"securityOptions\": {\n \"filesystemGroupId\": 123,\n \"runAsUser\": 123\n },\n \"loadBalancer\": {\n \"direct\": {\n \"enabled\": true,\n \"ports\": [\n {\n \"externalPort\": 123,\n \"containerPort\": 123\n }\n ],\n \"ipSet\": \"<string>\"\n },\n \"geoLocation\": {\n \"enabled\": true,\n \"headers\": {\n \"asn\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"region\": \"<string>\"\n }\n },\n \"replicaDirect\": true\n },\n \"extras\": {\n \"affinity\": {},\n \"tolerations\": [\n {}\n ],\n \"topologySpreadConstraints\": [\n {}\n ]\n },\n \"requestRetryPolicy\": {\n \"attempts\": 123,\n \"retryOn\": [\n \"<string>\"\n ]\n },\n \"vm\": {\n \"bootDisk\": {\n \"source\": {\n \"oci\": {\n \"image\": \"<string>\"\n },\n \"http\": {\n \"url\": \"<string>\",\n \"checksum\": \"<string>\"\n }\n },\n \"persist\": {\n \"volumeSet\": \"<string>\"\n },\n \"bus\": \"virtio\",\n \"bootOrder\": 123\n },\n \"cpu\": {\n \"sockets\": 123,\n \"threads\": 123\n },\n \"firmware\": {\n \"bootloader\": \"efi\",\n \"secureBoot\": true,\n \"uuid\": \"<string>\",\n \"serial\": \"<string>\",\n \"smbios\": {\n \"manufacturer\": \"<string>\",\n \"product\": \"<string>\",\n \"version\": \"<string>\",\n \"sku\": \"<string>\",\n \"family\": \"<string>\"\n }\n },\n \"guestOS\": \"linux\",\n \"networks\": [\n {\n \"name\": \"default\"\n }\n ],\n \"cloudInit\": {\n \"userData\": \"<string>\",\n \"userDataBase64\": \"<string>\",\n \"userDataSecret\": \"<string>\",\n \"sshPublicKeySecrets\": [\n \"<string>\"\n ]\n },\n \"accessCredentials\": [\n {\n \"sshPublicKeySecret\": \"<string>\",\n \"users\": [\n \"<string>\"\n ],\n \"deliveryMethod\": \"qemuGuestAgent\"\n }\n ],\n \"runStrategy\": \"Always\",\n \"clock\": {\n \"timezone\": \"UTC\"\n },\n \"hostname\": \"<string>\",\n \"subdomain\": \"<string>\"\n }\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.cpln.io/org/{org}/gvc/{gvc}/workload")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"description\": \"<string>\",\n \"tags\": {},\n \"name\": \"<string>\",\n \"health\": {\n \"readiness\": \"<string>\",\n \"syncFailed\": true,\n \"readyLocations\": 123,\n \"totalLocations\": 123,\n \"readyReplicas\": 123,\n \"totalReplicas\": 123\n },\n \"spec\": {\n \"type\": \"serverless\",\n \"identityLink\": \"<string>\",\n \"containers\": [\n {\n \"name\": \"<string>\",\n \"image\": \"<string>\",\n \"workingDir\": \"<string>\",\n \"metrics\": {\n \"port\": 123,\n \"path\": \"/metrics\",\n \"dropMetrics\": [\n \"<string>\"\n ]\n },\n \"port\": 123,\n \"ports\": [\n {\n \"protocol\": \"http\",\n \"number\": 123\n }\n ],\n \"memory\": \"128Mi\",\n \"readinessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"initialDelaySeconds\": 123,\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123\n },\n \"livenessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123,\n \"initialDelaySeconds\": 123\n },\n \"cpu\": \"50m\",\n \"minCpu\": \"<string>\",\n \"minMemory\": \"<string>\",\n \"env\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"gpu\": {\n \"nvidia\": {\n \"model\": {},\n \"quantity\": 123\n },\n \"custom\": {\n \"resource\": \"<string>\",\n \"runtimeClass\": \"<string>\",\n \"quantity\": 123\n }\n },\n \"inheritEnv\": true,\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"lifecycle\": {\n \"postStart\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n },\n \"preStop\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n }\n },\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n ],\n \"firewallConfig\": {\n \"external\": {\n \"inboundAllowCIDR\": [\n \"<string>\"\n ],\n \"inboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"outboundAllowHostname\": [\n \"<string>\"\n ],\n \"outboundAllowPort\": [\n {\n \"protocol\": \"tcp\",\n \"number\": 123\n }\n ],\n \"outboundAllowCIDR\": [\n \"<string>\"\n ],\n \"outboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"http\": {\n \"inboundHeaderFilter\": [\n {\n \"key\": \"<string>\",\n \"allowedValues\": [\n \"<string>\"\n ],\n \"blockedValues\": [\n \"<string>\"\n ]\n }\n ]\n }\n },\n \"internal\": {\n \"inboundAllowType\": \"none\",\n \"inboundAllowWorkload\": [\n \"<string>\"\n ]\n }\n },\n \"defaultOptions\": {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n }\n },\n \"localOptions\": [\n {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n },\n \"location\": \"<string>\"\n }\n ],\n \"job\": {\n \"schedule\": \"<string>\",\n \"concurrencyPolicy\": \"Forbid\",\n \"historyLimit\": 123,\n \"activeDeadlineSeconds\": 123\n },\n \"sidecar\": {\n \"envoy\": {\n \"accessLog\": [\n {\n \"priority\": 123,\n \"name\": \"envoy.http_grpc_access_log\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"typed_config\": {\n \"@type\": {},\n \"common_config\": {\n \"log_name\": \"<string>\",\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"buffer_flush_interval\": \"<string>\",\n \"buffer_size_bytes\": 123,\n \"filter_state_objects_to_log\": [\n \"<string>\"\n ],\n \"grpc_stream_retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"additional_request_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_trailers_to_log\": [\n \"<string>\"\n ]\n }\n }\n ],\n \"clusters\": [\n {\n \"name\": \"<string>\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"transport_socket_matches\": {},\n \"alt_stat_name\": {},\n \"cluster_type\": {},\n \"eds_cluster_config\": {},\n \"connect_timeout\": {},\n \"per_connection_buffer_limit_bytes\": {},\n \"lb_policy\": {},\n \"load_assignment\": {\n \"cluster_name\": \"<string>\",\n \"endpoints\": {},\n \"policy\": {}\n },\n \"health_checks\": {},\n \"max_requests_per_connection\": {},\n \"circuit_breakers\": {},\n \"upstream_http_protocol_options\": {},\n \"common_http_protocol_options\": {},\n \"http_protocol_options\": {},\n \"http2_protocol_options\": {},\n \"typed_extension_protocol_options\": {},\n \"dns_refresh_rate\": {},\n \"dns_failure_refresh_rate\": {},\n \"respect_dns_ttl\": {},\n \"dns_lookup_family\": {},\n \"dns_resolvers\": {},\n \"use_tcp_for_dns_lookups\": {},\n \"dns_resolution_config\": {},\n \"typed_dns_resolver_config\": {},\n \"wait_for_warm_on_init\": {},\n \"outlier_detection\": {},\n \"cleanup_interval\": {},\n \"upstream_bind_config\": {},\n \"lb_subset_config\": {},\n \"ring_hash_lb_config\": {},\n \"maglev_lb_config\": {},\n \"least_request_lb_config\": {},\n \"common_lb_config\": {},\n \"transport_socket\": {},\n \"metadata\": {},\n \"protocol_selection\": {},\n \"upstream_connection_options\": {},\n \"close_connections_on_host_health_failure\": {},\n \"ignore_health_on_host_removal\": {},\n \"filters\": {},\n \"load_balancing_policy\": {},\n \"track_timeout_budgets\": {},\n \"upstream_config\": {},\n \"track_cluster_stats\": {},\n \"preconnect_policy\": {},\n \"connection_pool_per_downstream_connection\": {}\n }\n ],\n \"excludedExternalAuth\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"excludedRateLimit\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"http\": [\n {\n \"priority\": 123,\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"name\": \"envoy.filters.http.ext_authz\",\n \"typed_config\": {\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"http_service\": {\n \"server_uri\": {\n \"uri\": \"<string>\",\n \"cluster\": \"<string>\",\n \"timeout\": \"<string>\"\n },\n \"path_prefix\": \"<string>\",\n \"authorization_request\": {\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"headers_to_add\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"authorization_response\": {\n \"allowed_upstream_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_upstream_headers_to_append\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers_on_success\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"dynamic_metadata_from_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n }\n }\n },\n \"failure_mode_allow\": true,\n \"failure_mode_allow_header_add\": true,\n \"with_request_body\": {\n \"max_request_bytes\": 123,\n \"allow_partial_message\": true,\n \"pack_as_bytes\": true\n },\n \"clear_route_cache\": true,\n \"status_on_error\": {},\n \"metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"filter_enabled\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"deny_at_disable\": {\n \"default_value\": true,\n \"runtime_key\": \"<string>\"\n },\n \"include_peer_certificate\": true,\n \"stat_prefix\": \"<string>\",\n \"bootstrap_metadata_labels_key\": \"<string>\",\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"include_tls_session\": true,\n \"charge_cluster_response_stats\": true,\n \"@type\": \"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz\"\n }\n }\n ],\n \"network\": [\n {}\n ],\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n },\n \"supportDynamicTags\": true,\n \"rolloutOptions\": {\n \"minReadySeconds\": 123,\n \"maxUnavailableReplicas\": \"<string>\",\n \"maxSurgeReplicas\": \"<string>\",\n \"scalingPolicy\": \"OrderedReady\",\n \"terminationGracePeriodSeconds\": 123\n },\n \"securityOptions\": {\n \"filesystemGroupId\": 123,\n \"runAsUser\": 123\n },\n \"loadBalancer\": {\n \"direct\": {\n \"enabled\": true,\n \"ports\": [\n {\n \"externalPort\": 123,\n \"containerPort\": 123\n }\n ],\n \"ipSet\": \"<string>\"\n },\n \"geoLocation\": {\n \"enabled\": true,\n \"headers\": {\n \"asn\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"region\": \"<string>\"\n }\n },\n \"replicaDirect\": true\n },\n \"extras\": {\n \"affinity\": {},\n \"tolerations\": [\n {}\n ],\n \"topologySpreadConstraints\": [\n {}\n ]\n },\n \"requestRetryPolicy\": {\n \"attempts\": 123,\n \"retryOn\": [\n \"<string>\"\n ]\n },\n \"vm\": {\n \"bootDisk\": {\n \"source\": {\n \"oci\": {\n \"image\": \"<string>\"\n },\n \"http\": {\n \"url\": \"<string>\",\n \"checksum\": \"<string>\"\n }\n },\n \"persist\": {\n \"volumeSet\": \"<string>\"\n },\n \"bus\": \"virtio\",\n \"bootOrder\": 123\n },\n \"cpu\": {\n \"sockets\": 123,\n \"threads\": 123\n },\n \"firmware\": {\n \"bootloader\": \"efi\",\n \"secureBoot\": true,\n \"uuid\": \"<string>\",\n \"serial\": \"<string>\",\n \"smbios\": {\n \"manufacturer\": \"<string>\",\n \"product\": \"<string>\",\n \"version\": \"<string>\",\n \"sku\": \"<string>\",\n \"family\": \"<string>\"\n }\n },\n \"guestOS\": \"linux\",\n \"networks\": [\n {\n \"name\": \"default\"\n }\n ],\n \"cloudInit\": {\n \"userData\": \"<string>\",\n \"userDataBase64\": \"<string>\",\n \"userDataSecret\": \"<string>\",\n \"sshPublicKeySecrets\": [\n \"<string>\"\n ]\n },\n \"accessCredentials\": [\n {\n \"sshPublicKeySecret\": \"<string>\",\n \"users\": [\n \"<string>\"\n ],\n \"deliveryMethod\": \"qemuGuestAgent\"\n }\n ],\n \"runStrategy\": \"Always\",\n \"clock\": {\n \"timezone\": \"UTC\"\n },\n \"hostname\": \"<string>\",\n \"subdomain\": \"<string>\"\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.cpln.io/org/{org}/gvc/{gvc}/workload")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"description\": \"<string>\",\n \"tags\": {},\n \"name\": \"<string>\",\n \"health\": {\n \"readiness\": \"<string>\",\n \"syncFailed\": true,\n \"readyLocations\": 123,\n \"totalLocations\": 123,\n \"readyReplicas\": 123,\n \"totalReplicas\": 123\n },\n \"spec\": {\n \"type\": \"serverless\",\n \"identityLink\": \"<string>\",\n \"containers\": [\n {\n \"name\": \"<string>\",\n \"image\": \"<string>\",\n \"workingDir\": \"<string>\",\n \"metrics\": {\n \"port\": 123,\n \"path\": \"/metrics\",\n \"dropMetrics\": [\n \"<string>\"\n ]\n },\n \"port\": 123,\n \"ports\": [\n {\n \"protocol\": \"http\",\n \"number\": 123\n }\n ],\n \"memory\": \"128Mi\",\n \"readinessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"initialDelaySeconds\": 123,\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123\n },\n \"livenessProbe\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n },\n \"grpc\": {\n \"port\": 123\n },\n \"tcpSocket\": {\n \"port\": 123\n },\n \"httpGet\": {\n \"path\": \"/\",\n \"port\": 123,\n \"httpHeaders\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"scheme\": \"HTTP\"\n },\n \"periodSeconds\": 123,\n \"timeoutSeconds\": 123,\n \"successThreshold\": 123,\n \"failureThreshold\": 123,\n \"initialDelaySeconds\": 123\n },\n \"cpu\": \"50m\",\n \"minCpu\": \"<string>\",\n \"minMemory\": \"<string>\",\n \"env\": [\n {\n \"name\": \"<string>\",\n \"value\": \"<string>\"\n }\n ],\n \"gpu\": {\n \"nvidia\": {\n \"model\": {},\n \"quantity\": 123\n },\n \"custom\": {\n \"resource\": \"<string>\",\n \"runtimeClass\": \"<string>\",\n \"quantity\": 123\n }\n },\n \"inheritEnv\": true,\n \"command\": \"<string>\",\n \"args\": [\n \"<string>\"\n ],\n \"lifecycle\": {\n \"postStart\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n },\n \"preStop\": {\n \"exec\": {\n \"command\": [\n \"<string>\"\n ]\n }\n }\n },\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n ],\n \"firewallConfig\": {\n \"external\": {\n \"inboundAllowCIDR\": [\n \"<string>\"\n ],\n \"inboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"outboundAllowHostname\": [\n \"<string>\"\n ],\n \"outboundAllowPort\": [\n {\n \"protocol\": \"tcp\",\n \"number\": 123\n }\n ],\n \"outboundAllowCIDR\": [\n \"<string>\"\n ],\n \"outboundBlockedCIDR\": [\n \"<string>\"\n ],\n \"http\": {\n \"inboundHeaderFilter\": [\n {\n \"key\": \"<string>\",\n \"allowedValues\": [\n \"<string>\"\n ],\n \"blockedValues\": [\n \"<string>\"\n ]\n }\n ]\n }\n },\n \"internal\": {\n \"inboundAllowType\": \"none\",\n \"inboundAllowWorkload\": [\n \"<string>\"\n ]\n }\n },\n \"defaultOptions\": {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n }\n },\n \"localOptions\": [\n {\n \"autoscaling\": {\n \"multi\": [\n {\n \"metric\": {},\n \"target\": 123\n }\n ],\n \"target\": 123,\n \"maxScale\": 123,\n \"minScale\": 123,\n \"scaleToZeroDelay\": 123,\n \"maxConcurrency\": 123,\n \"keda\": {\n \"triggers\": [\n {\n \"type\": \"<string>\",\n \"metadata\": {},\n \"name\": \"<string>\",\n \"useCachedMetrics\": true,\n \"authenticationRef\": {\n \"name\": \"<string>\"\n }\n }\n ],\n \"advanced\": {\n \"scalingModifiers\": {\n \"target\": \"<string>\",\n \"activationTarget\": \"<string>\",\n \"formula\": \"<string>\"\n }\n },\n \"fallback\": {\n \"failureThreshold\": 123,\n \"replicas\": 123\n },\n \"pollingInterval\": 123,\n \"cooldownPeriod\": 123,\n \"initialCooldownPeriod\": 123\n }\n },\n \"timeoutSeconds\": 123,\n \"capacityAI\": true,\n \"capacityAIUpdateMinutes\": 123,\n \"spot\": true,\n \"debug\": true,\n \"suspend\": true,\n \"multiZone\": {\n \"enabled\": true\n },\n \"location\": \"<string>\"\n }\n ],\n \"job\": {\n \"schedule\": \"<string>\",\n \"concurrencyPolicy\": \"Forbid\",\n \"historyLimit\": 123,\n \"activeDeadlineSeconds\": 123\n },\n \"sidecar\": {\n \"envoy\": {\n \"accessLog\": [\n {\n \"priority\": 123,\n \"name\": \"envoy.http_grpc_access_log\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"typed_config\": {\n \"@type\": {},\n \"common_config\": {\n \"log_name\": \"<string>\",\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"buffer_flush_interval\": \"<string>\",\n \"buffer_size_bytes\": 123,\n \"filter_state_objects_to_log\": [\n \"<string>\"\n ],\n \"grpc_stream_retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"additional_request_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_headers_to_log\": [\n \"<string>\"\n ],\n \"additional_response_trailers_to_log\": [\n \"<string>\"\n ]\n }\n }\n ],\n \"clusters\": [\n {\n \"name\": \"<string>\",\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"transport_socket_matches\": {},\n \"alt_stat_name\": {},\n \"cluster_type\": {},\n \"eds_cluster_config\": {},\n \"connect_timeout\": {},\n \"per_connection_buffer_limit_bytes\": {},\n \"lb_policy\": {},\n \"load_assignment\": {\n \"cluster_name\": \"<string>\",\n \"endpoints\": {},\n \"policy\": {}\n },\n \"health_checks\": {},\n \"max_requests_per_connection\": {},\n \"circuit_breakers\": {},\n \"upstream_http_protocol_options\": {},\n \"common_http_protocol_options\": {},\n \"http_protocol_options\": {},\n \"http2_protocol_options\": {},\n \"typed_extension_protocol_options\": {},\n \"dns_refresh_rate\": {},\n \"dns_failure_refresh_rate\": {},\n \"respect_dns_ttl\": {},\n \"dns_lookup_family\": {},\n \"dns_resolvers\": {},\n \"use_tcp_for_dns_lookups\": {},\n \"dns_resolution_config\": {},\n \"typed_dns_resolver_config\": {},\n \"wait_for_warm_on_init\": {},\n \"outlier_detection\": {},\n \"cleanup_interval\": {},\n \"upstream_bind_config\": {},\n \"lb_subset_config\": {},\n \"ring_hash_lb_config\": {},\n \"maglev_lb_config\": {},\n \"least_request_lb_config\": {},\n \"common_lb_config\": {},\n \"transport_socket\": {},\n \"metadata\": {},\n \"protocol_selection\": {},\n \"upstream_connection_options\": {},\n \"close_connections_on_host_health_failure\": {},\n \"ignore_health_on_host_removal\": {},\n \"filters\": {},\n \"load_balancing_policy\": {},\n \"track_timeout_budgets\": {},\n \"upstream_config\": {},\n \"track_cluster_stats\": {},\n \"preconnect_policy\": {},\n \"connection_pool_per_downstream_connection\": {}\n }\n ],\n \"excludedExternalAuth\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"excludedRateLimit\": [\n {\n \"match\": {\n \"prefix\": \"<string>\",\n \"path\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"path_separated_prefix\": \"<string>\",\n \"path_match_policy\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"case_sensitive\": true,\n \"runtime_fraction\": {\n \"default_value\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"runtime_key\": \"<string>\"\n },\n \"headers\": [\n {\n \"name\": \"<string>\",\n \"safe_regex_match\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"range_match\": {\n \"start\": 123,\n \"end\": 123\n },\n \"present_match\": true,\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"invert_match\": true,\n \"treat_missing_header_as_empty\": true\n }\n ],\n \"query_parameters\": [\n {\n \"name\": \"<string>\",\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"present_match\": true\n }\n ],\n \"grpc\": {\n \"presented\": true,\n \"validated\": true\n },\n \"tls_context\": {\n \"presented\": true,\n \"validated\": true\n },\n \"dynamic_metadata\": [\n {\n \"filter\": \"<string>\",\n \"path\": [\n {\n \"key\": \"<string>\"\n }\n ],\n \"value\": {\n \"null_match\": {},\n \"double_match\": {\n \"range\": {\n \"start\": 123,\n \"end\": 123\n },\n \"exact\": 123\n },\n \"string_match\": {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n },\n \"bool_match\": true,\n \"present_match\": true\n },\n \"invert\": true\n }\n ]\n },\n \"port\": 123,\n \"svcPort\": 123\n }\n ],\n \"http\": [\n {\n \"priority\": 123,\n \"excludedWorkloads\": [\n \"<string>\"\n ],\n \"name\": \"envoy.filters.http.ext_authz\",\n \"typed_config\": {\n \"grpc_service\": {\n \"envoy_grpc\": {\n \"cluster_name\": \"<string>\",\n \"authority\": {\n \"adjust\": null,\n \"in\": false,\n \"iterables\": null,\n \"map\": null,\n \"separator\": \".\",\n \"type\": \"value\",\n \"ancestor\": 1,\n \"path\": [\n \"cluster_name\"\n ],\n \"depth\": 1,\n \"key\": \"cluster_name\",\n \"root\": \"cluster_name\",\n \"display\": \"ref:cluster_name\"\n },\n \"retry_policy\": {\n \"retry_back_off\": {\n \"base_interval\": \"<string>\",\n \"max_interval\": \"<string>\"\n },\n \"num_retries\": 123\n }\n },\n \"google_grpc\": {\n \"target_uri\": \"<string>\",\n \"channel_credentials\": {\n \"ssl_credentials\": {\n \"root_certs\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"private_key\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n },\n \"cert_chain\": {\n \"filename\": \"<string>\",\n \"inline_bytes\": \"<unknown>\",\n \"inline_string\": \"<string>\",\n \"environment_variable\": \"<string>\"\n }\n },\n \"google_default\": {}\n },\n \"call_credentials\": [\n {\n \"access_token\": \"<string>\",\n \"google_compute_engine\": {},\n \"google_refresh_token\": \"<string>\",\n \"service_account_jwt_access\": {\n \"json_key\": \"<string>\",\n \"token_lifetime_seconds\": 123\n },\n \"google_iam\": {\n \"authorization_token\": \"<string>\",\n \"authority_selector\": \"<string>\"\n },\n \"from_plugin\": {\n \"name\": \"<string>\",\n \"typed_config\": {}\n },\n \"sts_service\": {\n \"token_exchange_service_uri\": \"<string>\",\n \"resource\": \"<string>\",\n \"audience\": \"<string>\",\n \"scope\": \"<string>\",\n \"requested_token_type\": \"<string>\",\n \"subject_token_path\": \"<string>\",\n \"subject_token_type\": \"<string>\",\n \"actor_token_path\": \"<string>\",\n \"actor_token_type\": \"<string>\"\n }\n }\n ],\n \"stat_prefix\": \"<string>\",\n \"credentials_factory_name\": \"<string>\",\n \"config\": {}\n },\n \"timeout\": \"<string>\",\n \"initial_metadata\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"http_service\": {\n \"server_uri\": {\n \"uri\": \"<string>\",\n \"cluster\": \"<string>\",\n \"timeout\": \"<string>\"\n },\n \"path_prefix\": \"<string>\",\n \"authorization_request\": {\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"headers_to_add\": [\n {\n \"key\": \"<string>\",\n \"value\": \"<string>\",\n \"raw_value\": \"<unknown>\"\n }\n ]\n },\n \"authorization_response\": {\n \"allowed_upstream_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_upstream_headers_to_append\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"allowed_client_headers_on_success\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"dynamic_metadata_from_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n }\n }\n },\n \"failure_mode_allow\": true,\n \"failure_mode_allow_header_add\": true,\n \"with_request_body\": {\n \"max_request_bytes\": 123,\n \"allow_partial_message\": true,\n \"pack_as_bytes\": true\n },\n \"clear_route_cache\": true,\n \"status_on_error\": {},\n \"metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"route_typed_metadata_context_namespaces\": [\n \"<string>\"\n ],\n \"filter_enabled\": {\n \"numerator\": 123,\n \"denominator\": 123\n },\n \"deny_at_disable\": {\n \"default_value\": true,\n \"runtime_key\": \"<string>\"\n },\n \"include_peer_certificate\": true,\n \"stat_prefix\": \"<string>\",\n \"bootstrap_metadata_labels_key\": \"<string>\",\n \"allowed_headers\": {\n \"patterns\": [\n {\n \"exact\": \"<string>\",\n \"prefix\": \"<string>\",\n \"suffix\": \"<string>\",\n \"safe_regex\": {\n \"google_re2\": {\n \"max_program_size\": 123\n },\n \"regex\": \"<string>\"\n },\n \"contains\": \"<string>\",\n \"ignore_case\": true\n }\n ]\n },\n \"include_tls_session\": true,\n \"charge_cluster_response_stats\": true,\n \"@type\": \"type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz\"\n }\n }\n ],\n \"network\": [\n {}\n ],\n \"volumes\": [\n {\n \"uri\": \"<string>\",\n \"recoveryPolicy\": \"retain\",\n \"path\": \"<string>\",\n \"name\": \"<string>\",\n \"bootOrder\": 123\n }\n ]\n }\n },\n \"supportDynamicTags\": true,\n \"rolloutOptions\": {\n \"minReadySeconds\": 123,\n \"maxUnavailableReplicas\": \"<string>\",\n \"maxSurgeReplicas\": \"<string>\",\n \"scalingPolicy\": \"OrderedReady\",\n \"terminationGracePeriodSeconds\": 123\n },\n \"securityOptions\": {\n \"filesystemGroupId\": 123,\n \"runAsUser\": 123\n },\n \"loadBalancer\": {\n \"direct\": {\n \"enabled\": true,\n \"ports\": [\n {\n \"externalPort\": 123,\n \"containerPort\": 123\n }\n ],\n \"ipSet\": \"<string>\"\n },\n \"geoLocation\": {\n \"enabled\": true,\n \"headers\": {\n \"asn\": \"<string>\",\n \"city\": \"<string>\",\n \"country\": \"<string>\",\n \"region\": \"<string>\"\n }\n },\n \"replicaDirect\": true\n },\n \"extras\": {\n \"affinity\": {},\n \"tolerations\": [\n {}\n ],\n \"topologySpreadConstraints\": [\n {}\n ]\n },\n \"requestRetryPolicy\": {\n \"attempts\": 123,\n \"retryOn\": [\n \"<string>\"\n ]\n },\n \"vm\": {\n \"bootDisk\": {\n \"source\": {\n \"oci\": {\n \"image\": \"<string>\"\n },\n \"http\": {\n \"url\": \"<string>\",\n \"checksum\": \"<string>\"\n }\n },\n \"persist\": {\n \"volumeSet\": \"<string>\"\n },\n \"bus\": \"virtio\",\n \"bootOrder\": 123\n },\n \"cpu\": {\n \"sockets\": 123,\n \"threads\": 123\n },\n \"firmware\": {\n \"bootloader\": \"efi\",\n \"secureBoot\": true,\n \"uuid\": \"<string>\",\n \"serial\": \"<string>\",\n \"smbios\": {\n \"manufacturer\": \"<string>\",\n \"product\": \"<string>\",\n \"version\": \"<string>\",\n \"sku\": \"<string>\",\n \"family\": \"<string>\"\n }\n },\n \"guestOS\": \"linux\",\n \"networks\": [\n {\n \"name\": \"default\"\n }\n ],\n \"cloudInit\": {\n \"userData\": \"<string>\",\n \"userDataBase64\": \"<string>\",\n \"userDataSecret\": \"<string>\",\n \"sshPublicKeySecrets\": [\n \"<string>\"\n ]\n },\n \"accessCredentials\": [\n {\n \"sshPublicKeySecret\": \"<string>\",\n \"users\": [\n \"<string>\"\n ],\n \"deliveryMethod\": \"qemuGuestAgent\"\n }\n ],\n \"runStrategy\": \"Always\",\n \"clock\": {\n \"timezone\": \"UTC\"\n },\n \"hostname\": \"<string>\",\n \"subdomain\": \"<string>\"\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"status": 123,
"message": "<string>",
"code": "<string>",
"details": {},
"id": "<string>"
}{
"status": 123,
"message": "<string>",
"code": "<string>",
"details": {},
"id": "<string>"
}Authorizations
serviceAccountKeyjwt
Service account key can be used as API keys
Body
application/json
Response
Workload was created successfully
⌘I