Errors
Every Network error carries a stable numeric error_code and a machine-readable
reason. This page lists the logical error codes Network can return, across its domain
groups (5_3xx) and infrastructure groups (5_6xx).
For the full error envelope (the google.rpc.Status shape, the reason and
metadata fields, and how codes are structured) see Errors.
Network codes begin with 5 (for example 5300001, read as 5_300_001:
service, group, specific error). The wire value is always the flat integer; you
can match on either error_code or reason, both are stable.
The Status column is the canonical gRPC status the error maps to, which the
gateway renders as the matching HTTP status (see the
status codes table).
| Code | Reason | Status | Description |
|---|---|---|---|
5300001 | VPC_NAME_IS_BLANK | INVALID_ARGUMENT | VPC name must not be blank. |
5300002 | VPC_NAME_TOO_LONG | INVALID_ARGUMENT | VPC name must not exceed 63 characters. |
5300003 | VPC_CIDR_IS_NOT_VALID | INVALID_ARGUMENT | VPC CIDR is not valid. |
5300004 | VPC_WORKSPACE_ID_IS_NOT_VALID | INVALID_ARGUMENT | VPC workspace ID is not valid. |
5300005 | VPC_LOCATION_ID_NOT_VALID | INVALID_ARGUMENT | VPC zone ID is not valid. |
5300006 | VPC_HAS_CHILDREN | FAILED_PRECONDITION | VPC cannot be deleted because it has children. |
5300007 | VPC_NAME_ALREADY_EXISTS | ALREADY_EXISTS | VPC name already exists. |
5300008 | VPC_DISPLAY_NAME_IS_BLANK | INVALID_ARGUMENT | VPC display name is required. |
5300009 | VPC_DISPLAY_NAME_TOO_LONG | INVALID_ARGUMENT | VPC display name must not exceed 128 characters. |
5300010 | VPC_DISPLAY_NAME_NOT_VALID | INVALID_ARGUMENT | VPC display name must not contain control characters. |
5300011 | VPC_NAME_NOT_VALID | INVALID_ARGUMENT | VPC name must be valid: lowercase letters, digits and hyphens, starting with a letter and ending with a letter or digit. |
5300012 | VPC_DESCRIPTION_NOT_VALID | INVALID_ARGUMENT | Vpc description must be at most 1024 characters and carry no control or bidirectional characters. |
5301001 | SUBNET_NAME_IS_BLANK | INVALID_ARGUMENT | Subnet name must not be blank. |
5301002 | SUBNET_NAME_TOO_LONG | INVALID_ARGUMENT | Subnet name must not exceed 63 characters. |
5301003 | SUBNET_CIDR_IS_NOT_VALID | INVALID_ARGUMENT | Subnet CIDR is not valid. |
5301004 | SUBNET_GATEWAY_IP_NOT_WITHIN_CIDR | INVALID_ARGUMENT | Subnet gateway IP is not within the CIDR range. |
5301005 | SUBNET_CIDR_NOT_CONTAINED_IN_VPC | FAILED_PRECONDITION | Subnet CIDR is not contained within the VPC CIDR. |
5301006 | SUBNET_CIDR_OVERLAPS | FAILED_PRECONDITION | Subnet CIDR overlaps with an existing subnet in the same VPC. |
5301007 | SUBNET_LOCATION_ID_NOT_VALID | INVALID_ARGUMENT | Subnet location id is required. |
5301008 | SUBNET_HAS_ACTIVE_PORTS | FAILED_PRECONDITION | Subnet cannot be deleted because it has active ports. |
5301009 | SUBNET_GATEWAY_IP_IS_RESERVED | INVALID_ARGUMENT | Subnet gateway IP must not be the network or broadcast address. |
5301010 | SUBNET_NAME_ALREADY_EXISTS | ALREADY_EXISTS | Subnet name already exists within the VPC. |
5301011 | SUBNET_DISPLAY_NAME_IS_BLANK | INVALID_ARGUMENT | Subnet display name is required. |
5301012 | SUBNET_DISPLAY_NAME_TOO_LONG | INVALID_ARGUMENT | Subnet display name must not exceed 128 characters. |
5301013 | SUBNET_DISPLAY_NAME_NOT_VALID | INVALID_ARGUMENT | Subnet display name must not contain control characters. |
5301014 | SUBNET_NAME_NOT_VALID | INVALID_ARGUMENT | Subnet name must be valid: lowercase letters, digits and hyphens, starting with a letter and ending with a letter or digit. |
5301015 | SUBNET_DESCRIPTION_NOT_VALID | INVALID_ARGUMENT | Subnet description must be at most 1024 characters and carry no control or bidirectional characters. |
5302001 | FIREWALL_POLICY_NAME_IS_BLANK | INVALID_ARGUMENT | Firewall policy name must not be blank. |
5302002 | FIREWALL_POLICY_NAME_TOO_LONG | INVALID_ARGUMENT | Firewall policy name must not exceed 63 characters. |
5302003 | FIREWALL_POLICY_VPC_ID_IS_NOT_VALID | INVALID_ARGUMENT | Firewall policy VPC ID is not valid. |
5302004 | FIREWALL_POLICY_HAS_CHILDREN | FAILED_PRECONDITION | Firewall policy cannot be deleted because it has children. |
5302005 | FIREWALL_POLICY_RULE_PRIORITIES_ARE_NOT_UNIQUE | ALREADY_EXISTS | Firewall policy rule priorities must be unique within a policy. |
5302006 | FIREWALL_POLICY_RULE_COUNT_EXCEEDS_LIMIT | RESOURCE_EXHAUSTED | Firewall policy rule count exceeds the maximum allowed. |
5302007 | FIREWALL_POLICY_NAME_ALREADY_EXISTS | ALREADY_EXISTS | Firewall policy name already exists within the VPC. |
5302008 | FIREWALL_POLICY_HAS_ACTIVE_PORTS | FAILED_PRECONDITION | Firewall policy cannot be deleted because it is bound to active ports. |
5302009 | FIREWALL_POLICY_DISPLAY_NAME_IS_BLANK | INVALID_ARGUMENT | Firewall policy display name is required. |
5302010 | FIREWALL_POLICY_DISPLAY_NAME_TOO_LONG | INVALID_ARGUMENT | Firewall policy display name must not exceed 128 characters. |
5302011 | FIREWALL_POLICY_DISPLAY_NAME_NOT_VALID | INVALID_ARGUMENT | Firewall policy display name must not contain control characters. |
5302012 | FIREWALL_POLICY_NAME_NOT_VALID | INVALID_ARGUMENT | Firewall policy name must be valid: lowercase letters, digits and hyphens, starting with a letter and ending with a letter or digit. |
5302013 | FIREWALL_POLICY_DESCRIPTION_NOT_VALID | INVALID_ARGUMENT | FirewallPolicy description must be at most 1024 characters and carry no control or bidirectional characters. |
5303001 | FIREWALL_POLICY_RULE_DIRECTION_IS_NOT_VALID | INVALID_ARGUMENT | Firewall policy rule direction is not valid. |
5303002 | FIREWALL_POLICY_RULE_ACTION_IS_NOT_VALID | INVALID_ARGUMENT | Firewall policy rule action is not valid. |
5303003 | FIREWALL_POLICY_RULE_PORT_RANGE_IS_NOT_VALID | INVALID_ARGUMENT | Firewall policy rule port range is not valid. |
5303004 | FIREWALL_POLICY_RULE_PORT_RANGE_NOT_APPLICABLE_TO_ICMP | INVALID_ARGUMENT | Port range is not applicable to the ICMP protocol. |
5303005 | FIREWALL_POLICY_RULE_PRIORITY_IS_NOT_VALID | INVALID_ARGUMENT | Firewall policy rule priority is not valid. |
5303006 | FIREWALL_POLICY_RULE_SOURCE_CIDRS_NOT_VALID | INVALID_ARGUMENT | Firewall policy rule source CIDRs are not valid. |
5303007 | FIREWALL_POLICY_RULE_DESTINATION_CIDRS_NOT_VALID | INVALID_ARGUMENT | Firewall policy rule destination CIDRs are not valid. |
5303008 | FIREWALL_POLICY_RULE_MATCHES_IS_NOT_VALID | INVALID_ARGUMENT | Firewall policy rule must declare at least one protocol match. |
5303009 | FIREWALL_POLICY_RULE_NOT_FOUND_IN_POLICY | NOT_FOUND | Firewall policy rule not found within the firewall policy. |
5303010 | FIREWALL_POLICY_RULE_DESCRIPTION_NOT_VALID | INVALID_ARGUMENT | FirewallPolicyRule description must be at most 1024 characters and carry no control or bidirectional characters. |
5304001 | QUOTA_DEFINITION_METRIC_IS_BLANK | INVALID_ARGUMENT | Quota definition metric must not be blank. |
5304002 | QUOTA_DEFINITION_METRIC_FORMAT_IS_NOT_VALID | INVALID_ARGUMENT | Quota definition metric format is not valid. |
5304003 | QUOTA_DEFINITION_DISPLAY_NAME_IS_BLANK | INVALID_ARGUMENT | Quota definition display name must not be blank. |
5304004 | QUOTA_DEFINITION_DEFAULT_LIMIT_IS_NOT_VALID | INVALID_ARGUMENT | Quota definition default limit must be positive. |
5304005 | QUOTA_DEFINITION_REFRESH_INTERVAL_IS_NOT_VALID | INVALID_ARGUMENT | Quota definition refresh interval is not valid for the quota type. |
5305001 | QUOTA_LIMIT_EFFECTIVE_LIMIT_IS_NOT_VALID | INVALID_ARGUMENT | Quota limit effective limit must be positive. |
5305002 | QUOTA_LIMIT_SCOPE_ID_IS_NOT_VALID | INVALID_ARGUMENT | Quota limit container ID is not valid. |
5306001 | NETWORK_QUOTA_EXCEEDED | RESOURCE_EXHAUSTED | Network quota exceeded. |
5307001 | NETWORK_OPERATION_PROGRESS_OUT_OF_RANGE | INVALID_ARGUMENT | Operation progress must be between 0 and 100. |
5307002 | NETWORK_OPERATION_END_TIME_BEFORE_START_TIME | INVALID_ARGUMENT | Operation end time must not be before start time. |
5307004 | NETWORK_OPERATION_SCOPE_TYPE_NOT_VALID | INVALID_ARGUMENT | Operation scope type is not valid. |
5308001 | LOGICAL_PORT_STATIC_IP_OUT_OF_RANGE | INVALID_ARGUMENT | Requested IP is outside the subnet range. |
5308002 | LOGICAL_PORT_STATIC_IP_ALREADY_IN_USE | ALREADY_EXISTS | Requested IP is already in use. |
5308003 | SUBNET_ADDRESS_EXHAUSTED | RESOURCE_EXHAUSTED | Subnet address range is exhausted. |
5308004 | LOGICAL_PORT_SUBNET_ID_NOT_VALID | INVALID_ARGUMENT | Logical port subnet ID is not valid. |
5308005 | LOGICAL_PORT_WORKSPACE_ID_NOT_VALID | INVALID_ARGUMENT | Logical port workspace ID is not valid. |
5308006 | LOGICAL_PORT_VM_ID_NOT_VALID | INVALID_ARGUMENT | Logical port VM ID is not valid. |
5308007 | LOGICAL_PORT_READY_WITHOUT_ADDRESS | INVALID_ARGUMENT | A ready logical port must carry at least one assigned address. |
5308008 | LOGICAL_PORT_READY_WITHOUT_NETWORK | INVALID_ARGUMENT | A ready logical port must carry the network its interface attaches to. |
5309001 | NETWORK_LOCATION_NOT_FOUND | NOT_FOUND | Location referenced by the network request does not exist. |
5309002 | NETWORK_LOCATION_NOT_ACTIVE | FAILED_PRECONDITION | The location referenced by the network request is not active. |
5309003 | NETWORK_LOCATION_GLOBAL_NOT_ALLOWED | INVALID_ARGUMENT | A VPC or subnet cannot be placed at a global location. |
5309004 | NETWORK_LOCATION_KIND_NOT_SUPPORTED | UNIMPLEMENTED | The location kind is not supported for this resource. |
5600001 | UNKNOWN_INTEGRATION_VERSION | INVALID_ARGUMENT | The integration version is not recognized. |
5600002 | UNKNOWN_INTEGRATION_QUOTA_ENUM | INVALID_ARGUMENT | The quota enum value is not recognized. |
5601001 | KUBE_OVN_UNAVAILABLE | UNAVAILABLE | Kube-OVN control plane is unavailable. |
5601002 | KUBE_OVN_OPERATION_FAILED | UNAVAILABLE | Kube-OVN API operation failed. |
5602001 | UNKNOWN_SCHEMA_VERSION | DATA_LOSS | Schema version is not recognized. |
5602002 | VPC_NOT_FOUND | NOT_FOUND | VPC not found. |
5602003 | NETWORK_OPERATION_NOT_FOUND | NOT_FOUND | Network operation not found. |
5602004 | SUBNET_NOT_FOUND | NOT_FOUND | Subnet not found. |
5602005 | FIREWALL_POLICY_NOT_FOUND | NOT_FOUND | Firewall policy not found. |
5602006 | FIREWALL_POLICY_RULE_NOT_FOUND | NOT_FOUND | Firewall policy rule not found. |
5602007 | QUOTA_DEFINITION_NOT_FOUND | NOT_FOUND | Quota definition not found. |
5602008 | QUOTA_LIMIT_NOT_FOUND | NOT_FOUND | Quota limit not found. |
5602009 | LOGICAL_PORT_NOT_FOUND | NOT_FOUND | Logical port not found. |
Codes that reach you on an operation, not on a call
Section titled “Codes that reach you on an operation, not on a call”These never appear as the status of a request. They record why a long-running
operation did not finish, so they arrive in the operation record’s errors list
while the call that started it succeeded.
| Code | Reason | Description |
|---|---|---|
5307003 | NETWORK_OPERATION_ENGINE_APPLY_FAILED | The network engine did not apply the resource. |
Codes that are reported, not returned
Section titled “Codes that are reported, not returned”None of these is ever a request’s error_code. They say why something further
down refused, and they surface in one of two places: the errors list of an
operation record, or the detail of the error actually returned, written as
code:reason. Read them as the cause behind the status you were given.
| Code | Reason | Description |
|---|---|---|
5307003 | NETWORK_OPERATION_ENGINE_APPLY_FAILED | The network engine did not apply the resource. |