Method: projects.locations.namespaces.services.resolve

Returns a service and its associated endpoints. Resolving a service is not considered an active developer method.

HTTP request

POST https://servicedirectory.googleapis.com/v1/{name=projects/*/locations/*/namespaces/*/services/*}:resolve

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
name

string

Required. The name of the service to resolve.

Authorization requires the following IAM permission on the specified resource name:

  • servicedirectory.services.resolve

Request body

The request body contains data with the following structure:

JSON representation
{
  "maxEndpoints": integer,
  "endpointFilter": string
}
Fields
maxEndpoints

integer

Optional. The maximum number of endpoints to return. Defaults to 25. Maximum is 100. If a value less than one is specified, the Default is used. If a value greater than the Maximum is specified, the Maximum is used.

endpointFilter

string

Optional. The filter applied to the endpoints of the resolved service.

General filter string syntax: <field> <operator> <value> (<logical connector>)

  • <field> can be name, address, port, or annotations.<key> for map field
  • <operator> can be <, >, <=, >=, !=, =, :. Of which : means HAS, and is roughly the same as =
  • <value> must be the same data type as field
  • <logical connector> can be AND, OR, NOT

Examples of valid filters:

  • annotations.owner returns endpoints that have a annotation with the key owner, this is the same as annotations:owner
  • annotations.protocol=gRPC returns endpoints that have key/value protocol=gRPC
  • address=192.108.1.105 returns endpoints that have this address
  • port>8080 returns endpoints that have port number larger than 8080 * name>projects/my-project/locations/us-east1/namespaces/my-namespace/services/my-service/endpoints/endpoint-c returns endpoints that have name that is alphabetically later than the string, so "endpoint-e" is returned but "endpoint-a" is not * name=projects/my-project/locations/us-central1/namespaces/my-namespace/services/my-service/endpoints/ep-1 returns the endpoint that has an endpointId equal to ep-1
  • annotations.owner!=sd AND annotations.foo=bar returns endpoints that have owner in annotation key but value is not sd AND have key/value foo=bar
  • doesnotexist.foo=bar returns an empty list. Note that endpoint doesn't have a field called "doesnotexist". Since the filter does not match any endpoint, it returns no results

For more information about filtering, see API Filtering.

Response body

If successful, the response body contains data with the following structure:

The response message for LookupService.ResolveService.

JSON representation
{
  "service": {
    object (Service)
  }
}
Fields
service

object (Service)

Authorization Scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/cloud-platform

For more information, see the Authentication Overview.