Method: urlMaps.patch

Patches the specified UrlMap resource with the data included in the request. This method supports PATCH semantics and uses the JSON merge patch format and processing rules.

HTTP request

PATCH https://compute.googleapis.com/compute/beta/projects/{project}/global/urlMaps/{resourceId}

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
project

string

Project ID for this request.

resourceId

string

Name of the UrlMap resource to patch.

Query parameters

Parameters
requestId

string

An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed.

For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments.

The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).

Request body

The request body contains data with the following structure:

JSON representation
{
  "id": string,
  "creationTimestamp": string,
  "name": string,
  "description": string,
  "selfLink": string,
  "hostRules": [
    {
      "description": string,
      "hosts": [
        string
      ],
      "pathMatcher": string
    }
  ],
  "pathMatchers": [
    {
      "name": string,
      "description": string,
      "defaultService": string,
      "defaultRouteAction": {
        "weightedBackendServices": [
          {
            "backendService": string,
            "weight": integer,
            "headerAction": {
              "requestHeadersToRemove": [
                string
              ],
              "requestHeadersToAdd": [
                {
                  "headerName": string,
                  "headerValue": string,
                  "replace": boolean
                }
              ],
              "responseHeadersToRemove": [
                string
              ],
              "responseHeadersToAdd": [
                {
                  "headerName": string,
                  "headerValue": string,
                  "replace": boolean
                }
              ]
            }
          }
        ],
        "urlRewrite": {
          "pathPrefixRewrite": string,
          "hostRewrite": string
        },
        "timeout": {
          "seconds": string,
          "nanos": integer
        },
        "retryPolicy": {
          "retryConditions": [
            string
          ],
          "numRetries": integer,
          "perTryTimeout": {
            "seconds": string,
            "nanos": integer
          }
        },
        "requestMirrorPolicy": {
          "backendService": string
        },
        "corsPolicy": {
          "allowOrigins": [
            string
          ],
          "allowOriginRegexes": [
            string
          ],
          "allowMethods": [
            string
          ],
          "allowHeaders": [
            string
          ],
          "exposeHeaders": [
            string
          ],
          "maxAge": integer,
          "allowCredentials": boolean,
          "disabled": boolean
        },
        "faultInjectionPolicy": {
          "delay": {
            "fixedDelay": {
              "seconds": string,
              "nanos": integer
            },
            "percentage": number
          },
          "abort": {
            "httpStatus": integer,
            "percentage": number
          }
        },
        "maxStreamDuration": {
          "seconds": string,
          "nanos": integer
        }
      },
      "defaultUrlRedirect": {
        "hostRedirect": string,
        "pathRedirect": string,
        "prefixRedirect": string,
        "redirectResponseCode": enum,
        "httpsRedirect": boolean,
        "stripQuery": boolean
      },
      "pathRules": [
        {
          "service": string,
          "routeAction": {
            "weightedBackendServices": [
              {
                "backendService": string,
                "weight": integer,
                "headerAction": {
                  "requestHeadersToRemove": [
                    string
                  ],
                  "requestHeadersToAdd": [
                    {
                      "headerName": string,
                      "headerValue": string,
                      "replace": boolean
                    }
                  ],
                  "responseHeadersToRemove": [
                    string
                  ],
                  "responseHeadersToAdd": [
                    {
                      "headerName": string,
                      "headerValue": string,
                      "replace": boolean
                    }
                  ]
                }
              }
            ],
            "urlRewrite": {
              "pathPrefixRewrite": string,
              "hostRewrite": string
            },
            "timeout": {
              "seconds": string,
              "nanos": integer
            },
            "retryPolicy": {
              "retryConditions": [
                string
              ],
              "numRetries": integer,
              "perTryTimeout": {
                "seconds": string,
                "nanos": integer
              }
            },
            "requestMirrorPolicy": {
              "backendService": string
            },
            "corsPolicy": {
              "allowOrigins": [
                string
              ],
              "allowOriginRegexes": [
                string
              ],
              "allowMethods": [
                string
              ],
              "allowHeaders": [
                string
              ],
              "exposeHeaders": [
                string
              ],
              "maxAge": integer,
              "allowCredentials": boolean,
              "disabled": boolean
            },
            "faultInjectionPolicy": {
              "delay": {
                "fixedDelay": {
                  "seconds": string,
                  "nanos": integer
                },
                "percentage": number
              },
              "abort": {
                "httpStatus": integer,
                "percentage": number
              }
            },
            "maxStreamDuration": {
              "seconds": string,
              "nanos": integer
            }
          },
          "urlRedirect": {
            "hostRedirect": string,
            "pathRedirect": string,
            "prefixRedirect": string,
            "redirectResponseCode": enum,
            "httpsRedirect": boolean,
            "stripQuery": boolean
          },
          "paths": [
            string
          ]
        }
      ],
      "routeRules": [
        {
          "priority": integer,
          "description": string,
          "matchRules": [
            {
              "prefixMatch": string,
              "fullPathMatch": string,
              "regexMatch": string,
              "ignoreCase": boolean,
              "headerMatches": [
                {
                  "headerName": string,
                  "exactMatch": string,
                  "regexMatch": string,
                  "rangeMatch": {
                    "rangeStart": string,
                    "rangeEnd": string
                  },
                  "presentMatch": boolean,
                  "prefixMatch": string,
                  "suffixMatch": string,
                  "invertMatch": boolean
                }
              ],
              "queryParameterMatches": [
                {
                  "name": string,
                  "presentMatch": boolean,
                  "exactMatch": string,
                  "regexMatch": string
                }
              ],
              "metadataFilters": [
                {
                  "filterMatchCriteria": enum,
                  "filterLabels": [
                    {
                      "name": string,
                      "value": string
                    }
                  ]
                }
              ]
            }
          ],
          "service": string,
          "routeAction": {
            "weightedBackendServices": [
              {
                "backendService": string,
                "weight": integer,
                "headerAction": {
                  "requestHeadersToRemove": [
                    string
                  ],
                  "requestHeadersToAdd": [
                    {
                      "headerName": string,
                      "headerValue": string,
                      "replace": boolean
                    }
                  ],
                  "responseHeadersToRemove": [
                    string
                  ],
                  "responseHeadersToAdd": [
                    {
                      "headerName": string,
                      "headerValue": string,
                      "replace": boolean
                    }
                  ]
                }
              }
            ],
            "urlRewrite": {
              "pathPrefixRewrite": string,
              "hostRewrite": string
            },
            "timeout": {
              "seconds": string,
              "nanos": integer
            },
            "retryPolicy": {
              "retryConditions": [
                string
              ],
              "numRetries": integer,
              "perTryTimeout": {
                "seconds": string,
                "nanos": integer
              }
            },
            "requestMirrorPolicy": {
              "backendService": string
            },
            "corsPolicy": {
              "allowOrigins": [
                string
              ],
              "allowOriginRegexes": [
                string
              ],
              "allowMethods": [
                string
              ],
              "allowHeaders": [
                string
              ],
              "exposeHeaders": [
                string
              ],
              "maxAge": integer,
              "allowCredentials": boolean,
              "disabled": boolean
            },
            "faultInjectionPolicy": {
              "delay": {
                "fixedDelay": {
                  "seconds": string,
                  "nanos": integer
                },
                "percentage": number
              },
              "abort": {
                "httpStatus": integer,
                "percentage": number
              }
            },
            "maxStreamDuration": {
              "seconds": string,
              "nanos": integer
            }
          },
          "urlRedirect": {
            "hostRedirect": string,
            "pathRedirect": string,
            "prefixRedirect": string,
            "redirectResponseCode": enum,
            "httpsRedirect": boolean,
            "stripQuery": boolean
          },
          "headerAction": {
            "requestHeadersToRemove": [
              string
            ],
            "requestHeadersToAdd": [
              {
                "headerName": string,
                "headerValue": string,
                "replace": boolean
              }
            ],
            "responseHeadersToRemove": [
              string
            ],
            "responseHeadersToAdd": [
              {
                "headerName": string,
                "headerValue": string,
                "replace": boolean
              }
            ]
          },
          "httpFilterConfigs": [
            {
              "filterName": string,
              "configTypeUrl": string,
              "config": string
            }
          ],
          "httpFilterMetadata": [
            {
              "filterName": string,
              "configTypeUrl": string,
              "config": string
            }
          ]
        }
      ],
      "headerAction": {
        "requestHeadersToRemove": [
          string
        ],
        "requestHeadersToAdd": [
          {
            "headerName": string,
            "headerValue": string,
            "replace": boolean
          }
        ],
        "responseHeadersToRemove": [
          string
        ],
        "responseHeadersToAdd": [
          {
            "headerName": string,
            "headerValue": string,
            "replace": boolean
          }
        ]
      }
    }
  ],
  "tests": [
    {
      "description": string,
      "host": string,
      "path": string,
      "headers": [
        {
          "name": string,
          "value": string
        }
      ],
      "service": string,
      "expectedOutputUrl": string,
      "expectedRedirectResponseCode": integer
    }
  ],
  "defaultService": string,
  "defaultRouteAction": {
    "weightedBackendServices": [
      {
        "backendService": string,
        "weight": integer,
        "headerAction": {
          "requestHeadersToRemove": [
            string
          ],
          "requestHeadersToAdd": [
            {
              "headerName": string,
              "headerValue": string,
              "replace": boolean
            }
          ],
          "responseHeadersToRemove": [
            string
          ],
          "responseHeadersToAdd":