tag.v2

Top

arista/tag.v2/tag.proto

Tag

Tag holds a merge-preview or the existing merged state (if the workspace ID is “”) of a tag.

Field NameTypeDescription
keyTagKey

key identifies a tag.

creator_typeCreatorType

creator_type is the creator type of the tag.

TagAssignment

TagAssignment holds a merge-preview or the existing merged state (if the workspace ID is “”) of an assignment between a tag and a network element.

Field NameTypeDescription
keyTagAssignmentKey

key identifies an assignment.

tag_creator_typeCreatorType

tag_creator_type is the creator type of the tag

involved in the assignment.

TagAssignmentConfig

TagAssignmentConfig holds a configuration for an assignment between a tag and a network element. The tag assignments that belong to entities other than ELEMENT_SUB_TYPE_DEVICE will always be present in mainline only.

Field NameTypeDescription
keyTagAssignmentKey

key identifies an assignment. The special workspace ID “"

for merged assignments should not be set here.

removegoogle.protobuf.BoolValue

remove indicates whether to remove (true) or add (false,

unset) the assignment identified by the key if the

encompassing workspace merges.

TagAssignmentKey

TagAssignmentKey uniquely identifies an assignment between a tag and a network element.

Field NameTypeDescription
workspace_idgoogle.protobuf.StringValue

workspace_id is the ID of a workspace. The special ID “"

identifies the location where merged assignments reside.

element_typeElementType

element_type is the element type of a tag. What should

be set per element type:

ELEMENT_TYPE_DEVICE: device_id

ELEMENT_TYPE_INTERFACE: device_id, interface_id

labelgoogle.protobuf.StringValue

label is the label of a tag.

valuegoogle.protobuf.StringValue

value is the value of a tag.

device_idgoogle.protobuf.StringValue

device_id identifies a device.

interface_idgoogle.protobuf.StringValue

interface_id identifies an interface on a device.

element_sub_typeElementSubType

element_sub_type is the element sub-type of a tag.

TagConfig

TagConfig holds a configuration for a user tag. The tags that belong to entities other than ELEMENT_SUB_TYPE_DEVICE will always be present in mainline only.

Field NameTypeDescription
keyTagKey

key identifies a tag. The special workspace ID "” for

merged tags should not be set here.

removegoogle.protobuf.BoolValue

remove indicates whether to remove (true) or add (false,

unset) the tag identified by the key if the encompassing

workspace merges.

TagKey

TagKey uniquely identifies a tag.

Field NameTypeDescription
workspace_idgoogle.protobuf.StringValue

workspace_id is the ID of a workspace. The special ID “"

identifies the location where merged tags reside.

element_typeElementType

element_type is the category of network element to which

this tag can be assigned.

labelgoogle.protobuf.StringValue

label is an arbitrary label.

valuegoogle.protobuf.StringValue

value is an arbitrary value.

element_sub_typeElementSubType

element_sub_type is the sub-category of network element

to which this tag can be assigned.

CreatorType

CreatorType enumerates the types of entities that can create a tag.

NameNumberDescription
CREATOR_TYPE_UNSPECIFIED0

CREATOR_TYPE_UNSPECIFIED is the default value.

CREATOR_TYPE_SYSTEM1

CREATOR_TYPE_SYSTEM is used for system tags.

CREATOR_TYPE_USER2

CREATOR_TYPE_USER is used for user tags.

CREATOR_TYPE_EXTERNAL3

CREATOR_TYPE_EXTERNAL is used for tags created from external sources.

For E.g., vCenter

ElementSubType

ElementSubType enumerates the sub-types of network elements that can be associated with tags.

NameNumberDescription
ELEMENT_SUB_TYPE_UNSPECIFIED0

ELEMENT_SUB_TYPE_UNSPECIFIED is the default value.

ELEMENT_SUB_TYPE_DEVICE1

ELEMENT_SUB_TYPE_DEVICE is used for EOS or

third-party devices discovered via LLDP/SNMP.

ELEMENT_SUB_TYPE_VDS2

ELEMENT_SUB_TYPE_VDS is used for VMWare vSphere Distributed Switch (VDS) tags.

ELEMENT_SUB_TYPE_WORKLOAD_SERVER3

ELEMENT_SUB_TYPE_WORKLOAD_SERVER is used for workload server

tags (such as VMWare ESXi host).

A workload server is a server/data storage device on which

the hypervisor is installed.

ELEMENT_SUB_TYPE_VM4

ELEMENT_SUB_TYPE_VM is used for VM tags.

A VM is a software computer that, like a physical computer,

runs an operating system and applications.

ElementType

ElementType enumerates the types of network elements that can be associated with tags.

NameNumberDescription
ELEMENT_TYPE_UNSPECIFIED0

ELEMENT_TYPE_UNSPECIFIED is the default value.

ELEMENT_TYPE_DEVICE1

ELEMENT_TYPE_DEVICE is used for device tags.

ELEMENT_TYPE_INTERFACE2

ELEMENT_TYPE_INTERFACE is used for interface tags.

Top

arista/tag.v2/services.gen.proto

MetaResponse

Field NameTypeDescription
timegoogle.protobuf.Timestamp

Time holds the timestamp of the last item included in the metadata calculation.

typearista.subscriptions.Operation

Operation indicates how the value in this response should be considered.

Under non-subscribe requests, this value should always be INITIAL. In a subscription,

once all initial data is streamed and the client begins to receive modification updates,

you should not see INITIAL again.

countgoogle.protobuf.UInt32Value

Count is the number of items present under the conditions of the request.

TagAssignmentConfigDeleteAllRequest

TagAssignmentConfigDeleteAllResponse

Field NameTypeDescription
typefmp.DeleteError

This describes the class of delete error.

errorgoogle.protobuf.StringValue

This indicates the error message from the delete failure.

keyTagAssignmentKey

This is the key of the TagAssignmentConfig instance that failed to be deleted.

timegoogle.protobuf.Timestamp

Time indicates the (UTC) timestamp when the key was being deleted.

TagAssignmentConfigDeleteRequest

Field NameTypeDescription
keyTagAssignmentKey

Key indicates which TagAssignmentConfig instance to remove.

This field must always be set.

TagAssignmentConfigDeleteResponse

Field NameTypeDescription
keyTagAssignmentKey

Key echoes back the key of the deleted TagAssignmentConfig instance.

timegoogle.protobuf.Timestamp

Time indicates the (UTC) timestamp at which the system recognizes the

deletion. The only guarantees made about this timestamp are:

- it is after the time the request was received

- a time-ranged query with StartTime==DeletedAt will not include this instance.

TagAssignmentConfigDeleteSomeRequest

Field NameTypeDescription
keysTagAssignmentKey[…]

key contains a list of TagAssignmentConfig keys to delete

TagAssignmentConfigDeleteSomeResponse

TagAssignmentConfigDeleteSomeResponse is only sent when there is an error.

Field NameTypeDescription
keyTagAssignmentKey

errorstring

TagAssignmentConfigRequest

Field NameTypeDescription
keyTagAssignmentKey

Key uniquely identifies a TagAssignmentConfig instance to retrieve.

This value must be populated.

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

TagAssignmentConfigResponse

Field NameTypeDescription
valueTagAssignmentConfig

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

TagAssignmentConfig instance in this response.

TagAssignmentConfigSetRequest

Field NameTypeDescription
valueTagAssignmentConfig

TagAssignmentConfig carries the value to set into the datastore.

See the documentation on the TagAssignmentConfig struct for which fields are required.

TagAssignmentConfigSetResponse

Field NameTypeDescription
valueTagAssignmentConfig

Value carries all the values given in the TagAssignmentConfigSetRequest as well

as any server-generated values.

timegoogle.protobuf.Timestamp

Time indicates the (UTC) timestamp at which the system recognizes the

creation. The only guarantees made about this timestamp are:

- it is after the time the request was received

- a time-ranged query with StartTime==CreatedAt will include this instance.

TagAssignmentConfigSetSomeRequest

Field NameTypeDescription
valuesTagAssignmentConfig[…]

value contains a list of TagAssignmentConfig values to write.

It is possible to provide more values than can fit within either:

- the maxiumum send size of the client

- the maximum receive size of the server

If this error occurs you must reduce the number of values sent.

See gRPC “maximum message size” documentation for more information.

TagAssignmentConfigSetSomeResponse

Field NameTypeDescription
keyTagAssignmentKey

errorstring

TagAssignmentConfigSomeRequest

Field NameTypeDescription
keysTagAssignmentKey[…]

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

TagAssignmentConfigSomeResponse

Field NameTypeDescription
valueTagAssignmentConfig

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

errorgoogle.protobuf.StringValue

Error is an optional field.

It should be filled when there is an error in the GetSome process.

timegoogle.protobuf.Timestamp

TagAssignmentConfigStreamRequest

Field NameTypeDescription
partial_eq_filterTagAssignmentConfig[…]

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe.

This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal

subscriptions if filter(s) are sufficiently specific.

timearista.time.TimeBounds

TimeRange allows limiting response data to within a specified time window.

If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

* end: Returns the state of each TagAssignmentConfig at end.

* Each TagAssignmentConfig response is fully-specified (all fields set).

* start: Returns the state of each TagAssignmentConfig at start, followed by updates until now.

* Each TagAssignmentConfig response at start is fully-specified, but updates may be partial.

* start and end: Returns the state of each TagAssignmentConfig at start, followed by updates

until end.

* Each TagAssignmentConfig response at start is fully-specified, but updates until end may

be partial.

This field is not allowed in the Subscribe RPC.

TagAssignmentConfigStreamResponse

Field NameTypeDescription
valueTagAssignmentConfig

Value is a value deemed relevant to the initiating request.

This structure will always have its key-field populated. Which other fields are

populated, and why, depends on the value of Operation and what triggered this notification.

timegoogle.protobuf.Timestamp

Time holds the timestamp of this TagAssignmentConfig’s last modification.

typearista.subscriptions.Operation

Operation indicates how the TagAssignmentConfig value in this response should be considered.

Under non-subscribe requests, this value should always be INITIAL. In a subscription,

once all initial data is streamed and the client begins to receive modification updates,

you should not see INITIAL again.

TagAssignmentRequest

Field NameTypeDescription
keyTagAssignmentKey

Key uniquely identifies a TagAssignment instance to retrieve.

This value must be populated.

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

TagAssignmentResponse

Field NameTypeDescription
valueTagAssignment

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

TagAssignment instance in this response.

TagAssignmentSomeRequest

Field NameTypeDescription
keysTagAssignmentKey[…]

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

TagAssignmentSomeResponse

Field NameTypeDescription
valueTagAssignment

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

errorgoogle.protobuf.StringValue

Error is an optional field.

It should be filled when there is an error in the GetSome process.

timegoogle.protobuf.Timestamp

TagAssignmentStreamRequest

Field NameTypeDescription
partial_eq_filterTagAssignment[…]

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe.

This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal

subscriptions if filter(s) are sufficiently specific.

timearista.time.TimeBounds

TimeRange allows limiting response data to within a specified time window.

If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

* end: Returns the state of each TagAssignment at end.

* Each TagAssignment response is fully-specified (all fields set).

* start: Returns the state of each TagAssignment at start, followed by updates until now.

* Each TagAssignment response at start is fully-specified, but updates may be partial.

* start and end: Returns the state of each TagAssignment at start, followed by updates

until end.

* Each TagAssignment response at start is fully-specified, but updates until end may

be partial.

This field is not allowed in the Subscribe RPC.

TagAssignmentStreamResponse

Field NameTypeDescription
valueTagAssignment

Value is a value deemed relevant to the initiating request.

This structure will always have its key-field populated. Which other fields are

populated, and why, depends on the value of Operation and what triggered this notification.

timegoogle.protobuf.Timestamp

Time holds the timestamp of this TagAssignment’s last modification.

typearista.subscriptions.Operation

Operation indicates how the TagAssignment value in this response should be considered.

Under non-subscribe requests, this value should always be INITIAL. In a subscription,

once all initial data is streamed and the client begins to receive modification updates,

you should not see INITIAL again.

TagConfigDeleteAllRequest

TagConfigDeleteAllResponse

Field NameTypeDescription
typefmp.DeleteError

This describes the class of delete error.

errorgoogle.protobuf.StringValue

This indicates the error message from the delete failure.

keyTagKey

This is the key of the TagConfig instance that failed to be deleted.

timegoogle.protobuf.Timestamp

Time indicates the (UTC) timestamp when the key was being deleted.

TagConfigDeleteRequest

Field NameTypeDescription
keyTagKey

Key indicates which TagConfig instance to remove.

This field must always be set.

TagConfigDeleteResponse

Field NameTypeDescription
keyTagKey

Key echoes back the key of the deleted TagConfig instance.

timegoogle.protobuf.Timestamp

Time indicates the (UTC) timestamp at which the system recognizes the

deletion. The only guarantees made about this timestamp are:

- it is after the time the request was received

- a time-ranged query with StartTime==DeletedAt will not include this instance.

TagConfigDeleteSomeRequest

Field NameTypeDescription
keysTagKey[…]

key contains a list of TagConfig keys to delete

TagConfigDeleteSomeResponse

TagConfigDeleteSomeResponse is only sent when there is an error.

Field NameTypeDescription
keyTagKey

errorstring

TagConfigRequest

Field NameTypeDescription
keyTagKey

Key uniquely identifies a TagConfig instance to retrieve.

This value must be populated.

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

TagConfigResponse

Field NameTypeDescription
valueTagConfig

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

TagConfig instance in this response.

TagConfigSetRequest

Field NameTypeDescription
valueTagConfig

TagConfig carries the value to set into the datastore.

See the documentation on the TagConfig struct for which fields are required.

TagConfigSetResponse

Field NameTypeDescription
valueTagConfig

Value carries all the values given in the TagConfigSetRequest as well

as any server-generated values.

timegoogle.protobuf.Timestamp

Time indicates the (UTC) timestamp at which the system recognizes the

creation. The only guarantees made about this timestamp are:

- it is after the time the request was received

- a time-ranged query with StartTime==CreatedAt will include this instance.

TagConfigSetSomeRequest

Field NameTypeDescription
valuesTagConfig[…]

value contains a list of TagConfig values to write.

It is possible to provide more values than can fit within either:

- the maxiumum send size of the client

- the maximum receive size of the server

If this error occurs you must reduce the number of values sent.

See gRPC “maximum message size” documentation for more information.

TagConfigSetSomeResponse

Field NameTypeDescription
keyTagKey

errorstring

TagConfigSomeRequest

Field NameTypeDescription
keysTagKey[…]

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

TagConfigSomeResponse

Field NameTypeDescription
valueTagConfig

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

errorgoogle.protobuf.StringValue

Error is an optional field.

It should be filled when there is an error in the GetSome process.

timegoogle.protobuf.Timestamp

TagConfigStreamRequest

Field NameTypeDescription
partial_eq_filterTagConfig[…]

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe.

This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal

subscriptions if filter(s) are sufficiently specific.

timearista.time.TimeBounds

TimeRange allows limiting response data to within a specified time window.

If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

* end: Returns the state of each TagConfig at end.

* Each TagConfig response is fully-specified (all fields set).

* start: Returns the state of each TagConfig at start, followed by updates until now.

* Each TagConfig response at start is fully-specified, but updates may be partial.

* start and end: Returns the state of each TagConfig at start, followed by updates

until end.

* Each TagConfig response at start is fully-specified, but updates until end may

be partial.

This field is not allowed in the Subscribe RPC.

TagConfigStreamResponse

Field NameTypeDescription
valueTagConfig

Value is a value deemed relevant to the initiating request.

This structure will always have its key-field populated. Which other fields are

populated, and why, depends on the value of Operation and what triggered this notification.

timegoogle.protobuf.Timestamp

Time holds the timestamp of this TagConfig’s last modification.

typearista.subscriptions.Operation

Operation indicates how the TagConfig value in this response should be considered.

Under non-subscribe requests, this value should always be INITIAL. In a subscription,

once all initial data is streamed and the client begins to receive modification updates,

you should not see INITIAL again.

TagRequest

Field NameTypeDescription
keyTagKey

Key uniquely identifies a Tag instance to retrieve.

This value must be populated.

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

TagResponse

Field NameTypeDescription
valueTag

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

timegoogle.protobuf.Timestamp

Time carries the (UTC) timestamp of the last-modification of the

Tag instance in this response.

TagSomeRequest

Field NameTypeDescription
keysTagKey[…]

timegoogle.protobuf.Timestamp

Time indicates the time for which you are interested in the data.

If no time is given, the server will use the time at which it makes the request.

TagSomeResponse

Field NameTypeDescription
valueTag

Value is the value requested.

This structure will be fully-populated as it exists in the datastore. If

optional fields were not given at creation, these fields will be empty or

set to default values.

errorgoogle.protobuf.StringValue

Error is an optional field.

It should be filled when there is an error in the GetSome process.

timegoogle.protobuf.Timestamp

TagStreamRequest

Field NameTypeDescription
partial_eq_filterTag[…]

PartialEqFilter provides a way to server-side filter a GetAll/Subscribe.

This requires all provided fields to be equal to the response.

While transparent to users, this field also allows services to optimize internal

subscriptions if filter(s) are sufficiently specific.

timearista.time.TimeBounds

TimeRange allows limiting response data to within a specified time window.

If this field is populated, at least one of the two time fields are required.

For GetAll, the fields start and end can be used as follows:

* end: Returns the state of each Tag at end.

* Each Tag response is fully-specified (all fields set).

* start: Returns the state of each Tag at start, followed by updates until now.

* Each Tag response at start is fully-specified, but updates may be partial.

* start and end: Returns the state of each Tag at start, followed by updates

until end.

* Each Tag response at start is fully-specified, but updates until end may

be partial.

This field is not allowed in the Subscribe RPC.

TagStreamResponse

Field NameTypeDescription
valueTag

Value is a value deemed relevant to the initiating request.

This structure will always have its key-field populated. Which other fields are

populated, and why, depends on the value of Operation and what triggered this notification.

timegoogle.protobuf.Timestamp

Time holds the timestamp of this Tag’s last modification.

typearista.subscriptions.Operation

Operation indicates how the Tag value in this response should be considered.

Under non-subscribe requests, this value should always be INITIAL. In a subscription,

once all initial data is streamed and the client begins to receive modification updates,

you should not see INITIAL again.

TagAssignmentConfigService

Method NameRequest TypeResponse TypeDescription
GetOneTagAssignmentConfigRequestTagAssignmentConfigResponse

GetSomeTagAssignmentConfigSomeRequestTagAssignmentConfigSomeResponse stream

GetAllTagAssignmentConfigStreamRequestTagAssignmentConfigStreamResponse stream

SubscribeTagAssignmentConfigStreamRequestTagAssignmentConfigStreamResponse stream

GetMetaTagAssignmentConfigStreamRequestMetaResponse

SubscribeMetaTagAssignmentConfigStreamRequestMetaResponse stream

SetTagAssignmentConfigSetRequestTagAssignmentConfigSetResponse

SetSomeTagAssignmentConfigSetSomeRequestTagAssignmentConfigSetSomeResponse stream

DeleteTagAssignmentConfigDeleteRequestTagAssignmentConfigDeleteResponse

DeleteSomeTagAssignmentConfigDeleteSomeRequestTagAssignmentConfigDeleteSomeResponse stream

DeleteAllTagAssignmentConfigDeleteAllRequestTagAssignmentConfigDeleteAllResponse stream

TagAssignmentService

Method NameRequest TypeResponse TypeDescription
GetOneTagAssignmentRequestTagAssignmentResponse

GetSomeTagAssignmentSomeRequestTagAssignmentSomeResponse stream

GetAllTagAssignmentStreamRequestTagAssignmentStreamResponse stream

SubscribeTagAssignmentStreamRequestTagAssignmentStreamResponse stream

GetMetaTagAssignmentStreamRequestMetaResponse

SubscribeMetaTagAssignmentStreamRequestMetaResponse stream

TagConfigService

Method NameRequest TypeResponse TypeDescription
GetOneTagConfigRequestTagConfigResponse

GetSomeTagConfigSomeRequestTagConfigSomeResponse stream

GetAllTagConfigStreamRequestTagConfigStreamResponse stream

SubscribeTagConfigStreamRequestTagConfigStreamResponse stream

GetMetaTagConfigStreamRequestMetaResponse

SubscribeMetaTagConfigStreamRequestMetaResponse stream

SetTagConfigSetRequestTagConfigSetResponse

SetSomeTagConfigSetSomeRequestTagConfigSetSomeResponse stream

DeleteTagConfigDeleteRequestTagConfigDeleteResponse

DeleteSomeTagConfigDeleteSomeRequestTagConfigDeleteSomeResponse stream

DeleteAllTagConfigDeleteAllRequestTagConfigDeleteAllResponse stream

TagService

Method NameRequest TypeResponse TypeDescription
GetOneTagRequestTagResponse

GetSomeTagSomeRequestTagSomeResponse stream

GetAllTagStreamRequestTagStreamResponse stream

SubscribeTagStreamRequestTagStreamResponse stream

GetMetaTagStreamRequestMetaResponse

SubscribeMetaTagStreamRequestMetaResponse stream