cloudvision.api.arista.tag.v2 package

Module contents

class cloudvision.api.arista.tag.v2.CreatorType(value: int)[source]

Bases: Enum

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

EXTERNAL = CreatorType.EXTERNAL

CREATOR_TYPE_EXTERNAL is used for tags created from external sources. For E.g., vCenter

SYSTEM = CreatorType.SYSTEM

CREATOR_TYPE_SYSTEM is used for system tags.

UNSPECIFIED = CreatorType.UNSPECIFIED

CREATOR_TYPE_UNSPECIFIED is the default value.

USER = CreatorType.USER

CREATOR_TYPE_USER is used for user tags.

name: str | None
value: int
class cloudvision.api.arista.tag.v2.Element(key: ~cloudvision.api.arista.tag.v2.ElementKey = <PLACEHOLDER>)[source]

Bases: Message

Element holds basic information about a tagged or untagged network element.

key: ElementKey = <PLACEHOLDER>

key uniquely identifies the element.

class cloudvision.api.arista.tag.v2.ElementBatchedStreamRequest(partial_eq_filter: List[ForwardRef('Element')] = <PLACEHOLDER>, filter: 'ElementFilter' = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>, max_messages: int | None = <PLACEHOLDER>)[source]

Bases: Message

filter: ElementFilter = <PLACEHOLDER>

For each Element in the list, all populated fields are considered ANDed together as a filtering operation. Similarly, the list itself is ORed such that any individual filter that matches a given Element is streamed to the user.

max_messages: int | None = <PLACEHOLDER>

MaxMessages limits the maximum number of messages that can be contained in one batch. MaxMessages is required to be at least 1. The maximum number of messages in a batch is min(max_messages, INTERNAL_BATCH_LIMIT) INTERNAL_BATCH_LIMIT is set based on the maximum message size.

partial_eq_filter: List[Element] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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 Element at end. * Each Element response is fully-specified (all fields set).

  • start: Returns the state of each Element at start, followed by updates until now. * Each Element response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each Element at start, followed by updates until end. * Each Element response at start is fully-specified, but updates until end may

    be partial.

This field is not allowed in the Subscribe RPC.

class cloudvision.api.arista.tag.v2.ElementBatchedStreamResponse(responses: List[ForwardRef('ElementStreamResponse')] = <PLACEHOLDER>)[source]

Bases: Message

responses: List[ElementStreamResponse] = <PLACEHOLDER>

Values are the values deemed relevant to the initiating request. The length of this structure is guaranteed to be between (inclusive) 1 and min(req.max_messages, INTERNAL_BATCH_LIMIT).

class cloudvision.api.arista.tag.v2.ElementFilter(search: ~cloudvision.api.arista.tag.v2.ElementSearchFilter = <PLACEHOLDER>)[source]

Bases: Message

ElementFilter is a custom filter for elements.

search: ElementSearchFilter = <PLACEHOLDER>

search can be used to search for elements via a tag query.

class cloudvision.api.arista.tag.v2.ElementKey(type: ~cloudvision.api.arista.tag.v2.ElementType = <PLACEHOLDER>, sub_type: ~cloudvision.api.arista.tag.v2.ElementSubType = <PLACEHOLDER>, primary_id: str | None = <PLACEHOLDER>, secondary_id: str | None = <PLACEHOLDER>)[source]

Bases: Message

ElementKey uniquely identifies a tagged or untagged network element.

primary_id: str | None = <PLACEHOLDER>

primary_id is the device ID of the element. The value of this ID is based on type and sub_type:

type: DEVICE
sub_type: DEVICE

id: <serial_number>

sub_type: VDS, WORKLOAD_SERVER, VM

id: <uuid>

type: INTERFACE
sub_type: DEVICE

id: <serial_number>

sub_type: VDS, WORKLOAD_SERVER, VM

id: <uuid>

type: VIRTUAL
sub_type: APPLICATION

id: <application_id>

secondary_id: str | None = <PLACEHOLDER>

secondary_id is the interface ID of the element. The value of this ID is based on type and sub_type:

type: DEVICE

N/A

type: INTERFACE
sub_type: DEVICE

id: <interface_name>

sub_type: VDS, WORKLOAD_SERVER, VM

id: <interface_name>

type: VIRTUAL
sub_type: APPLICATION

id: <service_id>

sub_type: ElementSubType = <PLACEHOLDER>

sub_type is the sub-type of the element.

type: ElementType = <PLACEHOLDER>

type is the type of the element.

class cloudvision.api.arista.tag.v2.ElementRequest(key: 'ElementKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: ElementKey = <PLACEHOLDER>

Key uniquely identifies a Element instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.ElementResponse(value: 'Element' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the Element instance in this response.

value: Element = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.ElementSearchFilter(query_element_type: ~cloudvision.api.arista.tag.v2.ElementType = <PLACEHOLDER>, query: str | None = <PLACEHOLDER>, workspace_id: str | None = <PLACEHOLDER>, exclude_unregistered_elements: bool | None = <PLACEHOLDER>, ignore_topology_tags: bool | None = <PLACEHOLDER>)[source]

Bases: Message

ElementSearchFilter is a filter that can be used to search for a set of elements using a tag query.

exclude_unregistered_elements: bool | None = <PLACEHOLDER>

exclude_unregistered_elements indicates whether elements that are not registered in the Inventory and Topology (I&T) Studio should be excluded from the results.

ignore_topology_tags: bool | None = <PLACEHOLDER>

ignore_topology_tags indicates whether topology_hint tags should be ignored during the execution of the query.

query: str | None = <PLACEHOLDER>

query (required) is a tag query. This is a string that specifies a set of tag assignment conditions. For example:

  • “Campus:SF”

    Match any device that has the “Campus:SF” tag assigned to it. I.e., match any device in the SF campus.

  • “Campus:*

    Match any device that has any “Campus:” tag assigned to it. I.e., match any device in any campus.

  • “Campus:SF AND Role:Spine”

    Match any device that has the “Campus:SF” and “Role:Spine” tag assigned to it. I.e., match any spine device in the SF campus.

TODO: Link to grammar file.

query_element_type: ElementType = <PLACEHOLDER>

query_element_type (required) indicates the type of element against which the query will be executed. To search by sub-type, use the special “type:” tag from within the query.

workspace_id: str | None = <PLACEHOLDER>

workspace_id is the ID of a workspace. If set, it indicates that the search space should be constrained only to the elements that are known or configured in the given workspace.

class cloudvision.api.arista.tag.v2.ElementServiceBase[source]

Bases: ServiceBase

async get_all(element_stream_request: ElementStreamRequest) AsyncIterator[ElementStreamResponse][source]
async get_all_batched(element_batched_stream_request: ElementBatchedStreamRequest) AsyncIterator[ElementBatchedStreamResponse][source]
async get_meta(element_stream_request: ElementStreamRequest) MetaResponse[source]
async get_one(element_request: ElementRequest) ElementResponse[source]
async get_some(element_some_request: ElementSomeRequest) AsyncIterator[ElementSomeResponse][source]
async subscribe(element_stream_request: ElementStreamRequest) AsyncIterator[ElementStreamResponse][source]
async subscribe_batched(element_batched_stream_request: ElementBatchedStreamRequest) AsyncIterator[ElementBatchedStreamResponse][source]
async subscribe_meta(element_stream_request: ElementStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.ElementServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async get_all(element_stream_request: ElementStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ElementStreamResponse][source]
async get_all_batched(element_batched_stream_request: ElementBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ElementBatchedStreamResponse][source]
async get_meta(element_stream_request: ElementStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(element_request: ElementRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) ElementResponse[source]
async get_some(element_some_request: ElementSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ElementSomeResponse][source]
async subscribe(element_stream_request: ElementStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ElementStreamResponse][source]
async subscribe_batched(element_batched_stream_request: ElementBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[ElementBatchedStreamResponse][source]
async subscribe_meta(element_stream_request: ElementStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.ElementSomeRequest(keys: List[ForwardRef('ElementKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[ElementKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.ElementSomeResponse(value: 'Element' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

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

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the Element instance in this response.

value: Element = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.ElementStreamRequest(partial_eq_filter: List[ForwardRef('Element')] = <PLACEHOLDER>, filter: 'ElementFilter' = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

filter: ElementFilter = <PLACEHOLDER>

For each Element in the list, all populated fields are considered ANDed together as a filtering operation. Similarly, the list itself is ORed such that any individual filter that matches a given Element is streamed to the user.

partial_eq_filter: List[Element] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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 Element at end. * Each Element response is fully-specified (all fields set).

  • start: Returns the state of each Element at start, followed by updates until now. * Each Element response at start is fully-specified, but updates may be partial.

  • start and end: Returns the state of each Element at start, followed by updates until end. * Each Element response at start is fully-specified, but updates until end may

    be partial.

This field is not allowed in the Subscribe RPC.

class cloudvision.api.arista.tag.v2.ElementStreamResponse(value: 'Element' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

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

type: __subscriptions__.Operation = <PLACEHOLDER>

Operation indicates how the Element 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.

value: Element = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.ElementSubType(value: int)[source]

Bases: Enum

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

APPLICATION = ElementSubType.APPLICATION

ELEMENT_SUB_TYPE_APPLICATION is used for application tags. An application is defined as a set of services where each service provides a subset of the application’s functionality. An application can exist without a service but not vice-versa.

DEVICE = ElementSubType.DEVICE

ELEMENT_SUB_TYPE_DEVICE is used for EOS or third-party devices discovered via LLDP/SNMP.

UNSPECIFIED = ElementSubType.UNSPECIFIED

ELEMENT_SUB_TYPE_UNSPECIFIED is the default value.

VDS = ElementSubType.VDS

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

VM = ElementSubType.VM

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.

WORKLOAD_SERVER = ElementSubType.WORKLOAD_SERVER

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.

name: str | None
value: int
class cloudvision.api.arista.tag.v2.ElementType(value: int)[source]

Bases: Enum

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

DEVICE = ElementType.DEVICE

ELEMENT_TYPE_DEVICE is used for device tags.

INTERFACE = ElementType.INTERFACE

ELEMENT_TYPE_INTERFACE is used for interface tags.

UNSPECIFIED = ElementType.UNSPECIFIED

ELEMENT_TYPE_UNSPECIFIED is the default value.

VIRTUAL = ElementType.VIRTUAL

ELEMENT_TYPE_VIRTUAL is used for virtual entities(applications/services) tags.

name: str | None
value: int
class cloudvision.api.arista.tag.v2.MetaResponse(time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>, count: int | None = <PLACEHOLDER>)[source]

Bases: Message

count: int | None = <PLACEHOLDER>

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

time: datetime = <PLACEHOLDER>

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

type: __subscriptions__.Operation = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.Tag(key: ~cloudvision.api.arista.tag.v2.TagKey = <PLACEHOLDER>, creator_type: ~cloudvision.api.arista.tag.v2.CreatorType = <PLACEHOLDER>, assigned: bool | None = <PLACEHOLDER>)[source]

Bases: Message

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

assigned: bool | None = <PLACEHOLDER>

assigned indicates whether the tag is assigned (true) or not (false).

creator_type: CreatorType = <PLACEHOLDER>

creator_type is the creator type of the tag.

key: TagKey = <PLACEHOLDER>

key identifies a tag.

class cloudvision.api.arista.tag.v2.TagAssignment(key: ~cloudvision.api.arista.tag.v2.TagAssignmentKey = <PLACEHOLDER>, tag_creator_type: ~cloudvision.api.arista.tag.v2.CreatorType = <PLACEHOLDER>)[source]

Bases: Message

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.

key: TagAssignmentKey = <PLACEHOLDER>

key identifies an assignment.

tag_creator_type: CreatorType = <PLACEHOLDER>

tag_creator_type is the creator type of the tag involved in the assignment.

class cloudvision.api.arista.tag.v2.TagAssignmentBatchedStreamRequest(partial_eq_filter: List[ForwardRef('TagAssignment')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>, max_messages: int | None = <PLACEHOLDER>)[source]

Bases: Message

max_messages: int | None = <PLACEHOLDER>

MaxMessages limits the maximum number of messages that can be contained in one batch. MaxMessages is required to be at least 1. The maximum number of messages in a batch is min(max_messages, INTERNAL_BATCH_LIMIT) INTERNAL_BATCH_LIMIT is set based on the maximum message size.

partial_eq_filter: List[TagAssignment] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentBatchedStreamResponse(responses: List[ForwardRef('TagAssignmentStreamResponse')] = <PLACEHOLDER>)[source]

Bases: Message

responses: List[TagAssignmentStreamResponse] = <PLACEHOLDER>

Values are the values deemed relevant to the initiating request. The length of this structure is guaranteed to be between (inclusive) 1 and min(req.max_messages, INTERNAL_BATCH_LIMIT).

class cloudvision.api.arista.tag.v2.TagAssignmentConfig(key: ~cloudvision.api.arista.tag.v2.TagAssignmentKey = <PLACEHOLDER>, remove: bool | None = <PLACEHOLDER>)[source]

Bases: Message

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.

key: TagAssignmentKey = <PLACEHOLDER>

key identifies an assignment. The special workspace ID “” for merged assignments should not be set here.

remove: bool | None = <PLACEHOLDER>

remove indicates whether to remove (true) or add (false, unset) the assignment identified by the key if the encompassing workspace merges.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigBatchedStreamRequest(partial_eq_filter: List[ForwardRef('TagAssignmentConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>, max_messages: int | None = <PLACEHOLDER>)[source]

Bases: Message

max_messages: int | None = <PLACEHOLDER>

MaxMessages limits the maximum number of messages that can be contained in one batch. MaxMessages is required to be at least 1. The maximum number of messages in a batch is min(max_messages, INTERNAL_BATCH_LIMIT) INTERNAL_BATCH_LIMIT is set based on the maximum message size.

partial_eq_filter: List[TagAssignmentConfig] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigBatchedStreamResponse(responses: List[ForwardRef('TagAssignmentConfigStreamResponse')] = <PLACEHOLDER>)[source]

Bases: Message

responses: List[TagAssignmentConfigStreamResponse] = <PLACEHOLDER>

Values are the values deemed relevant to the initiating request. The length of this structure is guaranteed to be between (inclusive) 1 and min(req.max_messages, INTERNAL_BATCH_LIMIT).

class cloudvision.api.arista.tag.v2.TagAssignmentConfigDeleteAllRequest(partial_eq_filter: List[ForwardRef('TagAssignmentConfig')] = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[TagAssignmentConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a DeleteAll. This requires all provided fields to be equal to the response. A filtered DeleteAll will use GetAll with filter to find things to delete.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigDeleteAllResponse(type: '___fmp__.DeleteError' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, key: 'TagAssignmentKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

This indicates the error message from the delete failure.

key: TagAssignmentKey = <PLACEHOLDER>

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

time: datetime = <PLACEHOLDER>

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

type: ___fmp__.DeleteError = <PLACEHOLDER>

This describes the class of delete error. A DeleteAllResponse is only sent when there is an error.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigDeleteRequest(key: 'TagAssignmentKey' = <PLACEHOLDER>)[source]

Bases: Message

key: TagAssignmentKey = <PLACEHOLDER>

Key indicates which TagAssignmentConfig instance to remove. This field must always be set.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigDeleteResponse(key: 'TagAssignmentKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: TagAssignmentKey = <PLACEHOLDER>

Key echoes back the key of the deleted TagAssignmentConfig instance.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigDeleteSomeRequest(keys: List[ForwardRef('TagAssignmentKey')] = <PLACEHOLDER>)[source]

Bases: Message

keys: List[TagAssignmentKey] = <PLACEHOLDER>

key contains a list of TagAssignmentConfig keys to delete

class cloudvision.api.arista.tag.v2.TagAssignmentConfigDeleteSomeResponse(key: ~cloudvision.api.arista.tag.v2.TagAssignmentKey = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

TagAssignmentConfigDeleteSomeResponse is only sent when there is an error.

error: str = <PLACEHOLDER>
key: TagAssignmentKey = <PLACEHOLDER>
class cloudvision.api.arista.tag.v2.TagAssignmentConfigRequest(key: 'TagAssignmentKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: TagAssignmentKey = <PLACEHOLDER>

Key uniquely identifies a TagAssignmentConfig instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigResponse(value: 'TagAssignmentConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the TagAssignmentConfig instance in this response.

value: TagAssignmentConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigServiceBase[source]

Bases: ServiceBase

async delete(tag_assignment_config_delete_request: TagAssignmentConfigDeleteRequest) TagAssignmentConfigDeleteResponse[source]
async delete_all(tag_assignment_config_delete_all_request: TagAssignmentConfigDeleteAllRequest) AsyncIterator[TagAssignmentConfigDeleteAllResponse][source]
async delete_some(tag_assignment_config_delete_some_request: TagAssignmentConfigDeleteSomeRequest) AsyncIterator[TagAssignmentConfigDeleteSomeResponse][source]
async get_all(tag_assignment_config_stream_request: TagAssignmentConfigStreamRequest) AsyncIterator[TagAssignmentConfigStreamResponse][source]
async get_all_batched(tag_assignment_config_batched_stream_request: TagAssignmentConfigBatchedStreamRequest) AsyncIterator[TagAssignmentConfigBatchedStreamResponse][source]
async get_meta(tag_assignment_config_stream_request: TagAssignmentConfigStreamRequest) MetaResponse[source]
async get_one(tag_assignment_config_request: TagAssignmentConfigRequest) TagAssignmentConfigResponse[source]
async get_some(tag_assignment_config_some_request: TagAssignmentConfigSomeRequest) AsyncIterator[TagAssignmentConfigSomeResponse][source]
async set(tag_assignment_config_set_request: TagAssignmentConfigSetRequest) TagAssignmentConfigSetResponse[source]
async set_some(tag_assignment_config_set_some_request: TagAssignmentConfigSetSomeRequest) AsyncIterator[TagAssignmentConfigSetSomeResponse][source]
async subscribe(tag_assignment_config_stream_request: TagAssignmentConfigStreamRequest) AsyncIterator[TagAssignmentConfigStreamResponse][source]
async subscribe_batched(tag_assignment_config_batched_stream_request: TagAssignmentConfigBatchedStreamRequest) AsyncIterator[TagAssignmentConfigBatchedStreamResponse][source]
async subscribe_meta(tag_assignment_config_stream_request: TagAssignmentConfigStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.TagAssignmentConfigServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async delete(tag_assignment_config_delete_request: TagAssignmentConfigDeleteRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) TagAssignmentConfigDeleteResponse[source]
async delete_all(tag_assignment_config_delete_all_request: TagAssignmentConfigDeleteAllRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentConfigDeleteAllResponse][source]
async delete_some(tag_assignment_config_delete_some_request: TagAssignmentConfigDeleteSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentConfigDeleteSomeResponse][source]
async get_all(tag_assignment_config_stream_request: TagAssignmentConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentConfigStreamResponse][source]
async get_all_batched(tag_assignment_config_batched_stream_request: TagAssignmentConfigBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentConfigBatchedStreamResponse][source]
async get_meta(tag_assignment_config_stream_request: TagAssignmentConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(tag_assignment_config_request: TagAssignmentConfigRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) TagAssignmentConfigResponse[source]
async get_some(tag_assignment_config_some_request: TagAssignmentConfigSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentConfigSomeResponse][source]
async set(tag_assignment_config_set_request: TagAssignmentConfigSetRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) TagAssignmentConfigSetResponse[source]
async set_some(tag_assignment_config_set_some_request: TagAssignmentConfigSetSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentConfigSetSomeResponse][source]
async subscribe(tag_assignment_config_stream_request: TagAssignmentConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentConfigStreamResponse][source]
async subscribe_batched(tag_assignment_config_batched_stream_request: TagAssignmentConfigBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentConfigBatchedStreamResponse][source]
async subscribe_meta(tag_assignment_config_stream_request: TagAssignmentConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.TagAssignmentConfigSetRequest(value: 'TagAssignmentConfig' = <PLACEHOLDER>)[source]

Bases: Message

value: TagAssignmentConfig = <PLACEHOLDER>

TagAssignmentConfig carries the value to set into the datastore. See the documentation on the TagAssignmentConfig struct for which fields are required.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigSetResponse(value: 'TagAssignmentConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

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.

value: TagAssignmentConfig = <PLACEHOLDER>

Value carries all the values given in the TagAssignmentConfigSetRequest as well as any server-generated values.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigSetSomeRequest(values: List[ForwardRef('TagAssignmentConfig')] = <PLACEHOLDER>)[source]

Bases: Message

values: List[TagAssignmentConfig] = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigSetSomeResponse(key: 'TagAssignmentKey' = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

error: str = <PLACEHOLDER>
key: TagAssignmentKey = <PLACEHOLDER>
class cloudvision.api.arista.tag.v2.TagAssignmentConfigSomeRequest(keys: List[ForwardRef('TagAssignmentKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[TagAssignmentKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigSomeResponse(value: 'TagAssignmentConfig' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

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

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the TagAssignmentConfig instance in this response.

value: TagAssignmentConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigStreamRequest(partial_eq_filter: List[ForwardRef('TagAssignmentConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[TagAssignmentConfig] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentConfigStreamResponse(value: 'TagAssignmentConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

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

type: __subscriptions__.Operation = <PLACEHOLDER>

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.

value: TagAssignmentConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentKey(workspace_id: str | None = <PLACEHOLDER>, element_type: ~cloudvision.api.arista.tag.v2.ElementType = <PLACEHOLDER>, label: str | None = <PLACEHOLDER>, value: str | None = <PLACEHOLDER>, device_id: str | None = <PLACEHOLDER>, interface_id: str | None = <PLACEHOLDER>, element_sub_type: ~cloudvision.api.arista.tag.v2.ElementSubType = <PLACEHOLDER>, primary_entity_id: str | None = <PLACEHOLDER>, secondary_entity_id: str | None = <PLACEHOLDER>)[source]

Bases: Message

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

device_id: str | None = <PLACEHOLDER>

device_id identifies a device.

element_sub_type: ElementSubType = <PLACEHOLDER>

element_sub_type is the element sub-type of a tag.

element_type: ElementType = <PLACEHOLDER>

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 ELEMENT_TYPE_VIRTUAL:

primary_entity_id -> application_id secondary_entity_id -> service_id

interface_id: str | None = <PLACEHOLDER>

interface_id identifies an interface on a device.

label: str | None = <PLACEHOLDER>

label is the label of a tag.

primary_entity_id: str | None = <PLACEHOLDER>

primary_entity_id holds unique identifiers of an application/device. The primary entity is the entity which can exist by itself or can be associated with a secondary entity.

secondary_entity_id: str | None = <PLACEHOLDER>

secondary_entity_id holds unique identifier of a service/interface. The secondary entity is the entity which cannot exist by itself and always has to be associated with a primary entity.

value: str | None = <PLACEHOLDER>

value is the value of a tag.

workspace_id: str | None = <PLACEHOLDER>

workspace_id is the ID of a workspace. The special ID “” identifies the location where merged assignments reside.

class cloudvision.api.arista.tag.v2.TagAssignmentRequest(key: 'TagAssignmentKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: TagAssignmentKey = <PLACEHOLDER>

Key uniquely identifies a TagAssignment instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentResponse(value: 'TagAssignment' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the TagAssignment instance in this response.

value: TagAssignment = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentServiceBase[source]

Bases: ServiceBase

async get_all(tag_assignment_stream_request: TagAssignmentStreamRequest) AsyncIterator[TagAssignmentStreamResponse][source]
async get_all_batched(tag_assignment_batched_stream_request: TagAssignmentBatchedStreamRequest) AsyncIterator[TagAssignmentBatchedStreamResponse][source]
async get_meta(tag_assignment_stream_request: TagAssignmentStreamRequest) MetaResponse[source]
async get_one(tag_assignment_request: TagAssignmentRequest) TagAssignmentResponse[source]
async get_some(tag_assignment_some_request: TagAssignmentSomeRequest) AsyncIterator[TagAssignmentSomeResponse][source]
async subscribe(tag_assignment_stream_request: TagAssignmentStreamRequest) AsyncIterator[TagAssignmentStreamResponse][source]
async subscribe_batched(tag_assignment_batched_stream_request: TagAssignmentBatchedStreamRequest) AsyncIterator[TagAssignmentBatchedStreamResponse][source]
async subscribe_meta(tag_assignment_stream_request: TagAssignmentStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.TagAssignmentServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async get_all(tag_assignment_stream_request: TagAssignmentStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentStreamResponse][source]
async get_all_batched(tag_assignment_batched_stream_request: TagAssignmentBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentBatchedStreamResponse][source]
async get_meta(tag_assignment_stream_request: TagAssignmentStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(tag_assignment_request: TagAssignmentRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) TagAssignmentResponse[source]
async get_some(tag_assignment_some_request: TagAssignmentSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentSomeResponse][source]
async subscribe(tag_assignment_stream_request: TagAssignmentStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentStreamResponse][source]
async subscribe_batched(tag_assignment_batched_stream_request: TagAssignmentBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagAssignmentBatchedStreamResponse][source]
async subscribe_meta(tag_assignment_stream_request: TagAssignmentStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.TagAssignmentSomeRequest(keys: List[ForwardRef('TagAssignmentKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[TagAssignmentKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentSomeResponse(value: 'TagAssignment' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

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

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the TagAssignment instance in this response.

value: TagAssignment = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentStreamRequest(partial_eq_filter: List[ForwardRef('TagAssignment')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[TagAssignment] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagAssignmentStreamResponse(value: 'TagAssignment' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

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

type: __subscriptions__.Operation = <PLACEHOLDER>

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.

value: TagAssignment = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagBatchedStreamRequest(partial_eq_filter: List[ForwardRef('Tag')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>, max_messages: int | None = <PLACEHOLDER>)[source]

Bases: Message

max_messages: int | None = <PLACEHOLDER>

MaxMessages limits the maximum number of messages that can be contained in one batch. MaxMessages is required to be at least 1. The maximum number of messages in a batch is min(max_messages, INTERNAL_BATCH_LIMIT) INTERNAL_BATCH_LIMIT is set based on the maximum message size.

partial_eq_filter: List[Tag] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagBatchedStreamResponse(responses: List[ForwardRef('TagStreamResponse')] = <PLACEHOLDER>)[source]

Bases: Message

responses: List[TagStreamResponse] = <PLACEHOLDER>

Values are the values deemed relevant to the initiating request. The length of this structure is guaranteed to be between (inclusive) 1 and min(req.max_messages, INTERNAL_BATCH_LIMIT).

class cloudvision.api.arista.tag.v2.TagConfig(key: ~cloudvision.api.arista.tag.v2.TagKey = <PLACEHOLDER>, remove: bool | None = <PLACEHOLDER>)[source]

Bases: Message

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.

key: TagKey = <PLACEHOLDER>

key identifies a tag. The special workspace ID “” for merged tags should not be set here.

remove: bool | None = <PLACEHOLDER>

remove indicates whether to remove (true) or add (false, unset) the tag identified by the key if the encompassing workspace merges.

class cloudvision.api.arista.tag.v2.TagConfigBatchedStreamRequest(partial_eq_filter: List[ForwardRef('TagConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>, max_messages: int | None = <PLACEHOLDER>)[source]

Bases: Message

max_messages: int | None = <PLACEHOLDER>

MaxMessages limits the maximum number of messages that can be contained in one batch. MaxMessages is required to be at least 1. The maximum number of messages in a batch is min(max_messages, INTERNAL_BATCH_LIMIT) INTERNAL_BATCH_LIMIT is set based on the maximum message size.

partial_eq_filter: List[TagConfig] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagConfigBatchedStreamResponse(responses: List[ForwardRef('TagConfigStreamResponse')] = <PLACEHOLDER>)[source]

Bases: Message

responses: List[TagConfigStreamResponse] = <PLACEHOLDER>

Values are the values deemed relevant to the initiating request. The length of this structure is guaranteed to be between (inclusive) 1 and min(req.max_messages, INTERNAL_BATCH_LIMIT).

class cloudvision.api.arista.tag.v2.TagConfigDeleteAllRequest(partial_eq_filter: List[ForwardRef('TagConfig')] = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[TagConfig] = <PLACEHOLDER>

PartialEqFilter provides a way to server-side filter a DeleteAll. This requires all provided fields to be equal to the response. A filtered DeleteAll will use GetAll with filter to find things to delete.

class cloudvision.api.arista.tag.v2.TagConfigDeleteAllResponse(type: '___fmp__.DeleteError' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, key: 'TagKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

This indicates the error message from the delete failure.

key: TagKey = <PLACEHOLDER>

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

time: datetime = <PLACEHOLDER>

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

type: ___fmp__.DeleteError = <PLACEHOLDER>

This describes the class of delete error. A DeleteAllResponse is only sent when there is an error.

class cloudvision.api.arista.tag.v2.TagConfigDeleteRequest(key: 'TagKey' = <PLACEHOLDER>)[source]

Bases: Message

key: TagKey = <PLACEHOLDER>

Key indicates which TagConfig instance to remove. This field must always be set.

class cloudvision.api.arista.tag.v2.TagConfigDeleteResponse(key: 'TagKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: TagKey = <PLACEHOLDER>

Key echoes back the key of the deleted TagConfig instance.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagConfigDeleteSomeRequest(keys: List[ForwardRef('TagKey')] = <PLACEHOLDER>)[source]

Bases: Message

keys: List[TagKey] = <PLACEHOLDER>

key contains a list of TagConfig keys to delete

class cloudvision.api.arista.tag.v2.TagConfigDeleteSomeResponse(key: ~cloudvision.api.arista.tag.v2.TagKey = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

TagConfigDeleteSomeResponse is only sent when there is an error.

error: str = <PLACEHOLDER>
key: TagKey = <PLACEHOLDER>
class cloudvision.api.arista.tag.v2.TagConfigRequest(key: 'TagKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: TagKey = <PLACEHOLDER>

Key uniquely identifies a TagConfig instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagConfigResponse(value: 'TagConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the TagConfig instance in this response.

value: TagConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagConfigServiceBase[source]

Bases: ServiceBase

async delete(tag_config_delete_request: TagConfigDeleteRequest) TagConfigDeleteResponse[source]
async delete_all(tag_config_delete_all_request: TagConfigDeleteAllRequest) AsyncIterator[TagConfigDeleteAllResponse][source]
async delete_some(tag_config_delete_some_request: TagConfigDeleteSomeRequest) AsyncIterator[TagConfigDeleteSomeResponse][source]
async get_all(tag_config_stream_request: TagConfigStreamRequest) AsyncIterator[TagConfigStreamResponse][source]
async get_all_batched(tag_config_batched_stream_request: TagConfigBatchedStreamRequest) AsyncIterator[TagConfigBatchedStreamResponse][source]
async get_meta(tag_config_stream_request: TagConfigStreamRequest) MetaResponse[source]
async get_one(tag_config_request: TagConfigRequest) TagConfigResponse[source]
async get_some(tag_config_some_request: TagConfigSomeRequest) AsyncIterator[TagConfigSomeResponse][source]
async set(tag_config_set_request: TagConfigSetRequest) TagConfigSetResponse[source]
async set_some(tag_config_set_some_request: TagConfigSetSomeRequest) AsyncIterator[TagConfigSetSomeResponse][source]
async subscribe(tag_config_stream_request: TagConfigStreamRequest) AsyncIterator[TagConfigStreamResponse][source]
async subscribe_batched(tag_config_batched_stream_request: TagConfigBatchedStreamRequest) AsyncIterator[TagConfigBatchedStreamResponse][source]
async subscribe_meta(tag_config_stream_request: TagConfigStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.TagConfigServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async delete(tag_config_delete_request: TagConfigDeleteRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) TagConfigDeleteResponse[source]
async delete_all(tag_config_delete_all_request: TagConfigDeleteAllRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagConfigDeleteAllResponse][source]
async delete_some(tag_config_delete_some_request: TagConfigDeleteSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagConfigDeleteSomeResponse][source]
async get_all(tag_config_stream_request: TagConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagConfigStreamResponse][source]
async get_all_batched(tag_config_batched_stream_request: TagConfigBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagConfigBatchedStreamResponse][source]
async get_meta(tag_config_stream_request: TagConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(tag_config_request: TagConfigRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) TagConfigResponse[source]
async get_some(tag_config_some_request: TagConfigSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagConfigSomeResponse][source]
async set(tag_config_set_request: TagConfigSetRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) TagConfigSetResponse[source]
async set_some(tag_config_set_some_request: TagConfigSetSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagConfigSetSomeResponse][source]
async subscribe(tag_config_stream_request: TagConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagConfigStreamResponse][source]
async subscribe_batched(tag_config_batched_stream_request: TagConfigBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagConfigBatchedStreamResponse][source]
async subscribe_meta(tag_config_stream_request: TagConfigStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.TagConfigSetRequest(value: 'TagConfig' = <PLACEHOLDER>)[source]

Bases: Message

value: TagConfig = <PLACEHOLDER>

TagConfig carries the value to set into the datastore. See the documentation on the TagConfig struct for which fields are required.

class cloudvision.api.arista.tag.v2.TagConfigSetResponse(value: 'TagConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

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.

value: TagConfig = <PLACEHOLDER>

Value carries all the values given in the TagConfigSetRequest as well as any server-generated values.

class cloudvision.api.arista.tag.v2.TagConfigSetSomeRequest(values: List[ForwardRef('TagConfig')] = <PLACEHOLDER>)[source]

Bases: Message

values: List[TagConfig] = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagConfigSetSomeResponse(key: 'TagKey' = <PLACEHOLDER>, error: str = <PLACEHOLDER>)[source]

Bases: Message

error: str = <PLACEHOLDER>
key: TagKey = <PLACEHOLDER>
class cloudvision.api.arista.tag.v2.TagConfigSomeRequest(keys: List[ForwardRef('TagKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[TagKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagConfigSomeResponse(value: 'TagConfig' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

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

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the TagConfig instance in this response.

value: TagConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagConfigStreamRequest(partial_eq_filter: List[ForwardRef('TagConfig')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[TagConfig] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagConfigStreamResponse(value: 'TagConfig' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

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

type: __subscriptions__.Operation = <PLACEHOLDER>

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.

value: TagConfig = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagKey(workspace_id: str | None = <PLACEHOLDER>, element_type: ~cloudvision.api.arista.tag.v2.ElementType = <PLACEHOLDER>, label: str | None = <PLACEHOLDER>, value: str | None = <PLACEHOLDER>, element_sub_type: ~cloudvision.api.arista.tag.v2.ElementSubType = <PLACEHOLDER>)[source]

Bases: Message

TagKey uniquely identifies a tag.

element_sub_type: ElementSubType = <PLACEHOLDER>

element_sub_type is the sub-category of network element to which this tag can be assigned.

element_type: ElementType = <PLACEHOLDER>

element_type is the category of network element to which this tag can be assigned.

label: str | None = <PLACEHOLDER>

label is an arbitrary label.

value: str | None = <PLACEHOLDER>

value is an arbitrary value.

workspace_id: str | None = <PLACEHOLDER>

workspace_id is the ID of a workspace. The special ID “” identifies the location where merged tags reside.

class cloudvision.api.arista.tag.v2.TagRequest(key: 'TagKey' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

key: TagKey = <PLACEHOLDER>

Key uniquely identifies a Tag instance to retrieve. This value must be populated.

time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagResponse(value: 'Tag' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the Tag instance in this response.

value: Tag = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagServiceBase[source]

Bases: ServiceBase

async get_all(tag_stream_request: TagStreamRequest) AsyncIterator[TagStreamResponse][source]
async get_all_batched(tag_batched_stream_request: TagBatchedStreamRequest) AsyncIterator[TagBatchedStreamResponse][source]
async get_meta(tag_stream_request: TagStreamRequest) MetaResponse[source]
async get_one(tag_request: TagRequest) TagResponse[source]
async get_some(tag_some_request: TagSomeRequest) AsyncIterator[TagSomeResponse][source]
async subscribe(tag_stream_request: TagStreamRequest) AsyncIterator[TagStreamResponse][source]
async subscribe_batched(tag_batched_stream_request: TagBatchedStreamRequest) AsyncIterator[TagBatchedStreamResponse][source]
async subscribe_meta(tag_stream_request: TagStreamRequest) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.TagServiceStub(channel: Channel, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: Mapping[str, str | bytes] | Collection[Tuple[str, str | bytes]] | None = None)[source]

Bases: ServiceStub

async get_all(tag_stream_request: TagStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagStreamResponse][source]
async get_all_batched(tag_batched_stream_request: TagBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagBatchedStreamResponse][source]
async get_meta(tag_stream_request: TagStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) MetaResponse[source]
async get_one(tag_request: TagRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) TagResponse[source]
async get_some(tag_some_request: TagSomeRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagSomeResponse][source]
async subscribe(tag_stream_request: TagStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagStreamResponse][source]
async subscribe_batched(tag_batched_stream_request: TagBatchedStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[TagBatchedStreamResponse][source]
async subscribe_meta(tag_stream_request: TagStreamRequest, *, timeout: float | None = None, deadline: Deadline | None = None, metadata: MetadataLike | None = None) AsyncIterator[MetaResponse][source]
class cloudvision.api.arista.tag.v2.TagSomeRequest(keys: List[ForwardRef('TagKey')] = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

keys: List[TagKey] = <PLACEHOLDER>
time: datetime = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagSomeResponse(value: 'Tag' = <PLACEHOLDER>, error: str | None = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>)[source]

Bases: Message

error: str | None = <PLACEHOLDER>

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

time: datetime = <PLACEHOLDER>

Time carries the (UTC) timestamp of the last-modification of the Tag instance in this response.

value: Tag = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagStreamRequest(partial_eq_filter: List[ForwardRef('Tag')] = <PLACEHOLDER>, time: '__time__.TimeBounds' = <PLACEHOLDER>)[source]

Bases: Message

partial_eq_filter: List[Tag] = <PLACEHOLDER>

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.

time: __time__.TimeBounds = <PLACEHOLDER>

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.

class cloudvision.api.arista.tag.v2.TagStreamResponse(value: 'Tag' = <PLACEHOLDER>, time: datetime.datetime = <PLACEHOLDER>, type: '__subscriptions__.Operation' = <PLACEHOLDER>)[source]

Bases: Message

time: datetime = <PLACEHOLDER>

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

type: __subscriptions__.Operation = <PLACEHOLDER>

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.

value: Tag = <PLACEHOLDER>

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.