Skip to main content

endpoints

Creates, updates, deletes, gets or lists an endpoints resource.

Overview

Nameendpoints
TypeResource
Idgoogle.servicedirectory.endpoints

Fields

The following fields are returned by SELECT queries:

Successful response

NameDatatypeDescription
namestringImmutable. The resource name for the endpoint in the format projects/*/locations/*/namespaces/*/services/*/endpoints/*.
addressstringOptional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like: * 8.8.8 * 8.8.8.8:53 * test:bad:address * [::1] * [::1]:8080 Limited to 45 characters.
annotationsobjectOptional. Annotations for the endpoint. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 512 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/) Annotations that fails to meet these requirements are rejected. Note: This field is equivalent to the metadata field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory.
networkstringImmutable. The Google Compute Engine network (VPC) of the endpoint in the format projects//locations/global/networks/*. The project must be specified by project number (project id is rejected). Incorrectly formatted networks are rejected, we also check to make sure that you have the servicedirectory.networks.attach permission on the project specified.
portinteger (int32)Optional. Service Directory rejects values outside of [0, 65535].
uidstringOutput only. The globally unique identifier of the endpoint in the UUID4 format.

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
getselectprojectsId, locationsId, namespacesId, servicesId, endpointsIdGets an endpoint.
listselectprojectsId, locationsId, namespacesId, servicesIdpageSize, pageToken, filter, orderByLists all endpoints.
createinsertprojectsId, locationsId, namespacesId, servicesIdendpointIdCreates an endpoint, and returns the new endpoint.
patchupdateprojectsId, locationsId, namespacesId, servicesId, endpointsIdupdateMaskUpdates an endpoint.
deletedeleteprojectsId, locationsId, namespacesId, servicesId, endpointsIdDeletes an endpoint.

Parameters

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
endpointsIdstring
locationsIdstring
namespacesIdstring
projectsIdstring
servicesIdstring
endpointIdstring
filterstring
orderBystring
pageSizeinteger (int32)
pageTokenstring
updateMaskstring (google-fieldmask)

SELECT examples

Gets an endpoint.

SELECT
name,
address,
annotations,
network,
port,
uid
FROM google.servicedirectory.endpoints
WHERE projectsId = '{{ projectsId }}' -- required
AND locationsId = '{{ locationsId }}' -- required
AND namespacesId = '{{ namespacesId }}' -- required
AND servicesId = '{{ servicesId }}' -- required
AND endpointsId = '{{ endpointsId }}' -- required;

INSERT examples

Creates an endpoint, and returns the new endpoint.

INSERT INTO google.servicedirectory.endpoints (
data__name,
data__address,
data__port,
data__annotations,
data__network,
projectsId,
locationsId,
namespacesId,
servicesId,
endpointId
)
SELECT
'{{ name }}',
'{{ address }}',
{{ port }},
'{{ annotations }}',
'{{ network }}',
'{{ projectsId }}',
'{{ locationsId }}',
'{{ namespacesId }}',
'{{ servicesId }}',
'{{ endpointId }}'
RETURNING
name,
address,
annotations,
network,
port,
uid
;

UPDATE examples

Updates an endpoint.

UPDATE google.servicedirectory.endpoints
SET
data__name = '{{ name }}',
data__address = '{{ address }}',
data__port = {{ port }},
data__annotations = '{{ annotations }}',
data__network = '{{ network }}'
WHERE
projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND namespacesId = '{{ namespacesId }}' --required
AND servicesId = '{{ servicesId }}' --required
AND endpointsId = '{{ endpointsId }}' --required
AND updateMask = '{{ updateMask}}'
RETURNING
name,
address,
annotations,
network,
port,
uid;

DELETE examples

Deletes an endpoint.

DELETE FROM google.servicedirectory.endpoints
WHERE projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND namespacesId = '{{ namespacesId }}' --required
AND servicesId = '{{ servicesId }}' --required
AND endpointsId = '{{ endpointsId }}' --required;