Skip to main content

endpoints

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

Overview

Nameendpoints
TypeResource
Idgoogle.servicedirectory.endpoints

Fields

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.
portintegerOptional. Service Directory rejects values outside of [0, 65535].
uidstringOutput only. The globally unique identifier of the endpoint in the UUID4 format.

Methods

NameAccessible byRequired ParamsDescription
getSELECTendpointsId, locationsId, namespacesId, projectsId, servicesIdGets an endpoint.
listSELECTlocationsId, namespacesId, projectsId, servicesIdLists all endpoints.
createINSERTlocationsId, namespacesId, projectsId, servicesIdCreates an endpoint, and returns the new endpoint.
deleteDELETEendpointsId, locationsId, namespacesId, projectsId, servicesIdDeletes an endpoint.
patchUPDATEendpointsId, locationsId, namespacesId, projectsId, servicesIdUpdates an endpoint.

SELECT examples

Lists all endpoints.

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

INSERT example

Use the following StackQL query and manifest file to create a new endpoints resource.

/*+ create */
INSERT INTO google.servicedirectory.endpoints (
locationsId,
namespacesId,
projectsId,
servicesId,
name,
address,
port,
annotations,
network
)
SELECT
'{{ locationsId }}',
'{{ namespacesId }}',
'{{ projectsId }}',
'{{ servicesId }}',
'{{ name }}',
'{{ address }}',
'{{ port }}',
'{{ annotations }}',
'{{ network }}'
;

UPDATE example

Updates a endpoints resource.

/*+ update */
UPDATE google.servicedirectory.endpoints
SET
name = '{{ name }}',
address = '{{ address }}',
port = '{{ port }}',
annotations = '{{ annotations }}',
network = '{{ network }}'
WHERE
endpointsId = '{{ endpointsId }}'
AND locationsId = '{{ locationsId }}'
AND namespacesId = '{{ namespacesId }}'
AND projectsId = '{{ projectsId }}'
AND servicesId = '{{ servicesId }}';

DELETE example

Deletes the specified endpoints resource.

/*+ delete */
DELETE FROM google.servicedirectory.endpoints
WHERE endpointsId = '{{ endpointsId }}'
AND locationsId = '{{ locationsId }}'
AND namespacesId = '{{ namespacesId }}'
AND projectsId = '{{ projectsId }}'
AND servicesId = '{{ servicesId }}';