arvados.api_resources

Arvados API client reference documentation

This module provides reference documentation for the interface of the Arvados API client, including method signatures and type information for returned objects. However, the functions in arvados.api will return different classes at runtime that are generated dynamically from the Arvados API discovery document. The classes in this module do not have any implementation, and you should not instantiate them in your code.

If you’re just starting out, ArvadosAPIClient documents the methods available from the client object. From there, you can follow the trail into resource methods, request objects, and finally the data dictionaries returned by the API server.

   1"""Arvados API client reference documentation
   2
   3This module provides reference documentation for the interface of the
   4Arvados API client, including method signatures and type information for
   5returned objects. However, the functions in `arvados.api` will return
   6different classes at runtime that are generated dynamically from the Arvados
   7API discovery document. The classes in this module do not have any
   8implementation, and you should not instantiate them in your code.
   9
  10If you're just starting out, `ArvadosAPIClient` documents the methods
  11available from the client object. From there, you can follow the trail into
  12resource methods, request objects, and finally the data dictionaries returned
  13by the API server.
  14"""
  15
  16import googleapiclient.discovery
  17import googleapiclient.http
  18import httplib2
  19import sys
  20from typing import Any, Dict, Generic, List, Literal, Optional, TypedDict, TypeVar
  21
  22# ST represents an API response type
  23ST = TypeVar('ST', bound=TypedDict)
  24
  25
  26class ArvadosAPIRequest(googleapiclient.http.HttpRequest, Generic[ST]):
  27    """Generic API request object
  28
  29    When you call an API method in the Arvados Python SDK, it returns a
  30    request object. You usually call `execute()` on this object to submit the
  31    request to your Arvados API server and retrieve the response. `execute()`
  32    will return the type of object annotated in the subscript of
  33    `ArvadosAPIRequest`.
  34    """
  35
  36    def execute(self, http: Optional[httplib2.Http]=None, num_retries: int=0) -> ST:
  37        """Execute this request and return the response
  38
  39        Arguments:
  40
  41        * http: httplib2.Http | None --- The HTTP client object to use to
  42          execute the request. If not specified, uses the HTTP client object
  43          created with the API client object.
  44
  45        * num_retries: int --- The maximum number of times to retry this
  46          request if the server returns a retryable failure. The API client
  47          object also has a maximum number of retries specified when it is
  48          instantiated (see `arvados.api.api_client`). This request is run
  49          with the larger of that number and this argument. Default 0.
  50        """
  51
  52
  53class ApiClientAuthorization(TypedDict, total=False):
  54    """Arvados API client authorization token
  55
  56    This resource represents an API token a user may use to authenticate an
  57    Arvados API request.
  58
  59    This is the dictionary object that represents a single ApiClientAuthorization in Arvados
  60    and is returned by most `ApiClientAuthorizations` methods.
  61    The keys of the dictionary are documented below, along with their types.
  62    Not every key may appear in every dictionary returned by an API call.
  63    When a method doesn't return all the data, you can use its `select` parameter
  64    to list the specific keys you need. Refer to the API documentation for details.
  65    """
  66    etag: 'str'
  67    """Object cache version."""
  68    api_token: 'str'
  69    """The secret token that can be used to authorize Arvados API requests."""
  70    created_by_ip_address: 'str'
  71    """The IP address of the client that created this token."""
  72    last_used_by_ip_address: 'str'
  73    """The IP address of the client that last used this token."""
  74    last_used_at: 'str'
  75    """The last time this token was used to authorize a request. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
  76    expires_at: 'str'
  77    """The time after which this token is no longer valid for authorization. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
  78    created_at: 'str'
  79    """The time this API client authorization was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
  80    scopes: 'List'
  81    """An array of strings identifying HTTP methods and API paths this token is
  82    authorized to use. Refer to the [scopes reference][] for details.
  83
  84    [scopes reference]: https://doc.arvados.org/api/tokens.html#scopes
  85    """
  86    uuid: 'str'
  87    """This API client authorization's Arvados UUID, like `zzzzz-gj3su-12345abcde67890`."""
  88
  89
  90class ApiClientAuthorizationList(TypedDict, total=False):
  91    """A list of ApiClientAuthorization objects.
  92
  93    This is the dictionary object returned when you call `ApiClientAuthorizations.list`.
  94    If you just want to iterate all objects that match your search criteria,
  95    consider using `arvados.util.keyset_list_all`.
  96    If you work with this raw object, the keys of the dictionary are documented
  97    below, along with their types. The `items` key maps to a list of matching
  98    `ApiClientAuthorization` objects.
  99    """
 100    kind: 'str' = 'arvados#apiClientAuthorizationList'
 101    """Object type. Always arvados#apiClientAuthorizationList."""
 102    etag: 'str'
 103    """List cache version."""
 104    items: 'List[ApiClientAuthorization]'
 105    """An array of matching ApiClientAuthorization objects."""
 106
 107
 108class ApiClientAuthorizations:
 109    """Methods to query and manipulate Arvados api client authorizations"""
 110
 111    def create(self, *, body: "Dict[Literal['api_client_authorization'], ApiClientAuthorization]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
 112        """Create a new ApiClientAuthorization.
 113
 114        Required parameters:
 115
 116        * body: Dict[Literal['api_client_authorization'], ApiClientAuthorization] --- A dictionary with a single item `'api_client_authorization'`.
 117          Its value is a `ApiClientAuthorization` dictionary defining the attributes to set. 
 118
 119        Optional parameters:
 120
 121        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
 122
 123        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
 124
 125        * select: Optional[List] --- An array of names of attributes to return in the response.
 126        """
 127
 128    def create_system_auth(self, *, scopes: 'List' = ['all']) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
 129        """Create a token for the system ("root") user.
 130
 131        Optional parameters:
 132
 133        * scopes: List --- An array of strings defining the scope of resources this token will be allowed to access. Refer to the [scopes reference][] for details. Default `['all']`.
 134
 135          [scopes reference]: https://doc.arvados.org/api/tokens.html#scopes
 136        """
 137
 138    def current(self) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
 139        """Return all metadata for the token used to authorize this request."""
 140
 141    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ApiClientAuthorization]':
 142        """Delete an existing ApiClientAuthorization.
 143
 144        Required parameters:
 145
 146        * uuid: str --- The UUID of the ApiClientAuthorization to delete.
 147        """
 148
 149    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
 150        """Get a ApiClientAuthorization record by UUID.
 151
 152        Required parameters:
 153
 154        * uuid: str --- The UUID of the ApiClientAuthorization to return. 
 155
 156        Optional parameters:
 157
 158        * select: Optional[List] --- An array of names of attributes to return in the response.
 159        """
 160
 161    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorizationList]':
 162        """Retrieve a ApiClientAuthorizationList.
 163
 164        This method returns a single page of `ApiClientAuthorization` objects that match your search
 165        criteria. If you just want to iterate all objects that match your search
 166        criteria, consider using `arvados.util.keyset_list_all`.
 167
 168        Optional parameters:
 169
 170        * bypass_federation: bool --- If true, do not return results from other clusters in the
 171          federation, only the cluster that received the request.
 172          You must be an administrator to use this flag. Default `False`.
 173
 174        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
 175
 176        * count: str --- A string to determine result counting behavior. Supported values are:
 177
 178          * `"exact"`: The response will include an `items_available` field that
 179            counts the number of objects that matched this search criteria,
 180            including ones not included in `items`.
 181
 182          * `"none"`: The response will not include an `items_avaliable`
 183            field. This improves performance by returning a result as soon as enough
 184            `items` have been loaded for this result.
 185
 186          Default `'exact'`.
 187
 188        * distinct: bool --- If this is true, and multiple objects have the same values
 189          for the attributes that you specify in the `select` parameter, then each unique
 190          set of values will only be returned once in the result set. Default `False`.
 191
 192        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
 193          Refer to the [filters reference][] for more information about how to write filters. 
 194
 195          [filters reference]: https://doc.arvados.org/api/methods.html#filters
 196
 197        * limit: int --- The maximum number of objects to return in the result.
 198          Note that the API may return fewer results than this if your request hits other
 199          limits set by the administrator. Default `100`.
 200
 201        * offset: int --- Return matching objects starting from this index.
 202          Note that result indexes may change if objects are modified in between a series
 203          of list calls. Default `0`.
 204
 205        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
 206          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
 207          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
 208
 209        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
 210
 211        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
 212          The keys of this object are attribute names.
 213          Each value is either a single matching value or an array of matching values for that attribute.
 214          The `filters` parameter is more flexible and preferred.
 215        """
 216
 217    def update(self, *, body: "Dict[Literal['api_client_authorization'], ApiClientAuthorization]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
 218        """Update attributes of an existing ApiClientAuthorization.
 219
 220        Required parameters:
 221
 222        * body: Dict[Literal['api_client_authorization'], ApiClientAuthorization] --- A dictionary with a single item `'api_client_authorization'`.
 223          Its value is a `ApiClientAuthorization` dictionary defining the attributes to set. 
 224
 225        * uuid: str --- The UUID of the ApiClientAuthorization to update. 
 226
 227        Optional parameters:
 228
 229        * select: Optional[List] --- An array of names of attributes to return in the response.
 230        """
 231
 232
 233class AuthorizedKey(TypedDict, total=False):
 234    """Arvados authorized public key
 235
 236    This resource represents a public key a user may use to authenticate themselves
 237    to services on the cluster. Its primary use today is to store SSH keys for
 238    virtual machines ("shell nodes"). It may be extended to store other keys in
 239    the future.
 240
 241    This is the dictionary object that represents a single AuthorizedKey in Arvados
 242    and is returned by most `AuthorizedKeys` methods.
 243    The keys of the dictionary are documented below, along with their types.
 244    Not every key may appear in every dictionary returned by an API call.
 245    When a method doesn't return all the data, you can use its `select` parameter
 246    to list the specific keys you need. Refer to the API documentation for details.
 247    """
 248    etag: 'str'
 249    """Object cache version."""
 250    uuid: 'str'
 251    """This authorized key's Arvados UUID, like `zzzzz-fngyi-12345abcde67890`."""
 252    owner_uuid: 'str'
 253    """The UUID of the user or group that owns this authorized key."""
 254    modified_by_user_uuid: 'str'
 255    """The UUID of the user that last updated this authorized key."""
 256    modified_at: 'str'
 257    """The time this authorized key was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 258    name: 'str'
 259    """The name of this authorized key assigned by a user."""
 260    key_type: 'str'
 261    """A string identifying what type of service uses this key. Supported values are:
 262
 263      * `"SSH"`
 264    """
 265    authorized_user_uuid: 'str'
 266    """The UUID of the Arvados user that is authorized by this key."""
 267    public_key: 'str'
 268    """The full public key, in the format referenced by `key_type`."""
 269    expires_at: 'str'
 270    """The time after which this key is no longer valid for authorization. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 271    created_at: 'str'
 272    """The time this authorized key was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 273
 274
 275class AuthorizedKeyList(TypedDict, total=False):
 276    """A list of AuthorizedKey objects.
 277
 278    This is the dictionary object returned when you call `AuthorizedKeys.list`.
 279    If you just want to iterate all objects that match your search criteria,
 280    consider using `arvados.util.keyset_list_all`.
 281    If you work with this raw object, the keys of the dictionary are documented
 282    below, along with their types. The `items` key maps to a list of matching
 283    `AuthorizedKey` objects.
 284    """
 285    kind: 'str' = 'arvados#authorizedKeyList'
 286    """Object type. Always arvados#authorizedKeyList."""
 287    etag: 'str'
 288    """List cache version."""
 289    items: 'List[AuthorizedKey]'
 290    """An array of matching AuthorizedKey objects."""
 291
 292
 293class AuthorizedKeys:
 294    """Methods to query and manipulate Arvados authorized keys"""
 295
 296    def create(self, *, body: "Dict[Literal['authorized_key'], AuthorizedKey]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
 297        """Create a new AuthorizedKey.
 298
 299        Required parameters:
 300
 301        * body: Dict[Literal['authorized_key'], AuthorizedKey] --- A dictionary with a single item `'authorized_key'`.
 302          Its value is a `AuthorizedKey` dictionary defining the attributes to set. 
 303
 304        Optional parameters:
 305
 306        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
 307
 308        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
 309
 310        * select: Optional[List] --- An array of names of attributes to return in the response.
 311        """
 312
 313    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[AuthorizedKey]':
 314        """Delete an existing AuthorizedKey.
 315
 316        Required parameters:
 317
 318        * uuid: str --- The UUID of the AuthorizedKey to delete.
 319        """
 320
 321    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
 322        """Get a AuthorizedKey record by UUID.
 323
 324        Required parameters:
 325
 326        * uuid: str --- The UUID of the AuthorizedKey to return. 
 327
 328        Optional parameters:
 329
 330        * select: Optional[List] --- An array of names of attributes to return in the response.
 331        """
 332
 333    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[AuthorizedKeyList]':
 334        """Retrieve a AuthorizedKeyList.
 335
 336        This method returns a single page of `AuthorizedKey` objects that match your search
 337        criteria. If you just want to iterate all objects that match your search
 338        criteria, consider using `arvados.util.keyset_list_all`.
 339
 340        Optional parameters:
 341
 342        * bypass_federation: bool --- If true, do not return results from other clusters in the
 343          federation, only the cluster that received the request.
 344          You must be an administrator to use this flag. Default `False`.
 345
 346        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
 347
 348        * count: str --- A string to determine result counting behavior. Supported values are:
 349
 350          * `"exact"`: The response will include an `items_available` field that
 351            counts the number of objects that matched this search criteria,
 352            including ones not included in `items`.
 353
 354          * `"none"`: The response will not include an `items_avaliable`
 355            field. This improves performance by returning a result as soon as enough
 356            `items` have been loaded for this result.
 357
 358          Default `'exact'`.
 359
 360        * distinct: bool --- If this is true, and multiple objects have the same values
 361          for the attributes that you specify in the `select` parameter, then each unique
 362          set of values will only be returned once in the result set. Default `False`.
 363
 364        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
 365          Refer to the [filters reference][] for more information about how to write filters. 
 366
 367          [filters reference]: https://doc.arvados.org/api/methods.html#filters
 368
 369        * limit: int --- The maximum number of objects to return in the result.
 370          Note that the API may return fewer results than this if your request hits other
 371          limits set by the administrator. Default `100`.
 372
 373        * offset: int --- Return matching objects starting from this index.
 374          Note that result indexes may change if objects are modified in between a series
 375          of list calls. Default `0`.
 376
 377        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
 378          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
 379          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
 380
 381        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
 382
 383        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
 384          The keys of this object are attribute names.
 385          Each value is either a single matching value or an array of matching values for that attribute.
 386          The `filters` parameter is more flexible and preferred.
 387        """
 388
 389    def update(self, *, body: "Dict[Literal['authorized_key'], AuthorizedKey]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
 390        """Update attributes of an existing AuthorizedKey.
 391
 392        Required parameters:
 393
 394        * body: Dict[Literal['authorized_key'], AuthorizedKey] --- A dictionary with a single item `'authorized_key'`.
 395          Its value is a `AuthorizedKey` dictionary defining the attributes to set. 
 396
 397        * uuid: str --- The UUID of the AuthorizedKey to update. 
 398
 399        Optional parameters:
 400
 401        * select: Optional[List] --- An array of names of attributes to return in the response.
 402        """
 403
 404
 405class Collection(TypedDict, total=False):
 406    """Arvados data collection
 407
 408    A collection describes how a set of files is stored in data blocks in Keep,
 409    along with associated metadata.
 410
 411    This is the dictionary object that represents a single Collection in Arvados
 412    and is returned by most `Collections` methods.
 413    The keys of the dictionary are documented below, along with their types.
 414    Not every key may appear in every dictionary returned by an API call.
 415    When a method doesn't return all the data, you can use its `select` parameter
 416    to list the specific keys you need. Refer to the API documentation for details.
 417    """
 418    etag: 'str'
 419    """Object cache version."""
 420    owner_uuid: 'str'
 421    """The UUID of the user or group that owns this collection."""
 422    created_at: 'str'
 423    """The time this collection was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 424    modified_by_user_uuid: 'str'
 425    """The UUID of the user that last updated this collection."""
 426    modified_at: 'str'
 427    """The time this collection was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 428    portable_data_hash: 'str'
 429    """The portable data hash of this collection. This string provides a unique
 430    and stable reference to these contents.
 431    """
 432    replication_desired: 'int'
 433    """The number of copies that should be made for data in this collection."""
 434    replication_confirmed_at: 'str'
 435    """The last time the cluster confirmed that it met `replication_confirmed`
 436    for this collection. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`.
 437    """
 438    replication_confirmed: 'int'
 439    """The number of copies of data in this collection that the cluster has confirmed
 440    exist in storage.
 441    """
 442    uuid: 'str'
 443    """This collection's Arvados UUID, like `zzzzz-4zz18-12345abcde67890`."""
 444    manifest_text: 'str'
 445    """The manifest text that describes how files are constructed from data blocks
 446    in this collection. Refer to the [manifest format][] reference for details.
 447
 448    [manifest format]: https://doc.arvados.org/architecture/manifest-format.html
 449    """
 450    name: 'str'
 451    """The name of this collection assigned by a user."""
 452    description: 'str'
 453    """A longer HTML description of this collection assigned by a user.
 454    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
 455    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
 456    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
 457    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
 458    """
 459    properties: 'Dict[str, Any]'
 460    """A hash of arbitrary metadata for this collection.
 461    Some keys may be reserved by Arvados or defined by a configured vocabulary.
 462    Refer to the [metadata properties reference][] for details.
 463
 464    [metadata properties reference]: https://doc.arvados.org/api/properties.html
 465    """
 466    delete_at: 'str'
 467    """The time this collection will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 468    trash_at: 'str'
 469    """The time this collection will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 470    is_trashed: 'bool'
 471    """A boolean flag to indicate whether or not this collection is trashed."""
 472    storage_classes_desired: 'List'
 473    """An array of strings identifying the storage class(es) that should be used
 474    for data in this collection. Storage classes are configured by the cluster administrator.
 475    """
 476    storage_classes_confirmed: 'List'
 477    """An array of strings identifying the storage class(es) the cluster has
 478    confirmed have a copy of this collection's data.
 479    """
 480    storage_classes_confirmed_at: 'str'
 481    """The last time the cluster confirmed that data was stored on the storage
 482    class(es) in `storage_classes_confirmed`. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`.
 483    """
 484    current_version_uuid: 'str'
 485    """The UUID of the current version of this collection."""
 486    version: 'int'
 487    """An integer that counts which version of a collection this record
 488    represents. Refer to [collection versioning][] for details. This attribute is
 489    read-only.
 490
 491    [collection versioning]: https://doc.arvados.org/user/topics/collection-versioning.html
 492    """
 493    preserve_version: 'bool'
 494    """A boolean flag to indicate whether this specific version of this collection
 495    should be persisted in cluster storage.
 496    """
 497    file_count: 'int'
 498    """The number of files represented in this collection's `manifest_text`.
 499    This attribute is read-only.
 500    """
 501    file_size_total: 'int'
 502    """The total size in bytes of files represented in this collection's `manifest_text`.
 503    This attribute is read-only.
 504    """
 505
 506
 507class CollectionList(TypedDict, total=False):
 508    """A list of Collection objects.
 509
 510    This is the dictionary object returned when you call `Collections.list`.
 511    If you just want to iterate all objects that match your search criteria,
 512    consider using `arvados.util.keyset_list_all`.
 513    If you work with this raw object, the keys of the dictionary are documented
 514    below, along with their types. The `items` key maps to a list of matching
 515    `Collection` objects.
 516    """
 517    kind: 'str' = 'arvados#collectionList'
 518    """Object type. Always arvados#collectionList."""
 519    etag: 'str'
 520    """List cache version."""
 521    items: 'List[Collection]'
 522    """An array of matching Collection objects."""
 523
 524
 525class Collections:
 526    """Methods to query and manipulate Arvados collections"""
 527
 528    def create(self, *, body: "Dict[Literal['collection'], Collection]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, replace_files: 'Optional[Dict[str, Any]]' = None, replace_segments: 'Optional[Dict[str, Any]]' = None, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
 529        """Create a new Collection.
 530
 531        Required parameters:
 532
 533        * body: Dict[Literal['collection'], Collection] --- A dictionary with a single item `'collection'`.
 534          Its value is a `Collection` dictionary defining the attributes to set. 
 535
 536        Optional parameters:
 537
 538        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
 539
 540        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
 541
 542        * replace_files: Optional[Dict[str, Any]] --- Add, delete, and replace files and directories with new content
 543          and/or content from other collections. Refer to the
 544          [replace_files reference][] for details. 
 545
 546          [replace_files reference]: https://doc.arvados.org/api/methods/collections.html#replace_files
 547
 548        * replace_segments: Optional[Dict[str, Any]] --- Replace existing block segments in the collection with new segments.
 549          Refer to the [replace_segments reference][] for details. 
 550
 551          [replace_segments reference]: https://doc.arvados.org/api/methods/collections.html#replace_segments
 552
 553        * select: Optional[List] --- An array of names of attributes to return in the response.
 554        """
 555
 556    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
 557        """Delete an existing Collection.
 558
 559        Required parameters:
 560
 561        * uuid: str --- The UUID of the Collection to delete.
 562        """
 563
 564    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
 565        """Get a Collection record by UUID.
 566
 567        Required parameters:
 568
 569        * uuid: str --- The UUID of the Collection to return. 
 570
 571        Optional parameters:
 572
 573        * include_trash: bool --- Show collection even if its `is_trashed` attribute is true. Default `False`.
 574
 575        * select: Optional[List] --- An array of names of attributes to return in the response.
 576        """
 577
 578    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_old_versions: 'bool' = False, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[CollectionList]':
 579        """Retrieve a CollectionList.
 580
 581        This method returns a single page of `Collection` objects that match your search
 582        criteria. If you just want to iterate all objects that match your search
 583        criteria, consider using `arvados.util.keyset_list_all`.
 584
 585        Optional parameters:
 586
 587        * bypass_federation: bool --- If true, do not return results from other clusters in the
 588          federation, only the cluster that received the request.
 589          You must be an administrator to use this flag. Default `False`.
 590
 591        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
 592
 593        * count: str --- A string to determine result counting behavior. Supported values are:
 594
 595          * `"exact"`: The response will include an `items_available` field that
 596            counts the number of objects that matched this search criteria,
 597            including ones not included in `items`.
 598
 599          * `"none"`: The response will not include an `items_avaliable`
 600            field. This improves performance by returning a result as soon as enough
 601            `items` have been loaded for this result.
 602
 603          Default `'exact'`.
 604
 605        * distinct: bool --- If this is true, and multiple objects have the same values
 606          for the attributes that you specify in the `select` parameter, then each unique
 607          set of values will only be returned once in the result set. Default `False`.
 608
 609        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
 610          Refer to the [filters reference][] for more information about how to write filters. 
 611
 612          [filters reference]: https://doc.arvados.org/api/methods.html#filters
 613
 614        * include_old_versions: bool --- Include past collection versions. Default `False`.
 615
 616        * include_trash: bool --- Include collections whose `is_trashed` attribute is true. Default `False`.
 617
 618        * limit: int --- The maximum number of objects to return in the result.
 619          Note that the API may return fewer results than this if your request hits other
 620          limits set by the administrator. Default `100`.
 621
 622        * offset: int --- Return matching objects starting from this index.
 623          Note that result indexes may change if objects are modified in between a series
 624          of list calls. Default `0`.
 625
 626        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
 627          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
 628          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
 629
 630        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
 631
 632        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
 633          The keys of this object are attribute names.
 634          Each value is either a single matching value or an array of matching values for that attribute.
 635          The `filters` parameter is more flexible and preferred.
 636        """
 637
 638    def provenance(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
 639        """Detail the provenance of a given collection.
 640
 641        Required parameters:
 642
 643        * uuid: str --- The UUID of the Collection to query.
 644        """
 645
 646    def trash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
 647        """Trash a collection.
 648
 649        Required parameters:
 650
 651        * uuid: str --- The UUID of the Collection to update.
 652        """
 653
 654    def untrash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
 655        """Untrash a collection.
 656
 657        Required parameters:
 658
 659        * uuid: str --- The UUID of the Collection to update.
 660        """
 661
 662    def update(self, *, body: "Dict[Literal['collection'], Collection]", uuid: 'str', replace_files: 'Optional[Dict[str, Any]]' = None, replace_segments: 'Optional[Dict[str, Any]]' = None, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
 663        """Update attributes of an existing Collection.
 664
 665        Required parameters:
 666
 667        * body: Dict[Literal['collection'], Collection] --- A dictionary with a single item `'collection'`.
 668          Its value is a `Collection` dictionary defining the attributes to set. 
 669
 670        * uuid: str --- The UUID of the Collection to update. 
 671
 672        Optional parameters:
 673
 674        * replace_files: Optional[Dict[str, Any]] --- Add, delete, and replace files and directories with new content
 675          and/or content from other collections. Refer to the
 676          [replace_files reference][] for details. 
 677
 678          [replace_files reference]: https://doc.arvados.org/api/methods/collections.html#replace_files
 679
 680        * replace_segments: Optional[Dict[str, Any]] --- Replace existing block segments in the collection with new segments.
 681          Refer to the [replace_segments reference][] for details. 
 682
 683          [replace_segments reference]: https://doc.arvados.org/api/methods/collections.html#replace_segments
 684
 685        * select: Optional[List] --- An array of names of attributes to return in the response.
 686        """
 687
 688    def used_by(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
 689        """Detail where a given collection has been used.
 690
 691        Required parameters:
 692
 693        * uuid: str --- The UUID of the Collection to query.
 694        """
 695
 696
 697class ComputedPermission(TypedDict, total=False):
 698    """Arvados computed permission
 699
 700    Computed permissions do not correspond directly to any Arvados resource, but
 701    provide a simple way to query the entire graph of permissions granted to
 702    users and groups.
 703
 704    This is the dictionary object that represents a single ComputedPermission in Arvados
 705    and is returned by most `ComputedPermissions` methods.
 706    The keys of the dictionary are documented below, along with their types.
 707    Not every key may appear in every dictionary returned by an API call.
 708    When a method doesn't return all the data, you can use its `select` parameter
 709    to list the specific keys you need. Refer to the API documentation for details.
 710    """
 711    user_uuid: 'str'
 712    """The UUID of the Arvados user who has this permission."""
 713    target_uuid: 'str'
 714    """The UUID of the Arvados object the user has access to."""
 715    perm_level: 'str'
 716    """A string representing the user's level of access to the target object.
 717    Possible values are:
 718
 719      * `"can_read"`
 720      * `"can_write"`
 721      * `"can_manage"`
 722    """
 723
 724
 725class ComputedPermissionList(TypedDict, total=False):
 726    """A list of ComputedPermission objects.
 727
 728    This is the dictionary object returned when you call `ComputedPermissions.list`.
 729    If you just want to iterate all objects that match your search criteria,
 730    consider using `arvados.util.iter_computed_permissions`.
 731    If you work with this raw object, the keys of the dictionary are documented
 732    below, along with their types. The `items` key maps to a list of matching
 733    `ComputedPermission` objects.
 734    """
 735    kind: 'str' = 'arvados#computedPermissionList'
 736    """Object type. Always arvados#computedPermissionList."""
 737    etag: 'str'
 738    """List cache version."""
 739    items: 'List[ComputedPermission]'
 740    """An array of matching ComputedPermission objects."""
 741
 742
 743class ComputedPermissions:
 744    """Methods to query and manipulate Arvados computed permissions"""
 745
 746    def list(self, *, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ComputedPermissionList]':
 747        """Retrieve a ComputedPermissionList.
 748
 749        This method returns a single page of `ComputedPermission` objects that match your search
 750        criteria. If you just want to iterate all objects that match your search
 751        criteria, consider using `arvados.util.iter_computed_permissions`.
 752
 753        Optional parameters:
 754
 755        * count: str --- A string to determine result counting behavior. Supported values are:
 756
 757          * `"exact"`: The response will include an `items_available` field that
 758            counts the number of objects that matched this search criteria,
 759            including ones not included in `items`.
 760
 761          * `"none"`: The response will not include an `items_avaliable`
 762            field. This improves performance by returning a result as soon as enough
 763            `items` have been loaded for this result.
 764
 765          Default `'exact'`.
 766
 767        * distinct: bool --- If this is true, and multiple objects have the same values
 768          for the attributes that you specify in the `select` parameter, then each unique
 769          set of values will only be returned once in the result set. Default `False`.
 770
 771        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
 772          Refer to the [filters reference][] for more information about how to write filters. 
 773
 774          [filters reference]: https://doc.arvados.org/api/methods.html#filters
 775
 776        * limit: int --- The maximum number of objects to return in the result.
 777          Note that the API may return fewer results than this if your request hits other
 778          limits set by the administrator. Default `100`.
 779
 780        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
 781          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
 782          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
 783
 784        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
 785
 786        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
 787          The keys of this object are attribute names.
 788          Each value is either a single matching value or an array of matching values for that attribute.
 789          The `filters` parameter is more flexible and preferred.
 790        """
 791
 792
 793class Configs:
 794    """Methods to query and manipulate Arvados configs"""
 795
 796    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
 797        """Get this cluster's public configuration settings."""
 798
 799
 800class ContainerRequest(TypedDict, total=False):
 801    """Arvados container request
 802
 803    A container request represents a user's request that Arvados do some compute
 804    work, along with full details about what work should be done. Arvados will
 805    attempt to fulfill the request by mapping it to a matching container record,
 806    running the work on demand if necessary.
 807
 808    This is the dictionary object that represents a single ContainerRequest in Arvados
 809    and is returned by most `ContainerRequests` methods.
 810    The keys of the dictionary are documented below, along with their types.
 811    Not every key may appear in every dictionary returned by an API call.
 812    When a method doesn't return all the data, you can use its `select` parameter
 813    to list the specific keys you need. Refer to the API documentation for details.
 814    """
 815    etag: 'str'
 816    """Object cache version."""
 817    uuid: 'str'
 818    """This container request's Arvados UUID, like `zzzzz-xvhdp-12345abcde67890`."""
 819    owner_uuid: 'str'
 820    """The UUID of the user or group that owns this container request."""
 821    created_at: 'str'
 822    """The time this container request was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 823    modified_at: 'str'
 824    """The time this container request was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 825    modified_by_user_uuid: 'str'
 826    """The UUID of the user that last updated this container request."""
 827    name: 'str'
 828    """The name of this container request assigned by a user."""
 829    description: 'str'
 830    """A longer HTML description of this container request assigned by a user.
 831    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
 832    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
 833    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
 834    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
 835    """
 836    properties: 'Dict[str, Any]'
 837    """A hash of arbitrary metadata for this container request.
 838    Some keys may be reserved by Arvados or defined by a configured vocabulary.
 839    Refer to the [metadata properties reference][] for details.
 840
 841    [metadata properties reference]: https://doc.arvados.org/api/properties.html
 842    """
 843    state: 'str'
 844    """A string indicating where this container request is in its lifecycle.
 845    Possible values are:
 846
 847      * `"Uncommitted"` --- The container request has not been finalized and can still be edited.
 848      * `"Committed"` --- The container request is ready to be fulfilled.
 849      * `"Final"` --- The container request has been fulfilled or cancelled.
 850    """
 851    requesting_container_uuid: 'str'
 852    """The UUID of the container that created this container request, if any."""
 853    container_uuid: 'str'
 854    """The UUID of the container that fulfills this container request, if any."""
 855    container_count_max: 'int'
 856    """An integer that defines the maximum number of times Arvados should attempt
 857    to dispatch a container to fulfill this container request.
 858    """
 859    mounts: 'Dict[str, Any]'
 860    """A hash where each key names a directory inside this container, and its
 861    value is an object that defines the mount source for that directory. Refer
 862    to the [mount types reference][] for details.
 863
 864    [mount types reference]: https://doc.arvados.org/api/methods/containers.html#mount_types
 865    """
 866    runtime_constraints: 'Dict[str, Any]'
 867    """A hash that identifies compute resources this container requires to run
 868    successfully. See the [runtime constraints reference][] for details.
 869
 870    [runtime constraints reference]: https://doc.arvados.org/api/methods/containers.html#runtime_constraints
 871    """
 872    container_image: 'str'
 873    """The portable data hash of the Arvados collection that contains the image
 874    to use for this container.
 875    """
 876    environment: 'Dict[str, Any]'
 877    """A hash of string keys and values that defines the environment variables
 878    for the dispatcher to set when it executes this container.
 879    """
 880    cwd: 'str'
 881    """A string that the defines the working directory that the dispatcher should
 882    use when it executes the command inside this container.
 883    """
 884    command: 'List'
 885    """An array of strings that defines the command that the dispatcher should
 886    execute inside this container.
 887    """
 888    output_path: 'str'
 889    """A string that defines the file or directory path where the command
 890    writes output that should be saved from this container.
 891    """
 892    priority: 'int'
 893    """An integer between 0 and 1000 (inclusive) that represents this container request's
 894    scheduling priority. 0 represents a request to be cancelled. Higher
 895    values represent higher priority. Refer to the [priority reference][] for details.
 896
 897    [priority reference]: https://doc.arvados.org/api/methods/container_requests.html#priority
 898    """
 899    expires_at: 'str'
 900    """The time after which this container request will no longer be fulfilled. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
 901    filters: 'str'
 902    """Filters that limit which existing containers are eligible to satisfy this
 903    container request. This attribute is not implemented yet and should be null.
 904    """
 905    container_count: 'int'
 906    """An integer that records how many times Arvados has attempted to dispatch
 907    a container to fulfill this container request.
 908    """
 909    use_existing: 'bool'
 910    """A boolean flag. If set, Arvados may choose to satisfy this container
 911    request with an eligible container that already exists. Otherwise, Arvados will
 912    satisfy this container request with a newer container, which will usually result
 913    in the container running again.
 914    """
 915    scheduling_parameters: 'Dict[str, Any]'
 916    """A hash of scheduling parameters that should be passed to the underlying
 917    dispatcher when this container is run.
 918    See the [scheduling parameters reference][] for details.
 919
 920    [scheduling parameters reference]: https://doc.arvados.org/api/methods/containers.html#scheduling_parameters
 921    """
 922    output_uuid: 'str'
 923    """The UUID of the Arvados collection that contains output for all the
 924    container(s) that were dispatched to fulfill this container request.
 925    """
 926    log_uuid: 'str'
 927    """The UUID of the Arvados collection that contains logs for all the
 928    container(s) that were dispatched to fulfill this container request.
 929    """
 930    output_name: 'str'
 931    """The name to set on the output collection of this container request."""
 932    output_ttl: 'int'
 933    """An integer in seconds. If greater than zero, when an output collection is
 934    created for this container request, its `expires_at` attribute will be set this
 935    far in the future.
 936    """
 937    output_storage_classes: 'List'
 938    """An array of strings identifying the storage class(es) that should be set
 939    on the output collection of this container request. Storage classes are configured by
 940    the cluster administrator.
 941    """
 942    output_properties: 'Dict[str, Any]'
 943    """A hash of arbitrary metadata to set on the output collection of this container request.
 944    Some keys may be reserved by Arvados or defined by a configured vocabulary.
 945    Refer to the [metadata properties reference][] for details.
 946
 947    [metadata properties reference]: https://doc.arvados.org/api/properties.html
 948    """
 949    cumulative_cost: 'float'
 950    """A float with the estimated cost of all cloud instances used to run
 951    container(s) to fulfill this container request and their subrequests.
 952    The value is `0` if cost estimation is not available on this cluster.
 953    """
 954    output_glob: 'List'
 955    """An array of strings of shell-style glob patterns that define which file(s)
 956    and subdirectory(ies) under the `output_path` directory should be recorded in
 957    the container's final output. Refer to the [glob patterns reference][] for details.
 958
 959    [glob patterns reference]: https://doc.arvados.org/api/methods/containers.html#glob_patterns
 960    """
 961    service: 'bool'
 962    """A boolean flag. If set, it informs the system that this request is for a long-running container
 963    that functions as a system service or web app, rather than a once-through batch operation.
 964    """
 965    published_ports: 'Dict[str, Any]'
 966    """A hash where keys are numeric TCP ports on the container which expose HTTP services.  Arvados
 967    will proxy HTTP requests to these ports.  Values are hashes with the following keys:
 968
 969      * `"access"` --- One of 'private' or 'public' indicating if an Arvados API token is required to access the endpoint.
 970      * `"label"` --- A human readable label describing the service, for display in Workbench.
 971      * `"initial_path"` --- The relative path that should be included when constructing the URL that will be presented to the user in Workbench.
 972    """
 973
 974
 975class ContainerRequestList(TypedDict, total=False):
 976    """A list of ContainerRequest objects.
 977
 978    This is the dictionary object returned when you call `ContainerRequests.list`.
 979    If you just want to iterate all objects that match your search criteria,
 980    consider using `arvados.util.keyset_list_all`.
 981    If you work with this raw object, the keys of the dictionary are documented
 982    below, along with their types. The `items` key maps to a list of matching
 983    `ContainerRequest` objects.
 984    """
 985    kind: 'str' = 'arvados#containerRequestList'
 986    """Object type. Always arvados#containerRequestList."""
 987    etag: 'str'
 988    """List cache version."""
 989    items: 'List[ContainerRequest]'
 990    """An array of matching ContainerRequest objects."""
 991
 992
 993class ContainerRequests:
 994    """Methods to query and manipulate Arvados container requests"""
 995
 996    def container_status(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ContainerRequest]':
 997        """Return scheduling details for a container request.
 998
 999        Required parameters:
1000
1001        * uuid: str --- The UUID of the container request to query.
1002        """
1003
1004    def create(self, *, body: "Dict[Literal['container_request'], ContainerRequest]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1005        """Create a new ContainerRequest.
1006
1007        Required parameters:
1008
1009        * body: Dict[Literal['container_request'], ContainerRequest] --- A dictionary with a single item `'container_request'`.
1010          Its value is a `ContainerRequest` dictionary defining the attributes to set. 
1011
1012        Optional parameters:
1013
1014        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1015
1016        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1017
1018        * select: Optional[List] --- An array of names of attributes to return in the response.
1019        """
1020
1021    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ContainerRequest]':
1022        """Delete an existing ContainerRequest.
1023
1024        Required parameters:
1025
1026        * uuid: str --- The UUID of the ContainerRequest to delete.
1027        """
1028
1029    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1030        """Get a ContainerRequest record by UUID.
1031
1032        Required parameters:
1033
1034        * uuid: str --- The UUID of the ContainerRequest to return. 
1035
1036        Optional parameters:
1037
1038        * include_trash: bool --- Show container request even if its owner project is trashed. Default `False`.
1039
1040        * select: Optional[List] --- An array of names of attributes to return in the response.
1041        """
1042
1043    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ContainerRequestList]':
1044        """Retrieve a ContainerRequestList.
1045
1046        This method returns a single page of `ContainerRequest` objects that match your search
1047        criteria. If you just want to iterate all objects that match your search
1048        criteria, consider using `arvados.util.keyset_list_all`.
1049
1050        Optional parameters:
1051
1052        * bypass_federation: bool --- If true, do not return results from other clusters in the
1053          federation, only the cluster that received the request.
1054          You must be an administrator to use this flag. Default `False`.
1055
1056        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1057
1058        * count: str --- A string to determine result counting behavior. Supported values are:
1059
1060          * `"exact"`: The response will include an `items_available` field that
1061            counts the number of objects that matched this search criteria,
1062            including ones not included in `items`.
1063
1064          * `"none"`: The response will not include an `items_avaliable`
1065            field. This improves performance by returning a result as soon as enough
1066            `items` have been loaded for this result.
1067
1068          Default `'exact'`.
1069
1070        * distinct: bool --- If this is true, and multiple objects have the same values
1071          for the attributes that you specify in the `select` parameter, then each unique
1072          set of values will only be returned once in the result set. Default `False`.
1073
1074        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1075          Refer to the [filters reference][] for more information about how to write filters. 
1076
1077          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1078
1079        * include_trash: bool --- Include container requests whose owner project is trashed. Default `False`.
1080
1081        * limit: int --- The maximum number of objects to return in the result.
1082          Note that the API may return fewer results than this if your request hits other
1083          limits set by the administrator. Default `100`.
1084
1085        * offset: int --- Return matching objects starting from this index.
1086          Note that result indexes may change if objects are modified in between a series
1087          of list calls. Default `0`.
1088
1089        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1090          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1091          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1092
1093        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1094
1095        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1096          The keys of this object are attribute names.
1097          Each value is either a single matching value or an array of matching values for that attribute.
1098          The `filters` parameter is more flexible and preferred.
1099        """
1100
1101    def update(self, *, body: "Dict[Literal['container_request'], ContainerRequest]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1102        """Update attributes of an existing ContainerRequest.
1103
1104        Required parameters:
1105
1106        * body: Dict[Literal['container_request'], ContainerRequest] --- A dictionary with a single item `'container_request'`.
1107          Its value is a `ContainerRequest` dictionary defining the attributes to set. 
1108
1109        * uuid: str --- The UUID of the ContainerRequest to update. 
1110
1111        Optional parameters:
1112
1113        * select: Optional[List] --- An array of names of attributes to return in the response.
1114        """
1115
1116
1117class Container(TypedDict, total=False):
1118    """Arvados container record
1119
1120    A container represents compute work that has been or should be dispatched,
1121    along with its results. A container can satisfy one or more container requests.
1122
1123    This is the dictionary object that represents a single Container in Arvados
1124    and is returned by most `Containers` methods.
1125    The keys of the dictionary are documented below, along with their types.
1126    Not every key may appear in every dictionary returned by an API call.
1127    When a method doesn't return all the data, you can use its `select` parameter
1128    to list the specific keys you need. Refer to the API documentation for details.
1129    """
1130    etag: 'str'
1131    """Object cache version."""
1132    uuid: 'str'
1133    """This container's Arvados UUID, like `zzzzz-dz642-12345abcde67890`."""
1134    owner_uuid: 'str'
1135    """The UUID of the user or group that owns this container."""
1136    created_at: 'str'
1137    """The time this container was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1138    modified_at: 'str'
1139    """The time this container was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1140    modified_by_user_uuid: 'str'
1141    """The UUID of the user that last updated this container."""
1142    state: 'str'
1143    """A string representing the container's current execution status. Possible
1144    values are:
1145
1146      * `"Queued"` --- This container has not been dispatched yet.
1147      * `"Locked"` --- A dispatcher has claimed this container in preparation to run it.
1148      * `"Running"` --- A dispatcher is running this container.
1149      * `"Cancelled"` --- Container execution has been cancelled by user request.
1150      * `"Complete"` --- A dispatcher ran this container to completion and recorded the results.
1151    """
1152    started_at: 'str'
1153    """The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1154    finished_at: 'str'
1155    """The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1156    log: 'str'
1157    """The portable data hash of the Arvados collection that contains this
1158    container's logs.
1159    """
1160    environment: 'Dict[str, Any]'
1161    """A hash of string keys and values that defines the environment variables
1162    for the dispatcher to set when it executes this container.
1163    """
1164    cwd: 'str'
1165    """A string that the defines the working directory that the dispatcher should
1166    use when it executes the command inside this container.
1167    """
1168    command: 'List'
1169    """An array of strings that defines the command that the dispatcher should
1170    execute inside this container.
1171    """
1172    output_path: 'str'
1173    """A string that defines the file or directory path where the command
1174    writes output that should be saved from this container.
1175    """
1176    mounts: 'Dict[str, Any]'
1177    """A hash where each key names a directory inside this container, and its
1178    value is an object that defines the mount source for that directory. Refer
1179    to the [mount types reference][] for details.
1180
1181    [mount types reference]: https://doc.arvados.org/api/methods/containers.html#mount_types
1182    """
1183    runtime_constraints: 'Dict[str, Any]'
1184    """A hash that identifies compute resources this container requires to run
1185    successfully. See the [runtime constraints reference][] for details.
1186
1187    [runtime constraints reference]: https://doc.arvados.org/api/methods/containers.html#runtime_constraints
1188    """
1189    output: 'str'
1190    """The portable data hash of the Arvados collection that contains this
1191    container's output file(s).
1192    """
1193    container_image: 'str'
1194    """The portable data hash of the Arvados collection that contains the image
1195    to use for this container.
1196    """
1197    progress: 'float'
1198    """A float between 0.0 and 1.0 (inclusive) that represents the container's
1199    execution progress. This attribute is not implemented yet.
1200    """
1201    priority: 'int'
1202    """An integer between 0 and 1000 (inclusive) that represents this container's
1203    scheduling priority. 0 represents a request to be cancelled. Higher
1204    values represent higher priority. Refer to the [priority reference][] for details.
1205
1206    [priority reference]: https://doc.arvados.org/api/methods/container_requests.html#priority
1207    """
1208    exit_code: 'int'
1209    """An integer that records the Unix exit code of the `command` from a
1210    finished container.
1211    """
1212    auth_uuid: 'str'
1213    """The UUID of the Arvados API client authorization token that a dispatcher
1214    should use to set up this container. This token is automatically created by
1215    Arvados and this attribute automatically assigned unless a container is
1216    created with `runtime_token`.
1217    """
1218    locked_by_uuid: 'str'
1219    """The UUID of the Arvados API client authorization token that successfully
1220    locked this container in preparation to execute it.
1221    """
1222    scheduling_parameters: 'Dict[str, Any]'
1223    """A hash of scheduling parameters that should be passed to the underlying
1224    dispatcher when this container is run.
1225    See the [scheduling parameters reference][] for details.
1226
1227    [scheduling parameters reference]: https://doc.arvados.org/api/methods/containers.html#scheduling_parameters
1228    """
1229    runtime_status: 'Dict[str, Any]'
1230    """A hash with status updates from a running container.
1231    Refer to the [runtime status reference][] for details.
1232
1233    [runtime status reference]: https://doc.arvados.org/api/methods/containers.html#runtime_status
1234    """
1235    runtime_user_uuid: 'str'
1236    """The UUID of the Arvados user associated with the API client authorization
1237    token used to run this container.
1238    """
1239    runtime_auth_scopes: 'List'
1240    """The `scopes` from the API client authorization token used to run this container."""
1241    lock_count: 'int'
1242    """The number of times this container has been locked by a dispatcher. This
1243    may be greater than 1 if a dispatcher locks a container but then execution is
1244    interrupted for any reason.
1245    """
1246    gateway_address: 'str'
1247    """A string with the address of the Arvados gateway server, in `HOST:PORT`
1248    format. This is for internal use only.
1249    """
1250    interactive_session_started: 'bool'
1251    """This flag is set true if any user starts an interactive shell inside the
1252    running container.
1253    """
1254    output_storage_classes: 'List'
1255    """An array of strings identifying the storage class(es) that should be set
1256    on the output collection of this container. Storage classes are configured by
1257    the cluster administrator.
1258    """
1259    output_properties: 'Dict[str, Any]'
1260    """A hash of arbitrary metadata to set on the output collection of this container.
1261    Some keys may be reserved by Arvados or defined by a configured vocabulary.
1262    Refer to the [metadata properties reference][] for details.
1263
1264    [metadata properties reference]: https://doc.arvados.org/api/properties.html
1265    """
1266    cost: 'float'
1267    """A float with the estimated cost of the cloud instance used to run this
1268    container. The value is `0` if cost estimation is not available on this cluster.
1269    """
1270    subrequests_cost: 'float'
1271    """A float with the estimated cost of all cloud instances used to run this
1272    container and all its subrequests. The value is `0` if cost estimation is not
1273    available on this cluster.
1274    """
1275    output_glob: 'List'
1276    """An array of strings of shell-style glob patterns that define which file(s)
1277    and subdirectory(ies) under the `output_path` directory should be recorded in
1278    the container's final output. Refer to the [glob patterns reference][] for details.
1279
1280    [glob patterns reference]: https://doc.arvados.org/api/methods/containers.html#glob_patterns
1281    """
1282    service: 'bool'
1283    """A boolean flag. If set, it informs the system that this is a long-running container
1284    that functions as a system service or web app, rather than a once-through batch operation.
1285    """
1286    published_ports: 'jsonb'
1287    """A hash where keys are numeric TCP ports on the container which expose HTTP services.  Arvados
1288    will proxy HTTP requests to these ports.  Values are hashes with the following keys:
1289
1290      * `"access"` --- One of 'private' or 'public' indicating if an Arvados API token is required to access the endpoint.
1291      * `"label"` --- A human readable label describing the service, for display in Workbench.
1292      * `"initial_path"` --- The relative path that should be included when constructing the URL that will be presented to the user in Workbench.
1293    """
1294
1295
1296class ContainerList(TypedDict, total=False):
1297    """A list of Container objects.
1298
1299    This is the dictionary object returned when you call `Containers.list`.
1300    If you just want to iterate all objects that match your search criteria,
1301    consider using `arvados.util.keyset_list_all`.
1302    If you work with this raw object, the keys of the dictionary are documented
1303    below, along with their types. The `items` key maps to a list of matching
1304    `Container` objects.
1305    """
1306    kind: 'str' = 'arvados#containerList'
1307    """Object type. Always arvados#containerList."""
1308    etag: 'str'
1309    """List cache version."""
1310    items: 'List[Container]'
1311    """An array of matching Container objects."""
1312
1313
1314class Containers:
1315    """Methods to query and manipulate Arvados containers"""
1316
1317    def auth(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1318        """Get the API client authorization token associated with this container.
1319
1320        Required parameters:
1321
1322        * uuid: str --- The UUID of the Container to query.
1323        """
1324
1325    def create(self, *, body: "Dict[Literal['container'], Container]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1326        """Create a new Container.
1327
1328        Required parameters:
1329
1330        * body: Dict[Literal['container'], Container] --- A dictionary with a single item `'container'`.
1331          Its value is a `Container` dictionary defining the attributes to set. 
1332
1333        Optional parameters:
1334
1335        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1336
1337        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1338
1339        * select: Optional[List] --- An array of names of attributes to return in the response.
1340        """
1341
1342    def current(self) -> 'ArvadosAPIRequest[Container]':
1343        """Return the container record associated with the API token authorizing this request."""
1344
1345    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1346        """Delete an existing Container.
1347
1348        Required parameters:
1349
1350        * uuid: str --- The UUID of the Container to delete.
1351        """
1352
1353    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1354        """Get a Container record by UUID.
1355
1356        Required parameters:
1357
1358        * uuid: str --- The UUID of the Container to return. 
1359
1360        Optional parameters:
1361
1362        * select: Optional[List] --- An array of names of attributes to return in the response.
1363        """
1364
1365    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ContainerList]':
1366        """Retrieve a ContainerList.
1367
1368        This method returns a single page of `Container` objects that match your search
1369        criteria. If you just want to iterate all objects that match your search
1370        criteria, consider using `arvados.util.keyset_list_all`.
1371
1372        Optional parameters:
1373
1374        * bypass_federation: bool --- If true, do not return results from other clusters in the
1375          federation, only the cluster that received the request.
1376          You must be an administrator to use this flag. Default `False`.
1377
1378        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1379
1380        * count: str --- A string to determine result counting behavior. Supported values are:
1381
1382          * `"exact"`: The response will include an `items_available` field that
1383            counts the number of objects that matched this search criteria,
1384            including ones not included in `items`.
1385
1386          * `"none"`: The response will not include an `items_avaliable`
1387            field. This improves performance by returning a result as soon as enough
1388            `items` have been loaded for this result.
1389
1390          Default `'exact'`.
1391
1392        * distinct: bool --- If this is true, and multiple objects have the same values
1393          for the attributes that you specify in the `select` parameter, then each unique
1394          set of values will only be returned once in the result set. Default `False`.
1395
1396        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1397          Refer to the [filters reference][] for more information about how to write filters. 
1398
1399          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1400
1401        * limit: int --- The maximum number of objects to return in the result.
1402          Note that the API may return fewer results than this if your request hits other
1403          limits set by the administrator. Default `100`.
1404
1405        * offset: int --- Return matching objects starting from this index.
1406          Note that result indexes may change if objects are modified in between a series
1407          of list calls. Default `0`.
1408
1409        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1410          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1411          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1412
1413        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1414
1415        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1416          The keys of this object are attribute names.
1417          Each value is either a single matching value or an array of matching values for that attribute.
1418          The `filters` parameter is more flexible and preferred.
1419        """
1420
1421    def lock(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1422        """Lock a container (for a dispatcher to begin running it).
1423
1424        Required parameters:
1425
1426        * uuid: str --- The UUID of the Container to update.
1427        """
1428
1429    def secret_mounts(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1430        """Return secret mount information for the container associated with the API token authorizing this request.
1431
1432        Required parameters:
1433
1434        * uuid: str --- The UUID of the Container to query.
1435        """
1436
1437    def unlock(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1438        """Unlock a container (for a dispatcher to stop running it).
1439
1440        Required parameters:
1441
1442        * uuid: str --- The UUID of the Container to update.
1443        """
1444
1445    def update(self, *, body: "Dict[Literal['container'], Container]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1446        """Update attributes of an existing Container.
1447
1448        Required parameters:
1449
1450        * body: Dict[Literal['container'], Container] --- A dictionary with a single item `'container'`.
1451          Its value is a `Container` dictionary defining the attributes to set. 
1452
1453        * uuid: str --- The UUID of the Container to update. 
1454
1455        Optional parameters:
1456
1457        * select: Optional[List] --- An array of names of attributes to return in the response.
1458        """
1459
1460    def update_priority(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1461        """Recalculate and return the priority of a given container.
1462
1463        Required parameters:
1464
1465        * uuid: str --- The UUID of the Container to update.
1466        """
1467
1468
1469class Credential(TypedDict, total=False):
1470    """Arvados credential.
1471
1472    This is the dictionary object that represents a single Credential in Arvados
1473    and is returned by most `Credentials` methods.
1474    The keys of the dictionary are documented below, along with their types.
1475    Not every key may appear in every dictionary returned by an API call.
1476    When a method doesn't return all the data, you can use its `select` parameter
1477    to list the specific keys you need. Refer to the API documentation for details.
1478    """
1479    etag: 'str'
1480    """Object cache version."""
1481    uuid: 'str'
1482    """This credential's Arvados UUID, like `zzzzz-oss07-12345abcde67890`."""
1483    owner_uuid: 'str'
1484    """The UUID of the user or group that owns this credential."""
1485    created_at: 'str'
1486    """The time this credential was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1487    modified_at: 'str'
1488    """The time this credential was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1489    modified_by_user_uuid: 'str'
1490    """The UUID of the user that last updated this credential."""
1491    name: 'str'
1492    """The name of this credential assigned by a user."""
1493    description: 'str'
1494    """A longer HTML description of this credential assigned by a user.
1495    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
1496    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
1497    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
1498    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
1499    """
1500    credential_class: 'str'
1501    """The type of credential being stored."""
1502    scopes: 'List'
1503    """The resources the credential applies to or should be used with."""
1504    external_id: 'str'
1505    """The non-secret external identifier associated with a credential, e.g. a username."""
1506    expires_at: 'str'
1507    """Date after which the credential_secret field is no longer valid. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1508
1509
1510class CredentialList(TypedDict, total=False):
1511    """A list of Credential objects.
1512
1513    This is the dictionary object returned when you call `Credentials.list`.
1514    If you just want to iterate all objects that match your search criteria,
1515    consider using `arvados.util.keyset_list_all`.
1516    If you work with this raw object, the keys of the dictionary are documented
1517    below, along with their types. The `items` key maps to a list of matching
1518    `Credential` objects.
1519    """
1520    kind: 'str' = 'arvados#credentialList'
1521    """Object type. Always arvados#credentialList."""
1522    etag: 'str'
1523    """List cache version."""
1524    items: 'List[Credential]'
1525    """An array of matching Credential objects."""
1526
1527
1528class Credentials:
1529    """Methods to query and manipulate Arvados credentials"""
1530
1531    def create(self, *, body: "Dict[Literal['credential'], Credential]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1532        """Create a new Credential.
1533
1534        Required parameters:
1535
1536        * body: Dict[Literal['credential'], Credential] --- A dictionary with a single item `'credential'`.
1537          Its value is a `Credential` dictionary defining the attributes to set. 
1538
1539        Optional parameters:
1540
1541        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1542
1543        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1544
1545        * select: Optional[List] --- An array of names of attributes to return in the response.
1546        """
1547
1548    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Credential]':
1549        """Delete an existing Credential.
1550
1551        Required parameters:
1552
1553        * uuid: str --- The UUID of the Credential to delete.
1554        """
1555
1556    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1557        """Get a Credential record by UUID.
1558
1559        Required parameters:
1560
1561        * uuid: str --- The UUID of the Credential to return. 
1562
1563        Optional parameters:
1564
1565        * select: Optional[List] --- An array of names of attributes to return in the response.
1566        """
1567
1568    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[CredentialList]':
1569        """Retrieve a CredentialList.
1570
1571        This method returns a single page of `Credential` objects that match your search
1572        criteria. If you just want to iterate all objects that match your search
1573        criteria, consider using `arvados.util.keyset_list_all`.
1574
1575        Optional parameters:
1576
1577        * bypass_federation: bool --- If true, do not return results from other clusters in the
1578          federation, only the cluster that received the request.
1579          You must be an administrator to use this flag. Default `False`.
1580
1581        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1582
1583        * count: str --- A string to determine result counting behavior. Supported values are:
1584
1585          * `"exact"`: The response will include an `items_available` field that
1586            counts the number of objects that matched this search criteria,
1587            including ones not included in `items`.
1588
1589          * `"none"`: The response will not include an `items_avaliable`
1590            field. This improves performance by returning a result as soon as enough
1591            `items` have been loaded for this result.
1592
1593          Default `'exact'`.
1594
1595        * distinct: bool --- If this is true, and multiple objects have the same values
1596          for the attributes that you specify in the `select` parameter, then each unique
1597          set of values will only be returned once in the result set. Default `False`.
1598
1599        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1600          Refer to the [filters reference][] for more information about how to write filters. 
1601
1602          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1603
1604        * limit: int --- The maximum number of objects to return in the result.
1605          Note that the API may return fewer results than this if your request hits other
1606          limits set by the administrator. Default `100`.
1607
1608        * offset: int --- Return matching objects starting from this index.
1609          Note that result indexes may change if objects are modified in between a series
1610          of list calls. Default `0`.
1611
1612        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1613          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1614          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1615
1616        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1617
1618        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1619          The keys of this object are attribute names.
1620          Each value is either a single matching value or an array of matching values for that attribute.
1621          The `filters` parameter is more flexible and preferred.
1622        """
1623
1624    def secret(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Credential]':
1625        """Fetch the secret part of the credential (can only be invoked by running containers).
1626
1627        Required parameters:
1628
1629        * uuid: str --- The UUID of the Credential to query.
1630        """
1631
1632    def update(self, *, body: "Dict[Literal['credential'], Credential]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1633        """Update attributes of an existing Credential.
1634
1635        Required parameters:
1636
1637        * body: Dict[Literal['credential'], Credential] --- A dictionary with a single item `'credential'`.
1638          Its value is a `Credential` dictionary defining the attributes to set. 
1639
1640        * uuid: str --- The UUID of the Credential to update. 
1641
1642        Optional parameters:
1643
1644        * select: Optional[List] --- An array of names of attributes to return in the response.
1645        """
1646
1647
1648class Group(TypedDict, total=False):
1649    """Arvados group
1650
1651    Groups provide a way to organize users or data together, depending on their
1652    `group_class`.
1653
1654    This is the dictionary object that represents a single Group in Arvados
1655    and is returned by most `Groups` methods.
1656    The keys of the dictionary are documented below, along with their types.
1657    Not every key may appear in every dictionary returned by an API call.
1658    When a method doesn't return all the data, you can use its `select` parameter
1659    to list the specific keys you need. Refer to the API documentation for details.
1660    """
1661    etag: 'str'
1662    """Object cache version."""
1663    uuid: 'str'
1664    """This group's Arvados UUID, like `zzzzz-j7d0g-12345abcde67890`."""
1665    owner_uuid: 'str'
1666    """The UUID of the user or group that owns this group."""
1667    created_at: 'str'
1668    """The time this group was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1669    modified_by_user_uuid: 'str'
1670    """The UUID of the user that last updated this group."""
1671    modified_at: 'str'
1672    """The time this group was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1673    name: 'str'
1674    """The name of this group assigned by a user."""
1675    description: 'str'
1676    """A longer HTML description of this group assigned by a user.
1677    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
1678    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
1679    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
1680    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
1681    """
1682    group_class: 'str'
1683    """A string representing which type of group this is. One of:
1684
1685      * `"filter"` --- A virtual project whose contents are selected dynamically by filters.
1686      * `"project"` --- An Arvados project that can contain collections,
1687        container records, workflows, and subprojects.
1688      * `"role"` --- A group of users that can be granted permissions in Arvados.
1689    """
1690    trash_at: 'str'
1691    """The time this group will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1692    is_trashed: 'bool'
1693    """A boolean flag to indicate whether or not this group is trashed."""
1694    delete_at: 'str'
1695    """The time this group will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1696    properties: 'Dict[str, Any]'
1697    """A hash of arbitrary metadata for this group.
1698    Some keys may be reserved by Arvados or defined by a configured vocabulary.
1699    Refer to the [metadata properties reference][] for details.
1700
1701    [metadata properties reference]: https://doc.arvados.org/api/properties.html
1702    """
1703    frozen_by_uuid: 'str'
1704    """The UUID of the user that has frozen this group, if any. Frozen projects
1705    cannot have their contents or metadata changed, even by admins.
1706    """
1707
1708
1709class GroupList(TypedDict, total=False):
1710    """A list of Group objects.
1711
1712    This is the dictionary object returned when you call `Groups.list`.
1713    If you just want to iterate all objects that match your search criteria,
1714    consider using `arvados.util.keyset_list_all`.
1715    If you work with this raw object, the keys of the dictionary are documented
1716    below, along with their types. The `items` key maps to a list of matching
1717    `Group` objects.
1718    """
1719    kind: 'str' = 'arvados#groupList'
1720    """Object type. Always arvados#groupList."""
1721    etag: 'str'
1722    """List cache version."""
1723    items: 'List[Group]'
1724    """An array of matching Group objects."""
1725
1726
1727class Groups:
1728    """Methods to query and manipulate Arvados groups"""
1729
1730    def contents(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, exclude_home_project: 'bool' = False, filters: 'Optional[List]' = None, include: 'Optional[List]' = None, include_old_versions: 'bool' = False, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, recursive: 'bool' = False, select: 'Optional[List]' = None, uuid: 'str' = '', where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[Group]':
1731        """List objects that belong to a group.
1732
1733        Optional parameters:
1734
1735        * bypass_federation: bool --- If true, do not return results from other clusters in the
1736          federation, only the cluster that received the request.
1737          You must be an administrator to use this flag. Default `False`.
1738
1739        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1740
1741        * count: str --- A string to determine result counting behavior. Supported values are:
1742
1743          * `"exact"`: The response will include an `items_available` field that
1744            counts the number of objects that matched this search criteria,
1745            including ones not included in `items`.
1746
1747          * `"none"`: The response will not include an `items_avaliable`
1748            field. This improves performance by returning a result as soon as enough
1749            `items` have been loaded for this result.
1750
1751          Default `'exact'`.
1752
1753        * distinct: bool --- If this is true, and multiple objects have the same values
1754          for the attributes that you specify in the `select` parameter, then each unique
1755          set of values will only be returned once in the result set. Default `False`.
1756
1757        * exclude_home_project: bool --- If true, exclude contents of the user's home project from the listing.
1758          Calling this method with this flag set is how clients enumerate objects shared
1759          with the current user. Default `False`.
1760
1761        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1762          Refer to the [filters reference][] for more information about how to write filters. 
1763
1764          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1765
1766        * include: Optional[List] --- An array of referenced objects to include in the `included` field of the response. Supported values in the array are:
1767
1768          * `"container_uuid"`
1769          * `"owner_uuid"`
1770          * `"collection_uuid"`
1771
1772
1773
1774        * include_old_versions: bool --- If true, include past versions of collections in the listing. Default `False`.
1775
1776        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1777
1778        * limit: int --- The maximum number of objects to return in the result.
1779          Note that the API may return fewer results than this if your request hits other
1780          limits set by the administrator. Default `100`.
1781
1782        * offset: int --- Return matching objects starting from this index.
1783          Note that result indexes may change if objects are modified in between a series
1784          of list calls. Default `0`.
1785
1786        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1787          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1788          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1789
1790        * recursive: bool --- If true, include contents from child groups recursively. Default `False`.
1791
1792        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1793
1794        * uuid: str --- If given, limit the listing to objects owned by the
1795          user or group with this UUID. Default `''`.
1796
1797        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1798          The keys of this object are attribute names.
1799          Each value is either a single matching value or an array of matching values for that attribute.
1800          The `filters` parameter is more flexible and preferred.
1801        """
1802
1803    def create(self, *, body: "Dict[Literal['group'], Group]", async_: 'bool' = False, cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1804        """Create a new Group.
1805
1806        Required parameters:
1807
1808        * body: Dict[Literal['group'], Group] --- A dictionary with a single item `'group'`.
1809          Its value is a `Group` dictionary defining the attributes to set. 
1810
1811        Optional parameters:
1812
1813        * async: bool --- If true, cluster permission will not be updated immediately, but instead at the next configured update interval. Default `False`.
1814
1815        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1816
1817        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1818
1819        * select: Optional[List] --- An array of names of attributes to return in the response.
1820        """
1821
1822    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1823        """Delete an existing Group.
1824
1825        Required parameters:
1826
1827        * uuid: str --- The UUID of the Group to delete.
1828        """
1829
1830    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1831        """Get a Group record by UUID.
1832
1833        Required parameters:
1834
1835        * uuid: str --- The UUID of the Group to return. 
1836
1837        Optional parameters:
1838
1839        * include_trash: bool --- Return group/project even if its `is_trashed` attribute is true. Default `False`.
1840
1841        * select: Optional[List] --- An array of names of attributes to return in the response.
1842        """
1843
1844    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[GroupList]':
1845        """Retrieve a GroupList.
1846
1847        This method returns a single page of `Group` objects that match your search
1848        criteria. If you just want to iterate all objects that match your search
1849        criteria, consider using `arvados.util.keyset_list_all`.
1850
1851        Optional parameters:
1852
1853        * bypass_federation: bool --- If true, do not return results from other clusters in the
1854          federation, only the cluster that received the request.
1855          You must be an administrator to use this flag. Default `False`.
1856
1857        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1858
1859        * count: str --- A string to determine result counting behavior. Supported values are:
1860
1861          * `"exact"`: The response will include an `items_available` field that
1862            counts the number of objects that matched this search criteria,
1863            including ones not included in `items`.
1864
1865          * `"none"`: The response will not include an `items_avaliable`
1866            field. This improves performance by returning a result as soon as enough
1867            `items` have been loaded for this result.
1868
1869          Default `'exact'`.
1870
1871        * distinct: bool --- If this is true, and multiple objects have the same values
1872          for the attributes that you specify in the `select` parameter, then each unique
1873          set of values will only be returned once in the result set. Default `False`.
1874
1875        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1876          Refer to the [filters reference][] for more information about how to write filters. 
1877
1878          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1879
1880        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1881
1882        * limit: int --- The maximum number of objects to return in the result.
1883          Note that the API may return fewer results than this if your request hits other
1884          limits set by the administrator. Default `100`.
1885
1886        * offset: int --- Return matching objects starting from this index.
1887          Note that result indexes may change if objects are modified in between a series
1888          of list calls. Default `0`.
1889
1890        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1891          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1892          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1893
1894        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1895
1896        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1897          The keys of this object are attribute names.
1898          Each value is either a single matching value or an array of matching values for that attribute.
1899          The `filters` parameter is more flexible and preferred.
1900        """
1901
1902    def shared(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include: 'Optional[str]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[Group]':
1903        """List groups that the current user can access via permission links.
1904
1905        Optional parameters:
1906
1907        * bypass_federation: bool --- If true, do not return results from other clusters in the
1908          federation, only the cluster that received the request.
1909          You must be an administrator to use this flag. Default `False`.
1910
1911        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1912
1913        * count: str --- A string to determine result counting behavior. Supported values are:
1914
1915          * `"exact"`: The response will include an `items_available` field that
1916            counts the number of objects that matched this search criteria,
1917            including ones not included in `items`.
1918
1919          * `"none"`: The response will not include an `items_avaliable`
1920            field. This improves performance by returning a result as soon as enough
1921            `items` have been loaded for this result.
1922
1923          Default `'exact'`.
1924
1925        * distinct: bool --- If this is true, and multiple objects have the same values
1926          for the attributes that you specify in the `select` parameter, then each unique
1927          set of values will only be returned once in the result set. Default `False`.
1928
1929        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1930          Refer to the [filters reference][] for more information about how to write filters. 
1931
1932          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1933
1934        * include: Optional[str] --- A string naming referenced objects to include in the `included` field of the response. Supported values are:
1935
1936          * `"owner_uuid"`
1937
1938
1939
1940        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1941
1942        * limit: int --- The maximum number of objects to return in the result.
1943          Note that the API may return fewer results than this if your request hits other
1944          limits set by the administrator. Default `100`.
1945
1946        * offset: int --- Return matching objects starting from this index.
1947          Note that result indexes may change if objects are modified in between a series
1948          of list calls. Default `0`.
1949
1950        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1951          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1952          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1953
1954        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1955
1956        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1957          The keys of this object are attribute names.
1958          Each value is either a single matching value or an array of matching values for that attribute.
1959          The `filters` parameter is more flexible and preferred.
1960        """
1961
1962    def trash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1963        """Trash a group.
1964
1965        Required parameters:
1966
1967        * uuid: str --- The UUID of the Group to update.
1968        """
1969
1970    def untrash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1971        """Untrash a group.
1972
1973        Required parameters:
1974
1975        * uuid: str --- The UUID of the Group to update.
1976        """
1977
1978    def update(self, *, body: "Dict[Literal['group'], Group]", uuid: 'str', async_: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1979        """Update attributes of an existing Group.
1980
1981        Required parameters:
1982
1983        * body: Dict[Literal['group'], Group] --- A dictionary with a single item `'group'`.
1984          Its value is a `Group` dictionary defining the attributes to set. 
1985
1986        * uuid: str --- The UUID of the Group to update. 
1987
1988        Optional parameters:
1989
1990        * async: bool --- If true, cluster permission will not be updated immediately, but instead at the next configured update interval. Default `False`.
1991
1992        * select: Optional[List] --- An array of names of attributes to return in the response.
1993        """
1994
1995
1996class KeepService(TypedDict, total=False):
1997    """Arvados Keep service
1998
1999    This resource stores information about a single Keep service in this Arvados
2000    cluster that clients can contact to retrieve and store data.
2001
2002    This is the dictionary object that represents a single KeepService in Arvados
2003    and is returned by most `KeepServices` methods.
2004    The keys of the dictionary are documented below, along with their types.
2005    Not every key may appear in every dictionary returned by an API call.
2006    When a method doesn't return all the data, you can use its `select` parameter
2007    to list the specific keys you need. Refer to the API documentation for details.
2008    """
2009    etag: 'str'
2010    """Object cache version."""
2011    uuid: 'str'
2012    """This Keep service's Arvados UUID, like `zzzzz-bi6l4-12345abcde67890`."""
2013    owner_uuid: 'str'
2014    """The UUID of the user or group that owns this Keep service."""
2015    modified_by_user_uuid: 'str'
2016    """The UUID of the user that last updated this Keep service."""
2017    modified_at: 'str'
2018    """The time this Keep service was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2019    service_host: 'str'
2020    """The DNS hostname of this Keep service."""
2021    service_port: 'int'
2022    """The TCP port where this Keep service listens."""
2023    service_ssl_flag: 'bool'
2024    """A boolean flag that indicates whether or not this Keep service uses TLS/SSL."""
2025    service_type: 'str'
2026    """A string that describes which type of Keep service this is. One of:
2027
2028      * `"disk"` --- A service that stores blocks on a local filesystem.
2029      * `"blob"` --- A service that stores blocks in a cloud object store.
2030      * `"proxy"` --- A keepproxy service.
2031    """
2032    created_at: 'str'
2033    """The time this Keep service was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2034    read_only: 'bool'
2035    """A boolean flag. If set, this Keep service does not accept requests to write data
2036    blocks; it only serves blocks it already has.
2037    """
2038
2039
2040class KeepServiceList(TypedDict, total=False):
2041    """A list of KeepService objects.
2042
2043    This is the dictionary object returned when you call `KeepServices.list`.
2044    If you just want to iterate all objects that match your search criteria,
2045    consider using `arvados.util.keyset_list_all`.
2046    If you work with this raw object, the keys of the dictionary are documented
2047    below, along with their types. The `items` key maps to a list of matching
2048    `KeepService` objects.
2049    """
2050    kind: 'str' = 'arvados#keepServiceList'
2051    """Object type. Always arvados#keepServiceList."""
2052    etag: 'str'
2053    """List cache version."""
2054    items: 'List[KeepService]'
2055    """An array of matching KeepService objects."""
2056
2057
2058class KeepServices:
2059    """Methods to query and manipulate Arvados keep services"""
2060
2061    def accessible(self) -> 'ArvadosAPIRequest[KeepService]':
2062        """List Keep services that the current client can access."""
2063
2064    def create(self, *, body: "Dict[Literal['keep_service'], KeepService]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2065        """Create a new KeepService.
2066
2067        Required parameters:
2068
2069        * body: Dict[Literal['keep_service'], KeepService] --- A dictionary with a single item `'keep_service'`.
2070          Its value is a `KeepService` dictionary defining the attributes to set. 
2071
2072        Optional parameters:
2073
2074        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2075
2076        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2077
2078        * select: Optional[List] --- An array of names of attributes to return in the response.
2079        """
2080
2081    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[KeepService]':
2082        """Delete an existing KeepService.
2083
2084        Required parameters:
2085
2086        * uuid: str --- The UUID of the KeepService to delete.
2087        """
2088
2089    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2090        """Get a KeepService record by UUID.
2091
2092        Required parameters:
2093
2094        * uuid: str --- The UUID of the KeepService to return. 
2095
2096        Optional parameters:
2097
2098        * select: Optional[List] --- An array of names of attributes to return in the response.
2099        """
2100
2101    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[KeepServiceList]':
2102        """Retrieve a KeepServiceList.
2103
2104        This method returns a single page of `KeepService` objects that match your search
2105        criteria. If you just want to iterate all objects that match your search
2106        criteria, consider using `arvados.util.keyset_list_all`.
2107
2108        Optional parameters:
2109
2110        * bypass_federation: bool --- If true, do not return results from other clusters in the
2111          federation, only the cluster that received the request.
2112          You must be an administrator to use this flag. Default `False`.
2113
2114        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2115
2116        * count: str --- A string to determine result counting behavior. Supported values are:
2117
2118          * `"exact"`: The response will include an `items_available` field that
2119            counts the number of objects that matched this search criteria,
2120            including ones not included in `items`.
2121
2122          * `"none"`: The response will not include an `items_avaliable`
2123            field. This improves performance by returning a result as soon as enough
2124            `items` have been loaded for this result.
2125
2126          Default `'exact'`.
2127
2128        * distinct: bool --- If this is true, and multiple objects have the same values
2129          for the attributes that you specify in the `select` parameter, then each unique
2130          set of values will only be returned once in the result set. Default `False`.
2131
2132        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2133          Refer to the [filters reference][] for more information about how to write filters. 
2134
2135          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2136
2137        * limit: int --- The maximum number of objects to return in the result.
2138          Note that the API may return fewer results than this if your request hits other
2139          limits set by the administrator. Default `100`.
2140
2141        * offset: int --- Return matching objects starting from this index.
2142          Note that result indexes may change if objects are modified in between a series
2143          of list calls. Default `0`.
2144
2145        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2146          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2147          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2148
2149        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2150
2151        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2152          The keys of this object are attribute names.
2153          Each value is either a single matching value or an array of matching values for that attribute.
2154          The `filters` parameter is more flexible and preferred.
2155        """
2156
2157    def update(self, *, body: "Dict[Literal['keep_service'], KeepService]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2158        """Update attributes of an existing KeepService.
2159
2160        Required parameters:
2161
2162        * body: Dict[Literal['keep_service'], KeepService] --- A dictionary with a single item `'keep_service'`.
2163          Its value is a `KeepService` dictionary defining the attributes to set. 
2164
2165        * uuid: str --- The UUID of the KeepService to update. 
2166
2167        Optional parameters:
2168
2169        * select: Optional[List] --- An array of names of attributes to return in the response.
2170        """
2171
2172
2173class Link(TypedDict, total=False):
2174    """Arvados object link
2175
2176    A link provides a way to define relationships between Arvados objects,
2177    depending on their `link_class`.
2178
2179    This is the dictionary object that represents a single Link in Arvados
2180    and is returned by most `Links` methods.
2181    The keys of the dictionary are documented below, along with their types.
2182    Not every key may appear in every dictionary returned by an API call.
2183    When a method doesn't return all the data, you can use its `select` parameter
2184    to list the specific keys you need. Refer to the API documentation for details.
2185    """
2186    etag: 'str'
2187    """Object cache version."""
2188    uuid: 'str'
2189    """This link's Arvados UUID, like `zzzzz-o0j2j-12345abcde67890`."""
2190    owner_uuid: 'str'
2191    """The UUID of the user or group that owns this link."""
2192    created_at: 'str'
2193    """The time this link was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2194    modified_by_user_uuid: 'str'
2195    """The UUID of the user that last updated this link."""
2196    modified_at: 'str'
2197    """The time this link was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2198    tail_uuid: 'str'
2199    """The UUID of the Arvados object that is the target of this relationship."""
2200    link_class: 'str'
2201    """A string that defines which kind of link this is. One of:
2202
2203      * `"permission"` --- This link grants a permission to the user or group
2204        referenced by `head_uuid` to the object referenced by `tail_uuid`. The
2205        access level is set by `name`.
2206      * `"star"` --- This link represents a "favorite." The user referenced
2207        by `head_uuid` wants quick access to the object referenced by `tail_uuid`.
2208      * `"tag"` --- This link represents an unstructured metadata tag. The object
2209        referenced by `tail_uuid` has the tag defined by `name`.
2210    """
2211    name: 'str'
2212    """The primary value of this link. For `"permission"` links, this is one of
2213    `"can_read"`, `"can_write"`, or `"can_manage"`.
2214    """
2215    head_uuid: 'str'
2216    """The UUID of the Arvados object that is the originator or actor in this
2217    relationship. May be null.
2218    """
2219    properties: 'Dict[str, Any]'
2220    """A hash of arbitrary metadata for this link.
2221    Some keys may be reserved by Arvados or defined by a configured vocabulary.
2222    Refer to the [metadata properties reference][] for details.
2223
2224    [metadata properties reference]: https://doc.arvados.org/api/properties.html
2225    """
2226
2227
2228class LinkList(TypedDict, total=False):
2229    """A list of Link objects.
2230
2231    This is the dictionary object returned when you call `Links.list`.
2232    If you just want to iterate all objects that match your search criteria,
2233    consider using `arvados.util.keyset_list_all`.
2234    If you work with this raw object, the keys of the dictionary are documented
2235    below, along with their types. The `items` key maps to a list of matching
2236    `Link` objects.
2237    """
2238    kind: 'str' = 'arvados#linkList'
2239    """Object type. Always arvados#linkList."""
2240    etag: 'str'
2241    """List cache version."""
2242    items: 'List[Link]'
2243    """An array of matching Link objects."""
2244
2245
2246class Links:
2247    """Methods to query and manipulate Arvados links"""
2248
2249    def create(self, *, body: "Dict[Literal['link'], Link]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Link]':
2250        """Create a new Link.
2251
2252        Required parameters:
2253
2254        * body: Dict[Literal['link'], Link] --- A dictionary with a single item `'link'`.
2255          Its value is a `Link` dictionary defining the attributes to set. 
2256
2257        Optional parameters:
2258
2259        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2260
2261        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2262
2263        * select: Optional[List] --- An array of names of attributes to return in the response.
2264        """
2265
2266    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Link]':
2267        """Delete an existing Link.
2268
2269        Required parameters:
2270
2271        * uuid: str --- The UUID of the Link to delete.
2272        """
2273
2274    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Link]':
2275        """Get a Link record by UUID.
2276
2277        Required parameters:
2278
2279        * uuid: str --- The UUID of the Link to return. 
2280
2281        Optional parameters:
2282
2283        * select: Optional[List] --- An array of names of attributes to return in the response.
2284        """
2285
2286    def get_permissions(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Link]':
2287        """List permissions granted on an Arvados object.
2288
2289        Required parameters:
2290
2291        * uuid: str --- The UUID of the Link to query.
2292        """
2293
2294    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[LinkList]':
2295        """Retrieve a LinkList.
2296
2297        This method returns a single page of `Link` objects that match your search
2298        criteria. If you just want to iterate all objects that match your search
2299        criteria, consider using `arvados.util.keyset_list_all`.
2300
2301        Optional parameters:
2302
2303        * bypass_federation: bool --- If true, do not return results from other clusters in the
2304          federation, only the cluster that received the request.
2305          You must be an administrator to use this flag. Default `False`.
2306
2307        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2308
2309        * count: str --- A string to determine result counting behavior. Supported values are:
2310
2311          * `"exact"`: The response will include an `items_available` field that
2312            counts the number of objects that matched this search criteria,
2313            including ones not included in `items`.
2314
2315          * `"none"`: The response will not include an `items_avaliable`
2316            field. This improves performance by returning a result as soon as enough
2317            `items` have been loaded for this result.
2318
2319          Default `'exact'`.
2320
2321        * distinct: bool --- If this is true, and multiple objects have the same values
2322          for the attributes that you specify in the `select` parameter, then each unique
2323          set of values will only be returned once in the result set. Default `False`.
2324
2325        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2326          Refer to the [filters reference][] for more information about how to write filters. 
2327
2328          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2329
2330        * limit: int --- The maximum number of objects to return in the result.
2331          Note that the API may return fewer results than this if your request hits other
2332          limits set by the administrator. Default `100`.
2333
2334        * offset: int --- Return matching objects starting from this index.
2335          Note that result indexes may change if objects are modified in between a series
2336          of list calls. Default `0`.
2337
2338        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2339          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2340          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2341
2342        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2343
2344        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2345          The keys of this object are attribute names.
2346          Each value is either a single matching value or an array of matching values for that attribute.
2347          The `filters` parameter is more flexible and preferred.
2348        """
2349
2350    def update(self, *, body: "Dict[Literal['link'], Link]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Link]':
2351        """Update attributes of an existing Link.
2352
2353        Required parameters:
2354
2355        * body: Dict[Literal['link'], Link] --- A dictionary with a single item `'link'`.
2356          Its value is a `Link` dictionary defining the attributes to set. 
2357
2358        * uuid: str --- The UUID of the Link to update. 
2359
2360        Optional parameters:
2361
2362        * select: Optional[List] --- An array of names of attributes to return in the response.
2363        """
2364
2365
2366class Log(TypedDict, total=False):
2367    """Arvados log record
2368
2369    This resource represents a single log record about an event in this Arvados
2370    cluster. Some individual Arvados services create log records. Users can also
2371    create custom logs.
2372
2373    This is the dictionary object that represents a single Log in Arvados
2374    and is returned by most `Logs` methods.
2375    The keys of the dictionary are documented below, along with their types.
2376    Not every key may appear in every dictionary returned by an API call.
2377    When a method doesn't return all the data, you can use its `select` parameter
2378    to list the specific keys you need. Refer to the API documentation for details.
2379    """
2380    etag: 'str'
2381    """Object cache version."""
2382    id: 'int'
2383    """The serial number of this log. You can use this in filters to query logs
2384    that were created before/after another.
2385    """
2386    uuid: 'str'
2387    """This log's Arvados UUID, like `zzzzz-57u5n-12345abcde67890`."""
2388    owner_uuid: 'str'
2389    """The UUID of the user or group that owns this log."""
2390    modified_by_user_uuid: 'str'
2391    """The UUID of the user that last updated this log."""
2392    object_uuid: 'str'
2393    """The UUID of the Arvados object that this log pertains to, such as a user
2394    or container.
2395    """
2396    event_at: 'str'
2397    """The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2398    event_type: 'str'
2399    """An arbitrary short string that classifies what type of log this is."""
2400    summary: 'str'
2401    """A text string that describes the logged event. This is the primary
2402    attribute for simple logs.
2403    """
2404    properties: 'Dict[str, Any]'
2405    """A hash of arbitrary metadata for this log.
2406    Some keys may be reserved by Arvados or defined by a configured vocabulary.
2407    Refer to the [metadata properties reference][] for details.
2408
2409    [metadata properties reference]: https://doc.arvados.org/api/properties.html
2410    """
2411    created_at: 'str'
2412    """The time this log was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2413    modified_at: 'str'
2414    """The time this log was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2415    object_owner_uuid: 'str'
2416    """The `owner_uuid` of the object referenced by `object_uuid` at the time
2417    this log was created.
2418    """
2419
2420
2421class LogList(TypedDict, total=False):
2422    """A list of Log objects.
2423
2424    This is the dictionary object returned when you call `Logs.list`.
2425    If you just want to iterate all objects that match your search criteria,
2426    consider using `arvados.util.keyset_list_all`.
2427    If you work with this raw object, the keys of the dictionary are documented
2428    below, along with their types. The `items` key maps to a list of matching
2429    `Log` objects.
2430    """
2431    kind: 'str' = 'arvados#logList'
2432    """Object type. Always arvados#logList."""
2433    etag: 'str'
2434    """List cache version."""
2435    items: 'List[Log]'
2436    """An array of matching Log objects."""
2437
2438
2439class Logs:
2440    """Methods to query and manipulate Arvados logs"""
2441
2442    def create(self, *, body: "Dict[Literal['log'], Log]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2443        """Create a new Log.
2444
2445        Required parameters:
2446
2447        * body: Dict[Literal['log'], Log] --- A dictionary with a single item `'log'`.
2448          Its value is a `Log` dictionary defining the attributes to set. 
2449
2450        Optional parameters:
2451
2452        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2453
2454        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2455
2456        * select: Optional[List] --- An array of names of attributes to return in the response.
2457        """
2458
2459    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Log]':
2460        """Delete an existing Log.
2461
2462        Required parameters:
2463
2464        * uuid: str --- The UUID of the Log to delete.
2465        """
2466
2467    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2468        """Get a Log record by UUID.
2469
2470        Required parameters:
2471
2472        * uuid: str --- The UUID of the Log to return. 
2473
2474        Optional parameters:
2475
2476        * select: Optional[List] --- An array of names of attributes to return in the response.
2477        """
2478
2479    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[LogList]':
2480        """Retrieve a LogList.
2481
2482        This method returns a single page of `Log` objects that match your search
2483        criteria. If you just want to iterate all objects that match your search
2484        criteria, consider using `arvados.util.keyset_list_all`.
2485
2486        Optional parameters:
2487
2488        * bypass_federation: bool --- If true, do not return results from other clusters in the
2489          federation, only the cluster that received the request.
2490          You must be an administrator to use this flag. Default `False`.
2491
2492        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2493
2494        * count: str --- A string to determine result counting behavior. Supported values are:
2495
2496          * `"exact"`: The response will include an `items_available` field that
2497            counts the number of objects that matched this search criteria,
2498            including ones not included in `items`.
2499
2500          * `"none"`: The response will not include an `items_avaliable`
2501            field. This improves performance by returning a result as soon as enough
2502            `items` have been loaded for this result.
2503
2504          Default `'exact'`.
2505
2506        * distinct: bool --- If this is true, and multiple objects have the same values
2507          for the attributes that you specify in the `select` parameter, then each unique
2508          set of values will only be returned once in the result set. Default `False`.
2509
2510        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2511          Refer to the [filters reference][] for more information about how to write filters. 
2512
2513          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2514
2515        * limit: int --- The maximum number of objects to return in the result.
2516          Note that the API may return fewer results than this if your request hits other
2517          limits set by the administrator. Default `100`.
2518
2519        * offset: int --- Return matching objects starting from this index.
2520          Note that result indexes may change if objects are modified in between a series
2521          of list calls. Default `0`.
2522
2523        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2524          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2525          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2526
2527        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2528
2529        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2530          The keys of this object are attribute names.
2531          Each value is either a single matching value or an array of matching values for that attribute.
2532          The `filters` parameter is more flexible and preferred.
2533        """
2534
2535    def update(self, *, body: "Dict[Literal['log'], Log]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2536        """Update attributes of an existing Log.
2537
2538        Required parameters:
2539
2540        * body: Dict[Literal['log'], Log] --- A dictionary with a single item `'log'`.
2541          Its value is a `Log` dictionary defining the attributes to set. 
2542
2543        * uuid: str --- The UUID of the Log to update. 
2544
2545        Optional parameters:
2546
2547        * select: Optional[List] --- An array of names of attributes to return in the response.
2548        """
2549
2550
2551class Sys:
2552    """Methods to query and manipulate Arvados sys"""
2553
2554    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
2555        """Run scheduled data trash and sweep operations across this cluster's Keep services."""
2556
2557
2558class UserAgreement(TypedDict, total=False):
2559    """Arvados user agreement
2560
2561    A user agreement is a collection with terms that users must agree to before
2562    they can use this Arvados cluster.
2563
2564    This is the dictionary object that represents a single UserAgreement in Arvados
2565    and is returned by most `UserAgreements` methods.
2566    The keys of the dictionary are documented below, along with their types.
2567    Not every key may appear in every dictionary returned by an API call.
2568    When a method doesn't return all the data, you can use its `select` parameter
2569    to list the specific keys you need. Refer to the API documentation for details.
2570    """
2571    etag: 'str'
2572    """Object cache version."""
2573    owner_uuid: 'str'
2574    """The UUID of the user or group that owns this user agreement."""
2575    created_at: 'str'
2576    """The time this user agreement was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2577    modified_by_user_uuid: 'str'
2578    """The UUID of the user that last updated this user agreement."""
2579    modified_at: 'str'
2580    """The time this user agreement was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2581    portable_data_hash: 'str'
2582    """The portable data hash of this user agreement. This string provides a unique
2583    and stable reference to these contents.
2584    """
2585    replication_desired: 'int'
2586    """The number of copies that should be made for data in this user agreement."""
2587    replication_confirmed_at: 'str'
2588    """The last time the cluster confirmed that it met `replication_confirmed`
2589    for this user agreement. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`.
2590    """
2591    replication_confirmed: 'int'
2592    """The number of copies of data in this user agreement that the cluster has confirmed
2593    exist in storage.
2594    """
2595    uuid: 'str'
2596    """This user agreement's Arvados UUID, like `zzzzz-gv0sa-12345abcde67890`."""
2597    manifest_text: 'str'
2598    """The manifest text that describes how files are constructed from data blocks
2599    in this user agreement. Refer to the [manifest format][] reference for details.
2600
2601    [manifest format]: https://doc.arvados.org/architecture/manifest-format.html
2602    """
2603    name: 'str'
2604    """The name of this user agreement assigned by a user."""
2605    description: 'str'
2606    """A longer HTML description of this user agreement assigned by a user.
2607    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
2608    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
2609    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
2610    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
2611    """
2612    properties: 'Dict[str, Any]'
2613    """A hash of arbitrary metadata for this user agreement.
2614    Some keys may be reserved by Arvados or defined by a configured vocabulary.
2615    Refer to the [metadata properties reference][] for details.
2616
2617    [metadata properties reference]: https://doc.arvados.org/api/properties.html
2618    """
2619    delete_at: 'str'
2620    """The time this user agreement will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2621    trash_at: 'str'
2622    """The time this user agreement will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2623    is_trashed: 'bool'
2624    """A boolean flag to indicate whether or not this user agreement is trashed."""
2625    storage_classes_desired: 'List'
2626    """An array of strings identifying the storage class(es) that should be used
2627    for data in this user agreement. Storage classes are configured by the cluster administrator.
2628    """
2629    storage_classes_confirmed: 'List'
2630    """An array of strings identifying the storage class(es) the cluster has
2631    confirmed have a copy of this user agreement's data.
2632    """
2633    storage_classes_confirmed_at: 'str'
2634    """The last time the cluster confirmed that data was stored on the storage
2635    class(es) in `storage_classes_confirmed`. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`.
2636    """
2637    current_version_uuid: 'str'
2638    """The UUID of the current version of this user agreement."""
2639    version: 'int'
2640    """An integer that counts which version of a user agreement this record
2641    represents. Refer to [collection versioning][] for details. This attribute is
2642    read-only.
2643
2644    [collection versioning]: https://doc.arvados.org/user/topics/collection-versioning.html
2645    """
2646    preserve_version: 'bool'
2647    """A boolean flag to indicate whether this specific version of this user agreement
2648    should be persisted in cluster storage.
2649    """
2650    file_count: 'int'
2651    """The number of files represented in this user agreement's `manifest_text`.
2652    This attribute is read-only.
2653    """
2654    file_size_total: 'int'
2655    """The total size in bytes of files represented in this user agreement's `manifest_text`.
2656    This attribute is read-only.
2657    """
2658
2659
2660class UserAgreementList(TypedDict, total=False):
2661    """A list of UserAgreement objects.
2662
2663    This is the dictionary object returned when you call `UserAgreements.list`.
2664    If you just want to iterate all objects that match your search criteria,
2665    consider using `arvados.util.keyset_list_all`.
2666    If you work with this raw object, the keys of the dictionary are documented
2667    below, along with their types. The `items` key maps to a list of matching
2668    `UserAgreement` objects.
2669    """
2670    kind: 'str' = 'arvados#userAgreementList'
2671    """Object type. Always arvados#userAgreementList."""
2672    etag: 'str'
2673    """List cache version."""
2674    items: 'List[UserAgreement]'
2675    """An array of matching UserAgreement objects."""
2676
2677
2678class UserAgreements:
2679    """Methods to query and manipulate Arvados user agreements"""
2680
2681    def create(self, *, body: "Dict[Literal['user_agreement'], UserAgreement]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2682        """Create a new UserAgreement.
2683
2684        Required parameters:
2685
2686        * body: Dict[Literal['user_agreement'], UserAgreement] --- A dictionary with a single item `'user_agreement'`.
2687          Its value is a `UserAgreement` dictionary defining the attributes to set. 
2688
2689        Optional parameters:
2690
2691        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2692
2693        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2694
2695        * select: Optional[List] --- An array of names of attributes to return in the response.
2696        """
2697
2698    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[UserAgreement]':
2699        """Delete an existing UserAgreement.
2700
2701        Required parameters:
2702
2703        * uuid: str --- The UUID of the UserAgreement to delete.
2704        """
2705
2706    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2707        """Get a UserAgreement record by UUID.
2708
2709        Required parameters:
2710
2711        * uuid: str --- The UUID of the UserAgreement to return. 
2712
2713        Optional parameters:
2714
2715        * select: Optional[List] --- An array of names of attributes to return in the response.
2716        """
2717
2718    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[UserAgreementList]':
2719        """Retrieve a UserAgreementList.
2720
2721        This method returns a single page of `UserAgreement` objects that match your search
2722        criteria. If you just want to iterate all objects that match your search
2723        criteria, consider using `arvados.util.keyset_list_all`.
2724
2725        Optional parameters:
2726
2727        * bypass_federation: bool --- If true, do not return results from other clusters in the
2728          federation, only the cluster that received the request.
2729          You must be an administrator to use this flag. Default `False`.
2730
2731        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2732
2733        * count: str --- A string to determine result counting behavior. Supported values are:
2734
2735          * `"exact"`: The response will include an `items_available` field that
2736            counts the number of objects that matched this search criteria,
2737            including ones not included in `items`.
2738
2739          * `"none"`: The response will not include an `items_avaliable`
2740            field. This improves performance by returning a result as soon as enough
2741            `items` have been loaded for this result.
2742
2743          Default `'exact'`.
2744
2745        * distinct: bool --- If this is true, and multiple objects have the same values
2746          for the attributes that you specify in the `select` parameter, then each unique
2747          set of values will only be returned once in the result set. Default `False`.
2748
2749        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2750          Refer to the [filters reference][] for more information about how to write filters. 
2751
2752          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2753
2754        * limit: int --- The maximum number of objects to return in the result.
2755          Note that the API may return fewer results than this if your request hits other
2756          limits set by the administrator. Default `100`.
2757
2758        * offset: int --- Return matching objects starting from this index.
2759          Note that result indexes may change if objects are modified in between a series
2760          of list calls. Default `0`.
2761
2762        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2763          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2764          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2765
2766        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2767
2768        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2769          The keys of this object are attribute names.
2770          Each value is either a single matching value or an array of matching values for that attribute.
2771          The `filters` parameter is more flexible and preferred.
2772        """
2773
2774    def sign(self) -> 'ArvadosAPIRequest[UserAgreement]':
2775        """Create a signature link from the current user for a given user agreement."""
2776
2777    def signatures(self) -> 'ArvadosAPIRequest[UserAgreement]':
2778        """List all user agreement signature links from a user."""
2779
2780    def update(self, *, body: "Dict[Literal['user_agreement'], UserAgreement]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2781        """Update attributes of an existing UserAgreement.
2782
2783        Required parameters:
2784
2785        * body: Dict[Literal['user_agreement'], UserAgreement] --- A dictionary with a single item `'user_agreement'`.
2786          Its value is a `UserAgreement` dictionary defining the attributes to set. 
2787
2788        * uuid: str --- The UUID of the UserAgreement to update. 
2789
2790        Optional parameters:
2791
2792        * select: Optional[List] --- An array of names of attributes to return in the response.
2793        """
2794
2795
2796class User(TypedDict, total=False):
2797    """Arvados user
2798
2799    A user represents a single individual or role who may be authorized to access
2800    this Arvados cluster.
2801
2802    This is the dictionary object that represents a single User in Arvados
2803    and is returned by most `Users` methods.
2804    The keys of the dictionary are documented below, along with their types.
2805    Not every key may appear in every dictionary returned by an API call.
2806    When a method doesn't return all the data, you can use its `select` parameter
2807    to list the specific keys you need. Refer to the API documentation for details.
2808    """
2809    etag: 'str'
2810    """Object cache version."""
2811    uuid: 'str'
2812    """This user's Arvados UUID, like `zzzzz-tpzed-12345abcde67890`."""
2813    owner_uuid: 'str'
2814    """The UUID of the user or group that owns this user."""
2815    created_at: 'str'
2816    """The time this user was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2817    modified_by_user_uuid: 'str'
2818    """The UUID of the user that last updated this user."""
2819    modified_at: 'str'
2820    """The time this user was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2821    email: 'str'
2822    """This user's email address."""
2823    first_name: 'str'
2824    """This user's first name."""
2825    last_name: 'str'
2826    """This user's last name."""
2827    identity_url: 'str'
2828    """A URL that represents this user with the cluster's identity provider."""
2829    is_admin: 'bool'
2830    """A boolean flag. If set, this user is an administrator of the Arvados
2831    cluster, and automatically passes most permissions checks.
2832    """
2833    prefs: 'Dict[str, Any]'
2834    """A hash that stores cluster-wide user preferences."""
2835    is_active: 'bool'
2836    """A boolean flag. If unset, this user is not permitted to make any Arvados
2837    API requests.
2838    """
2839    username: 'str'
2840    """This user's Unix username on virtual machines."""
2841
2842
2843class UserList(TypedDict, total=False):
2844    """A list of User objects.
2845
2846    This is the dictionary object returned when you call `Users.list`.
2847    If you just want to iterate all objects that match your search criteria,
2848    consider using `arvados.util.keyset_list_all`.
2849    If you work with this raw object, the keys of the dictionary are documented
2850    below, along with their types. The `items` key maps to a list of matching
2851    `User` objects.
2852    """
2853    kind: 'str' = 'arvados#userList'
2854    """Object type. Always arvados#userList."""
2855    etag: 'str'
2856    """List cache version."""
2857    items: 'List[User]'
2858    """An array of matching User objects."""
2859
2860
2861class Users:
2862    """Methods to query and manipulate Arvados users"""
2863
2864    def activate(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
2865        """Set the `is_active` flag on a user record.
2866
2867        Required parameters:
2868
2869        * uuid: str --- The UUID of the User to update.
2870        """
2871
2872    def create(self, *, body: "Dict[Literal['user'], User]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
2873        """Create a new User.
2874
2875        Required parameters:
2876
2877        * body: Dict[Literal['user'], User] --- A dictionary with a single item `'user'`.
2878          Its value is a `User` dictionary defining the attributes to set. 
2879
2880        Optional parameters:
2881
2882        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2883
2884        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2885
2886        * select: Optional[List] --- An array of names of attributes to return in the response.
2887        """
2888
2889    def current(self) -> 'ArvadosAPIRequest[User]':
2890        """Return the user record associated with the API token authorizing this request."""
2891
2892    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
2893        """Delete an existing User.
2894
2895        Required parameters:
2896
2897        * uuid: str --- The UUID of the User to delete.
2898        """
2899
2900    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
2901        """Get a User record by UUID.
2902
2903        Required parameters:
2904
2905        * uuid: str --- The UUID of the User to return. 
2906
2907        Optional parameters:
2908
2909        * select: Optional[List] --- An array of names of attributes to return in the response.
2910        """
2911
2912    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[UserList]':
2913        """Retrieve a UserList.
2914
2915        This method returns a single page of `User` objects that match your search
2916        criteria. If you just want to iterate all objects that match your search
2917        criteria, consider using `arvados.util.keyset_list_all`.
2918
2919        Optional parameters:
2920
2921        * bypass_federation: bool --- If true, do not return results from other clusters in the
2922          federation, only the cluster that received the request.
2923          You must be an administrator to use this flag. Default `False`.
2924
2925        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2926
2927        * count: str --- A string to determine result counting behavior. Supported values are:
2928
2929          * `"exact"`: The response will include an `items_available` field that
2930            counts the number of objects that matched this search criteria,
2931            including ones not included in `items`.
2932
2933          * `"none"`: The response will not include an `items_avaliable`
2934            field. This improves performance by returning a result as soon as enough
2935            `items` have been loaded for this result.
2936
2937          Default `'exact'`.
2938
2939        * distinct: bool --- If this is true, and multiple objects have the same values
2940          for the attributes that you specify in the `select` parameter, then each unique
2941          set of values will only be returned once in the result set. Default `False`.
2942
2943        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2944          Refer to the [filters reference][] for more information about how to write filters. 
2945
2946          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2947
2948        * limit: int --- The maximum number of objects to return in the result.
2949          Note that the API may return fewer results than this if your request hits other
2950          limits set by the administrator. Default `100`.
2951
2952        * offset: int --- Return matching objects starting from this index.
2953          Note that result indexes may change if objects are modified in between a series
2954          of list calls. Default `0`.
2955
2956        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2957          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2958          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2959
2960        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2961
2962        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2963          The keys of this object are attribute names.
2964          Each value is either a single matching value or an array of matching values for that attribute.
2965          The `filters` parameter is more flexible and preferred.
2966        """
2967
2968    def merge(self, *, new_owner_uuid: 'str', new_user_token: 'Optional[str]' = None, new_user_uuid: 'Optional[str]' = None, old_user_uuid: 'Optional[str]' = None, redirect_to_new_user: 'bool' = False) -> 'ArvadosAPIRequest[User]':
2969        """Transfer ownership of one user's data to another.
2970
2971        Required parameters:
2972
2973        * new_owner_uuid: str --- UUID of the user or group that will take ownership of data owned by the old user. 
2974
2975        Optional parameters:
2976
2977        * new_user_token: Optional[str] --- Valid API token for the user receiving ownership. If you use this option, it takes ownership of data owned by the user making the request. 
2978
2979        * new_user_uuid: Optional[str] --- UUID of the user receiving ownership. You must be an admin to use this option. 
2980
2981        * old_user_uuid: Optional[str] --- UUID of the user whose ownership is being transferred to `new_owner_uuid`. You must be an admin to use this option. 
2982
2983        * redirect_to_new_user: bool --- If true, authorization attempts for the old user will be redirected to the new user. Default `False`.
2984        """
2985
2986    def setup(self, *, repo_name: 'Optional[str]' = None, send_notification_email: 'bool' = False, user: 'Optional[Dict[str, Any]]' = None, uuid: 'Optional[str]' = None, vm_uuid: 'Optional[str]' = None) -> 'ArvadosAPIRequest[User]':
2987        """Convenience method to "fully" set up a user record with a virtual machine login and notification email.
2988
2989        Optional parameters:
2990
2991        * repo_name: Optional[str] --- This parameter is obsolete and ignored. 
2992
2993        * send_notification_email: bool --- If true, send an email to the user notifying them they can now access this Arvados cluster. Default `False`.
2994
2995        * user: Optional[Dict[str, Any]] --- Attributes of a new user record to set up. 
2996
2997        * uuid: Optional[str] --- UUID of an existing user record to set up. 
2998
2999        * vm_uuid: Optional[str] --- If given, setup creates a login link to allow this user to access the Arvados virtual machine with this UUID.
3000        """
3001
3002    def system(self) -> 'ArvadosAPIRequest[User]':
3003        """Return this cluster's system ("root") user record."""
3004
3005    def unsetup(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
3006        """Unset a user's active flag and delete associated records.
3007
3008        Required parameters:
3009
3010        * uuid: str --- The UUID of the User to update.
3011        """
3012
3013    def update(self, *, body: "Dict[Literal['user'], User]", uuid: 'str', bypass_federation: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
3014        """Update attributes of an existing User.
3015
3016        Required parameters:
3017
3018        * body: Dict[Literal['user'], User] --- A dictionary with a single item `'user'`.
3019          Its value is a `User` dictionary defining the attributes to set. 
3020
3021        * uuid: str --- The UUID of the User to update. 
3022
3023        Optional parameters:
3024
3025        * bypass_federation: bool --- If true, do not try to update the user on any other clusters in the federation,
3026          only the cluster that received the request.
3027          You must be an administrator to use this flag. Default `False`.
3028
3029        * select: Optional[List] --- An array of names of attributes to return in the response.
3030        """
3031
3032
3033class VirtualMachine(TypedDict, total=False):
3034    """Arvados virtual machine ("shell node")
3035
3036    This resource stores information about a virtual machine or "shell node"
3037    hosted on this Arvados cluster where users can log in and use preconfigured
3038    Arvados client tools.
3039
3040    This is the dictionary object that represents a single VirtualMachine in Arvados
3041    and is returned by most `VirtualMachines` methods.
3042    The keys of the dictionary are documented below, along with their types.
3043    Not every key may appear in every dictionary returned by an API call.
3044    When a method doesn't return all the data, you can use its `select` parameter
3045    to list the specific keys you need. Refer to the API documentation for details.
3046    """
3047    etag: 'str'
3048    """Object cache version."""
3049    uuid: 'str'
3050    """This virtual machine's Arvados UUID, like `zzzzz-2x53u-12345abcde67890`."""
3051    owner_uuid: 'str'
3052    """The UUID of the user or group that owns this virtual machine."""
3053    modified_by_user_uuid: 'str'
3054    """The UUID of the user that last updated this virtual machine."""
3055    modified_at: 'str'
3056    """The time this virtual machine was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
3057    hostname: 'str'
3058    """The DNS hostname where users should access this virtual machine."""
3059    created_at: 'str'
3060    """The time this virtual machine was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
3061
3062
3063class VirtualMachineList(TypedDict, total=False):
3064    """A list of VirtualMachine objects.
3065
3066    This is the dictionary object returned when you call `VirtualMachines.list`.
3067    If you just want to iterate all objects that match your search criteria,
3068    consider using `arvados.util.keyset_list_all`.
3069    If you work with this raw object, the keys of the dictionary are documented
3070    below, along with their types. The `items` key maps to a list of matching
3071    `VirtualMachine` objects.
3072    """
3073    kind: 'str' = 'arvados#virtualMachineList'
3074    """Object type. Always arvados#virtualMachineList."""
3075    etag: 'str'
3076    """List cache version."""
3077    items: 'List[VirtualMachine]'
3078    """An array of matching VirtualMachine objects."""
3079
3080
3081class VirtualMachines:
3082    """Methods to query and manipulate Arvados virtual machines"""
3083
3084    def create(self, *, body: "Dict[Literal['virtual_machine'], VirtualMachine]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3085        """Create a new VirtualMachine.
3086
3087        Required parameters:
3088
3089        * body: Dict[Literal['virtual_machine'], VirtualMachine] --- A dictionary with a single item `'virtual_machine'`.
3090          Its value is a `VirtualMachine` dictionary defining the attributes to set. 
3091
3092        Optional parameters:
3093
3094        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
3095
3096        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
3097
3098        * select: Optional[List] --- An array of names of attributes to return in the response.
3099        """
3100
3101    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[VirtualMachine]':
3102        """Delete an existing VirtualMachine.
3103
3104        Required parameters:
3105
3106        * uuid: str --- The UUID of the VirtualMachine to delete.
3107        """
3108
3109    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3110        """Get a VirtualMachine record by UUID.
3111
3112        Required parameters:
3113
3114        * uuid: str --- The UUID of the VirtualMachine to return. 
3115
3116        Optional parameters:
3117
3118        * select: Optional[List] --- An array of names of attributes to return in the response.
3119        """
3120
3121    def get_all_logins(self) -> 'ArvadosAPIRequest[VirtualMachine]':
3122        """List login permission links for all virtual machines."""
3123
3124    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[VirtualMachineList]':
3125        """Retrieve a VirtualMachineList.
3126
3127        This method returns a single page of `VirtualMachine` objects that match your search
3128        criteria. If you just want to iterate all objects that match your search
3129        criteria, consider using `arvados.util.keyset_list_all`.
3130
3131        Optional parameters:
3132
3133        * bypass_federation: bool --- If true, do not return results from other clusters in the
3134          federation, only the cluster that received the request.
3135          You must be an administrator to use this flag. Default `False`.
3136
3137        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
3138
3139        * count: str --- A string to determine result counting behavior. Supported values are:
3140
3141          * `"exact"`: The response will include an `items_available` field that
3142            counts the number of objects that matched this search criteria,
3143            including ones not included in `items`.
3144
3145          * `"none"`: The response will not include an `items_avaliable`
3146            field. This improves performance by returning a result as soon as enough
3147            `items` have been loaded for this result.
3148
3149          Default `'exact'`.
3150
3151        * distinct: bool --- If this is true, and multiple objects have the same values
3152          for the attributes that you specify in the `select` parameter, then each unique
3153          set of values will only be returned once in the result set. Default `False`.
3154
3155        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
3156          Refer to the [filters reference][] for more information about how to write filters. 
3157
3158          [filters reference]: https://doc.arvados.org/api/methods.html#filters
3159
3160        * limit: int --- The maximum number of objects to return in the result.
3161          Note that the API may return fewer results than this if your request hits other
3162          limits set by the administrator. Default `100`.
3163
3164        * offset: int --- Return matching objects starting from this index.
3165          Note that result indexes may change if objects are modified in between a series
3166          of list calls. Default `0`.
3167
3168        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
3169          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
3170          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
3171
3172        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
3173
3174        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
3175          The keys of this object are attribute names.
3176          Each value is either a single matching value or an array of matching values for that attribute.
3177          The `filters` parameter is more flexible and preferred.
3178        """
3179
3180    def logins(self, *, uuid: 'str') -> 'ArvadosAPIRequest[VirtualMachine]':
3181        """List login permission links for a given virtual machine.
3182
3183        Required parameters:
3184
3185        * uuid: str --- The UUID of the VirtualMachine to query.
3186        """
3187
3188    def update(self, *, body: "Dict[Literal['virtual_machine'], VirtualMachine]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3189        """Update attributes of an existing VirtualMachine.
3190
3191        Required parameters:
3192
3193        * body: Dict[Literal['virtual_machine'], VirtualMachine] --- A dictionary with a single item `'virtual_machine'`.
3194          Its value is a `VirtualMachine` dictionary defining the attributes to set. 
3195
3196        * uuid: str --- The UUID of the VirtualMachine to update. 
3197
3198        Optional parameters:
3199
3200        * select: Optional[List] --- An array of names of attributes to return in the response.
3201        """
3202
3203
3204class Vocabularies:
3205    """Methods to query and manipulate Arvados vocabularies"""
3206
3207    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
3208        """Get this cluster's configured vocabulary definition.
3209
3210        Refer to [metadata vocabulary documentation][] for details.
3211
3212        [metadata vocabulary documentation]: https://doc.aravdos.org/admin/metadata-vocabulary.html
3213        """
3214
3215
3216class Workflow(TypedDict, total=False):
3217    """Arvados workflow
3218
3219    A workflow contains workflow definition source code that Arvados can execute
3220    along with associated metadata for users.
3221
3222    This is the dictionary object that represents a single Workflow in Arvados
3223    and is returned by most `Workflows` methods.
3224    The keys of the dictionary are documented below, along with their types.
3225    Not every key may appear in every dictionary returned by an API call.
3226    When a method doesn't return all the data, you can use its `select` parameter
3227    to list the specific keys you need. Refer to the API documentation for details.
3228    """
3229    etag: 'str'
3230    """Object cache version."""
3231    uuid: 'str'
3232    """This workflow's Arvados UUID, like `zzzzz-7fd4e-12345abcde67890`."""
3233    owner_uuid: 'str'
3234    """The UUID of the user or group that owns this workflow."""
3235    created_at: 'str'
3236    """The time this workflow was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
3237    modified_at: 'str'
3238    """The time this workflow was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
3239    modified_by_user_uuid: 'str'
3240    """The UUID of the user that last updated this workflow."""
3241    name: 'str'
3242    """The name of this workflow assigned by a user."""
3243    description: 'str'
3244    """A longer HTML description of this workflow assigned by a user.
3245    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
3246    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
3247    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
3248    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
3249    """
3250    definition: 'str'
3251    """A string with the CWL source of this workflow."""
3252    collection_uuid: 'str'
3253    """The collection this workflow is linked to, containing the definition of the workflow."""
3254
3255
3256class WorkflowList(TypedDict, total=False):
3257    """A list of Workflow objects.
3258
3259    This is the dictionary object returned when you call `Workflows.list`.
3260    If you just want to iterate all objects that match your search criteria,
3261    consider using `arvados.util.keyset_list_all`.
3262    If you work with this raw object, the keys of the dictionary are documented
3263    below, along with their types. The `items` key maps to a list of matching
3264    `Workflow` objects.
3265    """
3266    kind: 'str' = 'arvados#workflowList'
3267    """Object type. Always arvados#workflowList."""
3268    etag: 'str'
3269    """List cache version."""
3270    items: 'List[Workflow]'
3271    """An array of matching Workflow objects."""
3272
3273
3274class Workflows:
3275    """Methods to query and manipulate Arvados workflows"""
3276
3277    def create(self, *, body: "Dict[Literal['workflow'], Workflow]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3278        """Create a new Workflow.
3279
3280        Required parameters:
3281
3282        * body: Dict[Literal['workflow'], Workflow] --- A dictionary with a single item `'workflow'`.
3283          Its value is a `Workflow` dictionary defining the attributes to set. 
3284
3285        Optional parameters:
3286
3287        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
3288
3289        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
3290
3291        * select: Optional[List] --- An array of names of attributes to return in the response.
3292        """
3293
3294    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Workflow]':
3295        """Delete an existing Workflow.
3296
3297        Required parameters:
3298
3299        * uuid: str --- The UUID of the Workflow to delete.
3300        """
3301
3302    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3303        """Get a Workflow record by UUID.
3304
3305        Required parameters:
3306
3307        * uuid: str --- The UUID of the Workflow to return. 
3308
3309        Optional parameters:
3310
3311        * select: Optional[List] --- An array of names of attributes to return in the response.
3312        """
3313
3314    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[WorkflowList]':
3315        """Retrieve a WorkflowList.
3316
3317        This method returns a single page of `Workflow` objects that match your search
3318        criteria. If you just want to iterate all objects that match your search
3319        criteria, consider using `arvados.util.keyset_list_all`.
3320
3321        Optional parameters:
3322
3323        * bypass_federation: bool --- If true, do not return results from other clusters in the
3324          federation, only the cluster that received the request.
3325          You must be an administrator to use this flag. Default `False`.
3326
3327        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
3328
3329        * count: str --- A string to determine result counting behavior. Supported values are:
3330
3331          * `"exact"`: The response will include an `items_available` field that
3332            counts the number of objects that matched this search criteria,
3333            including ones not included in `items`.
3334
3335          * `"none"`: The response will not include an `items_avaliable`
3336            field. This improves performance by returning a result as soon as enough
3337            `items` have been loaded for this result.
3338
3339          Default `'exact'`.
3340
3341        * distinct: bool --- If this is true, and multiple objects have the same values
3342          for the attributes that you specify in the `select` parameter, then each unique
3343          set of values will only be returned once in the result set. Default `False`.
3344
3345        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
3346          Refer to the [filters reference][] for more information about how to write filters. 
3347
3348          [filters reference]: https://doc.arvados.org/api/methods.html#filters
3349
3350        * limit: int --- The maximum number of objects to return in the result.
3351          Note that the API may return fewer results than this if your request hits other
3352          limits set by the administrator. Default `100`.
3353
3354        * offset: int --- Return matching objects starting from this index.
3355          Note that result indexes may change if objects are modified in between a series
3356          of list calls. Default `0`.
3357
3358        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
3359          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
3360          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
3361
3362        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
3363
3364        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
3365          The keys of this object are attribute names.
3366          Each value is either a single matching value or an array of matching values for that attribute.
3367          The `filters` parameter is more flexible and preferred.
3368        """
3369
3370    def update(self, *, body: "Dict[Literal['workflow'], Workflow]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3371        """Update attributes of an existing Workflow.
3372
3373        Required parameters:
3374
3375        * body: Dict[Literal['workflow'], Workflow] --- A dictionary with a single item `'workflow'`.
3376          Its value is a `Workflow` dictionary defining the attributes to set. 
3377
3378        * uuid: str --- The UUID of the Workflow to update. 
3379
3380        Optional parameters:
3381
3382        * select: Optional[List] --- An array of names of attributes to return in the response.
3383        """
3384
3385
3386class ArvadosAPIClient(googleapiclient.discovery.Resource):
3387
3388    def api_client_authorizations(self) -> 'ApiClientAuthorizations':
3389        """Return an instance of `ApiClientAuthorizations` to call methods via this client"""
3390
3391    def authorized_keys(self) -> 'AuthorizedKeys':
3392        """Return an instance of `AuthorizedKeys` to call methods via this client"""
3393
3394    def collections(self) -> 'Collections':
3395        """Return an instance of `Collections` to call methods via this client"""
3396
3397    def computed_permissions(self) -> 'ComputedPermissions':
3398        """Return an instance of `ComputedPermissions` to call methods via this client"""
3399
3400    def configs(self) -> 'Configs':
3401        """Return an instance of `Configs` to call methods via this client"""
3402
3403    def container_requests(self) -> 'ContainerRequests':
3404        """Return an instance of `ContainerRequests` to call methods via this client"""
3405
3406    def containers(self) -> 'Containers':
3407        """Return an instance of `Containers` to call methods via this client"""
3408
3409    def credentials(self) -> 'Credentials':
3410        """Return an instance of `Credentials` to call methods via this client"""
3411
3412    def groups(self) -> 'Groups':
3413        """Return an instance of `Groups` to call methods via this client"""
3414
3415    def keep_services(self) -> 'KeepServices':
3416        """Return an instance of `KeepServices` to call methods via this client"""
3417
3418    def links(self) -> 'Links':
3419        """Return an instance of `Links` to call methods via this client"""
3420
3421    def logs(self) -> 'Logs':
3422        """Return an instance of `Logs` to call methods via this client"""
3423
3424    def sys(self) -> 'Sys':
3425        """Return an instance of `Sys` to call methods via this client"""
3426
3427    def user_agreements(self) -> 'UserAgreements':
3428        """Return an instance of `UserAgreements` to call methods via this client"""
3429
3430    def users(self) -> 'Users':
3431        """Return an instance of `Users` to call methods via this client"""
3432
3433    def virtual_machines(self) -> 'VirtualMachines':
3434        """Return an instance of `VirtualMachines` to call methods via this client"""
3435
3436    def vocabularies(self) -> 'Vocabularies':
3437        """Return an instance of `Vocabularies` to call methods via this client"""
3438
3439    def workflows(self) -> 'Workflows':
3440        """Return an instance of `Workflows` to call methods via this client"""
class ArvadosAPIRequest(googleapiclient.http.HttpRequest, typing.Generic[~ST]):
27class ArvadosAPIRequest(googleapiclient.http.HttpRequest, Generic[ST]):
28    """Generic API request object
29
30    When you call an API method in the Arvados Python SDK, it returns a
31    request object. You usually call `execute()` on this object to submit the
32    request to your Arvados API server and retrieve the response. `execute()`
33    will return the type of object annotated in the subscript of
34    `ArvadosAPIRequest`.
35    """
36
37    def execute(self, http: Optional[httplib2.Http]=None, num_retries: int=0) -> ST:
38        """Execute this request and return the response
39
40        Arguments:
41
42        * http: httplib2.Http | None --- The HTTP client object to use to
43          execute the request. If not specified, uses the HTTP client object
44          created with the API client object.
45
46        * num_retries: int --- The maximum number of times to retry this
47          request if the server returns a retryable failure. The API client
48          object also has a maximum number of retries specified when it is
49          instantiated (see `arvados.api.api_client`). This request is run
50          with the larger of that number and this argument. Default 0.
51        """

Generic API request object

When you call an API method in the Arvados Python SDK, it returns a request object. You usually call execute() on this object to submit the request to your Arvados API server and retrieve the response. execute() will return the type of object annotated in the subscript of ArvadosAPIRequest.

Inherited Members
googleapiclient.http.HttpRequest
HttpRequest
uri
method
body
headers
methodId
http
postproc
resumable
response_callbacks
body_size
resumable_uri
resumable_progress
execute
add_response_callback
next_chunk
to_json
from_json
null_postproc
class ApiClientAuthorization(typing.TypedDict):
54class ApiClientAuthorization(TypedDict, total=False):
55    """Arvados API client authorization token
56
57    This resource represents an API token a user may use to authenticate an
58    Arvados API request.
59
60    This is the dictionary object that represents a single ApiClientAuthorization in Arvados
61    and is returned by most `ApiClientAuthorizations` methods.
62    The keys of the dictionary are documented below, along with their types.
63    Not every key may appear in every dictionary returned by an API call.
64    When a method doesn't return all the data, you can use its `select` parameter
65    to list the specific keys you need. Refer to the API documentation for details.
66    """
67    etag: 'str'
68    """Object cache version."""
69    api_token: 'str'
70    """The secret token that can be used to authorize Arvados API requests."""
71    created_by_ip_address: 'str'
72    """The IP address of the client that created this token."""
73    last_used_by_ip_address: 'str'
74    """The IP address of the client that last used this token."""
75    last_used_at: 'str'
76    """The last time this token was used to authorize a request. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
77    expires_at: 'str'
78    """The time after which this token is no longer valid for authorization. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
79    created_at: 'str'
80    """The time this API client authorization was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
81    scopes: 'List'
82    """An array of strings identifying HTTP methods and API paths this token is
83    authorized to use. Refer to the [scopes reference][] for details.
84
85    [scopes reference]: https://doc.arvados.org/api/tokens.html#scopes
86    """
87    uuid: 'str'
88    """This API client authorization's Arvados UUID, like `zzzzz-gj3su-12345abcde67890`."""

Arvados API client authorization token

This resource represents an API token a user may use to authenticate an Arvados API request.

This is the dictionary object that represents a single ApiClientAuthorization in Arvados and is returned by most ApiClientAuthorizations methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

api_token: str

The secret token that can be used to authorize Arvados API requests.

created_by_ip_address: str

The IP address of the client that created this token.

last_used_by_ip_address: str

The IP address of the client that last used this token.

last_used_at: str

The last time this token was used to authorize a request. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

expires_at: str

The time after which this token is no longer valid for authorization. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

created_at: str

The time this API client authorization was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

scopes: List

An array of strings identifying HTTP methods and API paths this token is authorized to use. Refer to the scopes reference for details.

uuid: str

This API client authorization’s Arvados UUID, like zzzzz-gj3su-12345abcde67890.

class ApiClientAuthorizationList(typing.TypedDict):
 91class ApiClientAuthorizationList(TypedDict, total=False):
 92    """A list of ApiClientAuthorization objects.
 93
 94    This is the dictionary object returned when you call `ApiClientAuthorizations.list`.
 95    If you just want to iterate all objects that match your search criteria,
 96    consider using `arvados.util.keyset_list_all`.
 97    If you work with this raw object, the keys of the dictionary are documented
 98    below, along with their types. The `items` key maps to a list of matching
 99    `ApiClientAuthorization` objects.
100    """
101    kind: 'str' = 'arvados#apiClientAuthorizationList'
102    """Object type. Always arvados#apiClientAuthorizationList."""
103    etag: 'str'
104    """List cache version."""
105    items: 'List[ApiClientAuthorization]'
106    """An array of matching ApiClientAuthorization objects."""

A list of ApiClientAuthorization objects.

This is the dictionary object returned when you call ApiClientAuthorizations.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching ApiClientAuthorization objects.

kind: str = 'arvados#apiClientAuthorizationList'

Object type. Always arvados#apiClientAuthorizationList.

etag: str

List cache version.

items: List[ApiClientAuthorization]

An array of matching ApiClientAuthorization objects.

class ApiClientAuthorizations:
109class ApiClientAuthorizations:
110    """Methods to query and manipulate Arvados api client authorizations"""
111
112    def create(self, *, body: "Dict[Literal['api_client_authorization'], ApiClientAuthorization]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
113        """Create a new ApiClientAuthorization.
114
115        Required parameters:
116
117        * body: Dict[Literal['api_client_authorization'], ApiClientAuthorization] --- A dictionary with a single item `'api_client_authorization'`.
118          Its value is a `ApiClientAuthorization` dictionary defining the attributes to set. 
119
120        Optional parameters:
121
122        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
123
124        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
125
126        * select: Optional[List] --- An array of names of attributes to return in the response.
127        """
128
129    def create_system_auth(self, *, scopes: 'List' = ['all']) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
130        """Create a token for the system ("root") user.
131
132        Optional parameters:
133
134        * scopes: List --- An array of strings defining the scope of resources this token will be allowed to access. Refer to the [scopes reference][] for details. Default `['all']`.
135
136          [scopes reference]: https://doc.arvados.org/api/tokens.html#scopes
137        """
138
139    def current(self) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
140        """Return all metadata for the token used to authorize this request."""
141
142    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ApiClientAuthorization]':
143        """Delete an existing ApiClientAuthorization.
144
145        Required parameters:
146
147        * uuid: str --- The UUID of the ApiClientAuthorization to delete.
148        """
149
150    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
151        """Get a ApiClientAuthorization record by UUID.
152
153        Required parameters:
154
155        * uuid: str --- The UUID of the ApiClientAuthorization to return. 
156
157        Optional parameters:
158
159        * select: Optional[List] --- An array of names of attributes to return in the response.
160        """
161
162    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorizationList]':
163        """Retrieve a ApiClientAuthorizationList.
164
165        This method returns a single page of `ApiClientAuthorization` objects that match your search
166        criteria. If you just want to iterate all objects that match your search
167        criteria, consider using `arvados.util.keyset_list_all`.
168
169        Optional parameters:
170
171        * bypass_federation: bool --- If true, do not return results from other clusters in the
172          federation, only the cluster that received the request.
173          You must be an administrator to use this flag. Default `False`.
174
175        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
176
177        * count: str --- A string to determine result counting behavior. Supported values are:
178
179          * `"exact"`: The response will include an `items_available` field that
180            counts the number of objects that matched this search criteria,
181            including ones not included in `items`.
182
183          * `"none"`: The response will not include an `items_avaliable`
184            field. This improves performance by returning a result as soon as enough
185            `items` have been loaded for this result.
186
187          Default `'exact'`.
188
189        * distinct: bool --- If this is true, and multiple objects have the same values
190          for the attributes that you specify in the `select` parameter, then each unique
191          set of values will only be returned once in the result set. Default `False`.
192
193        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
194          Refer to the [filters reference][] for more information about how to write filters. 
195
196          [filters reference]: https://doc.arvados.org/api/methods.html#filters
197
198        * limit: int --- The maximum number of objects to return in the result.
199          Note that the API may return fewer results than this if your request hits other
200          limits set by the administrator. Default `100`.
201
202        * offset: int --- Return matching objects starting from this index.
203          Note that result indexes may change if objects are modified in between a series
204          of list calls. Default `0`.
205
206        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
207          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
208          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
209
210        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
211
212        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
213          The keys of this object are attribute names.
214          Each value is either a single matching value or an array of matching values for that attribute.
215          The `filters` parameter is more flexible and preferred.
216        """
217
218    def update(self, *, body: "Dict[Literal['api_client_authorization'], ApiClientAuthorization]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
219        """Update attributes of an existing ApiClientAuthorization.
220
221        Required parameters:
222
223        * body: Dict[Literal['api_client_authorization'], ApiClientAuthorization] --- A dictionary with a single item `'api_client_authorization'`.
224          Its value is a `ApiClientAuthorization` dictionary defining the attributes to set. 
225
226        * uuid: str --- The UUID of the ApiClientAuthorization to update. 
227
228        Optional parameters:
229
230        * select: Optional[List] --- An array of names of attributes to return in the response.
231        """

Methods to query and manipulate Arvados api client authorizations

def create( self, *, body: Dict[Literal['api_client_authorization'], ApiClientAuthorization], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[ApiClientAuthorization]:
112    def create(self, *, body: "Dict[Literal['api_client_authorization'], ApiClientAuthorization]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
113        """Create a new ApiClientAuthorization.
114
115        Required parameters:
116
117        * body: Dict[Literal['api_client_authorization'], ApiClientAuthorization] --- A dictionary with a single item `'api_client_authorization'`.
118          Its value is a `ApiClientAuthorization` dictionary defining the attributes to set. 
119
120        Optional parameters:
121
122        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
123
124        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
125
126        * select: Optional[List] --- An array of names of attributes to return in the response.
127        """

Create a new ApiClientAuthorization.

Required parameters:

  • body: Dict[Literal[’api_client_authorization’], ApiClientAuthorization] — A dictionary with a single item 'api_client_authorization'. Its value is a ApiClientAuthorization dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def create_system_auth( self, *, scopes: List = ['all']) -> ArvadosAPIRequest[ApiClientAuthorization]:
129    def create_system_auth(self, *, scopes: 'List' = ['all']) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
130        """Create a token for the system ("root") user.
131
132        Optional parameters:
133
134        * scopes: List --- An array of strings defining the scope of resources this token will be allowed to access. Refer to the [scopes reference][] for details. Default `['all']`.
135
136          [scopes reference]: https://doc.arvados.org/api/tokens.html#scopes
137        """

Create a token for the system ("root") user.

Optional parameters:

  • scopes: List — An array of strings defining the scope of resources this token will be allowed to access. Refer to the scopes reference for details. Default ['all'].
def current( self) -> ArvadosAPIRequest[ApiClientAuthorization]:
139    def current(self) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
140        """Return all metadata for the token used to authorize this request."""

Return all metadata for the token used to authorize this request.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[ApiClientAuthorization]:
142    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ApiClientAuthorization]':
143        """Delete an existing ApiClientAuthorization.
144
145        Required parameters:
146
147        * uuid: str --- The UUID of the ApiClientAuthorization to delete.
148        """

Delete an existing ApiClientAuthorization.

Required parameters:

  • uuid: str — The UUID of the ApiClientAuthorization to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[ApiClientAuthorization]:
150    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
151        """Get a ApiClientAuthorization record by UUID.
152
153        Required parameters:
154
155        * uuid: str --- The UUID of the ApiClientAuthorization to return. 
156
157        Optional parameters:
158
159        * select: Optional[List] --- An array of names of attributes to return in the response.
160        """

Get a ApiClientAuthorization record by UUID.

Required parameters:

  • uuid: str — The UUID of the ApiClientAuthorization to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[ApiClientAuthorizationList]:
162    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorizationList]':
163        """Retrieve a ApiClientAuthorizationList.
164
165        This method returns a single page of `ApiClientAuthorization` objects that match your search
166        criteria. If you just want to iterate all objects that match your search
167        criteria, consider using `arvados.util.keyset_list_all`.
168
169        Optional parameters:
170
171        * bypass_federation: bool --- If true, do not return results from other clusters in the
172          federation, only the cluster that received the request.
173          You must be an administrator to use this flag. Default `False`.
174
175        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
176
177        * count: str --- A string to determine result counting behavior. Supported values are:
178
179          * `"exact"`: The response will include an `items_available` field that
180            counts the number of objects that matched this search criteria,
181            including ones not included in `items`.
182
183          * `"none"`: The response will not include an `items_avaliable`
184            field. This improves performance by returning a result as soon as enough
185            `items` have been loaded for this result.
186
187          Default `'exact'`.
188
189        * distinct: bool --- If this is true, and multiple objects have the same values
190          for the attributes that you specify in the `select` parameter, then each unique
191          set of values will only be returned once in the result set. Default `False`.
192
193        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
194          Refer to the [filters reference][] for more information about how to write filters. 
195
196          [filters reference]: https://doc.arvados.org/api/methods.html#filters
197
198        * limit: int --- The maximum number of objects to return in the result.
199          Note that the API may return fewer results than this if your request hits other
200          limits set by the administrator. Default `100`.
201
202        * offset: int --- Return matching objects starting from this index.
203          Note that result indexes may change if objects are modified in between a series
204          of list calls. Default `0`.
205
206        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
207          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
208          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
209
210        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
211
212        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
213          The keys of this object are attribute names.
214          Each value is either a single matching value or an array of matching values for that attribute.
215          The `filters` parameter is more flexible and preferred.
216        """

Retrieve a ApiClientAuthorizationList.

This method returns a single page of ApiClientAuthorization objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def update( self, *, body: Dict[Literal['api_client_authorization'], ApiClientAuthorization], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[ApiClientAuthorization]:
218    def update(self, *, body: "Dict[Literal['api_client_authorization'], ApiClientAuthorization]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ApiClientAuthorization]':
219        """Update attributes of an existing ApiClientAuthorization.
220
221        Required parameters:
222
223        * body: Dict[Literal['api_client_authorization'], ApiClientAuthorization] --- A dictionary with a single item `'api_client_authorization'`.
224          Its value is a `ApiClientAuthorization` dictionary defining the attributes to set. 
225
226        * uuid: str --- The UUID of the ApiClientAuthorization to update. 
227
228        Optional parameters:
229
230        * select: Optional[List] --- An array of names of attributes to return in the response.
231        """

Update attributes of an existing ApiClientAuthorization.

Required parameters:

  • body: Dict[Literal[’api_client_authorization’], ApiClientAuthorization] — A dictionary with a single item 'api_client_authorization'. Its value is a ApiClientAuthorization dictionary defining the attributes to set.

  • uuid: str — The UUID of the ApiClientAuthorization to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class AuthorizedKey(typing.TypedDict):
234class AuthorizedKey(TypedDict, total=False):
235    """Arvados authorized public key
236
237    This resource represents a public key a user may use to authenticate themselves
238    to services on the cluster. Its primary use today is to store SSH keys for
239    virtual machines ("shell nodes"). It may be extended to store other keys in
240    the future.
241
242    This is the dictionary object that represents a single AuthorizedKey in Arvados
243    and is returned by most `AuthorizedKeys` methods.
244    The keys of the dictionary are documented below, along with their types.
245    Not every key may appear in every dictionary returned by an API call.
246    When a method doesn't return all the data, you can use its `select` parameter
247    to list the specific keys you need. Refer to the API documentation for details.
248    """
249    etag: 'str'
250    """Object cache version."""
251    uuid: 'str'
252    """This authorized key's Arvados UUID, like `zzzzz-fngyi-12345abcde67890`."""
253    owner_uuid: 'str'
254    """The UUID of the user or group that owns this authorized key."""
255    modified_by_user_uuid: 'str'
256    """The UUID of the user that last updated this authorized key."""
257    modified_at: 'str'
258    """The time this authorized key was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
259    name: 'str'
260    """The name of this authorized key assigned by a user."""
261    key_type: 'str'
262    """A string identifying what type of service uses this key. Supported values are:
263
264      * `"SSH"`
265    """
266    authorized_user_uuid: 'str'
267    """The UUID of the Arvados user that is authorized by this key."""
268    public_key: 'str'
269    """The full public key, in the format referenced by `key_type`."""
270    expires_at: 'str'
271    """The time after which this key is no longer valid for authorization. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
272    created_at: 'str'
273    """The time this authorized key was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""

Arvados authorized public key

This resource represents a public key a user may use to authenticate themselves to services on the cluster. Its primary use today is to store SSH keys for virtual machines ("shell nodes"). It may be extended to store other keys in the future.

This is the dictionary object that represents a single AuthorizedKey in Arvados and is returned by most AuthorizedKeys methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This authorized key’s Arvados UUID, like zzzzz-fngyi-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this authorized key.

modified_by_user_uuid: str

The UUID of the user that last updated this authorized key.

modified_at: str

The time this authorized key was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

name: str

The name of this authorized key assigned by a user.

key_type: str

A string identifying what type of service uses this key. Supported values are:

  • "SSH"
authorized_user_uuid: str

The UUID of the Arvados user that is authorized by this key.

public_key: str

The full public key, in the format referenced by key_type.

expires_at: str

The time after which this key is no longer valid for authorization. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

created_at: str

The time this authorized key was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

class AuthorizedKeyList(typing.TypedDict):
276class AuthorizedKeyList(TypedDict, total=False):
277    """A list of AuthorizedKey objects.
278
279    This is the dictionary object returned when you call `AuthorizedKeys.list`.
280    If you just want to iterate all objects that match your search criteria,
281    consider using `arvados.util.keyset_list_all`.
282    If you work with this raw object, the keys of the dictionary are documented
283    below, along with their types. The `items` key maps to a list of matching
284    `AuthorizedKey` objects.
285    """
286    kind: 'str' = 'arvados#authorizedKeyList'
287    """Object type. Always arvados#authorizedKeyList."""
288    etag: 'str'
289    """List cache version."""
290    items: 'List[AuthorizedKey]'
291    """An array of matching AuthorizedKey objects."""

A list of AuthorizedKey objects.

This is the dictionary object returned when you call AuthorizedKeys.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching AuthorizedKey objects.

kind: str = 'arvados#authorizedKeyList'

Object type. Always arvados#authorizedKeyList.

etag: str

List cache version.

items: List[AuthorizedKey]

An array of matching AuthorizedKey objects.

class AuthorizedKeys:
294class AuthorizedKeys:
295    """Methods to query and manipulate Arvados authorized keys"""
296
297    def create(self, *, body: "Dict[Literal['authorized_key'], AuthorizedKey]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
298        """Create a new AuthorizedKey.
299
300        Required parameters:
301
302        * body: Dict[Literal['authorized_key'], AuthorizedKey] --- A dictionary with a single item `'authorized_key'`.
303          Its value is a `AuthorizedKey` dictionary defining the attributes to set. 
304
305        Optional parameters:
306
307        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
308
309        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
310
311        * select: Optional[List] --- An array of names of attributes to return in the response.
312        """
313
314    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[AuthorizedKey]':
315        """Delete an existing AuthorizedKey.
316
317        Required parameters:
318
319        * uuid: str --- The UUID of the AuthorizedKey to delete.
320        """
321
322    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
323        """Get a AuthorizedKey record by UUID.
324
325        Required parameters:
326
327        * uuid: str --- The UUID of the AuthorizedKey to return. 
328
329        Optional parameters:
330
331        * select: Optional[List] --- An array of names of attributes to return in the response.
332        """
333
334    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[AuthorizedKeyList]':
335        """Retrieve a AuthorizedKeyList.
336
337        This method returns a single page of `AuthorizedKey` objects that match your search
338        criteria. If you just want to iterate all objects that match your search
339        criteria, consider using `arvados.util.keyset_list_all`.
340
341        Optional parameters:
342
343        * bypass_federation: bool --- If true, do not return results from other clusters in the
344          federation, only the cluster that received the request.
345          You must be an administrator to use this flag. Default `False`.
346
347        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
348
349        * count: str --- A string to determine result counting behavior. Supported values are:
350
351          * `"exact"`: The response will include an `items_available` field that
352            counts the number of objects that matched this search criteria,
353            including ones not included in `items`.
354
355          * `"none"`: The response will not include an `items_avaliable`
356            field. This improves performance by returning a result as soon as enough
357            `items` have been loaded for this result.
358
359          Default `'exact'`.
360
361        * distinct: bool --- If this is true, and multiple objects have the same values
362          for the attributes that you specify in the `select` parameter, then each unique
363          set of values will only be returned once in the result set. Default `False`.
364
365        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
366          Refer to the [filters reference][] for more information about how to write filters. 
367
368          [filters reference]: https://doc.arvados.org/api/methods.html#filters
369
370        * limit: int --- The maximum number of objects to return in the result.
371          Note that the API may return fewer results than this if your request hits other
372          limits set by the administrator. Default `100`.
373
374        * offset: int --- Return matching objects starting from this index.
375          Note that result indexes may change if objects are modified in between a series
376          of list calls. Default `0`.
377
378        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
379          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
380          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
381
382        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
383
384        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
385          The keys of this object are attribute names.
386          Each value is either a single matching value or an array of matching values for that attribute.
387          The `filters` parameter is more flexible and preferred.
388        """
389
390    def update(self, *, body: "Dict[Literal['authorized_key'], AuthorizedKey]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
391        """Update attributes of an existing AuthorizedKey.
392
393        Required parameters:
394
395        * body: Dict[Literal['authorized_key'], AuthorizedKey] --- A dictionary with a single item `'authorized_key'`.
396          Its value is a `AuthorizedKey` dictionary defining the attributes to set. 
397
398        * uuid: str --- The UUID of the AuthorizedKey to update. 
399
400        Optional parameters:
401
402        * select: Optional[List] --- An array of names of attributes to return in the response.
403        """

Methods to query and manipulate Arvados authorized keys

def create( self, *, body: Dict[Literal['authorized_key'], AuthorizedKey], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[AuthorizedKey]:
297    def create(self, *, body: "Dict[Literal['authorized_key'], AuthorizedKey]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
298        """Create a new AuthorizedKey.
299
300        Required parameters:
301
302        * body: Dict[Literal['authorized_key'], AuthorizedKey] --- A dictionary with a single item `'authorized_key'`.
303          Its value is a `AuthorizedKey` dictionary defining the attributes to set. 
304
305        Optional parameters:
306
307        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
308
309        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
310
311        * select: Optional[List] --- An array of names of attributes to return in the response.
312        """

Create a new AuthorizedKey.

Required parameters:

  • body: Dict[Literal[’authorized_key’], AuthorizedKey] — A dictionary with a single item 'authorized_key'. Its value is a AuthorizedKey dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[AuthorizedKey]:
314    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[AuthorizedKey]':
315        """Delete an existing AuthorizedKey.
316
317        Required parameters:
318
319        * uuid: str --- The UUID of the AuthorizedKey to delete.
320        """

Delete an existing AuthorizedKey.

Required parameters:

  • uuid: str — The UUID of the AuthorizedKey to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[AuthorizedKey]:
322    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
323        """Get a AuthorizedKey record by UUID.
324
325        Required parameters:
326
327        * uuid: str --- The UUID of the AuthorizedKey to return. 
328
329        Optional parameters:
330
331        * select: Optional[List] --- An array of names of attributes to return in the response.
332        """

Get a AuthorizedKey record by UUID.

Required parameters:

  • uuid: str — The UUID of the AuthorizedKey to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[AuthorizedKeyList]:
334    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[AuthorizedKeyList]':
335        """Retrieve a AuthorizedKeyList.
336
337        This method returns a single page of `AuthorizedKey` objects that match your search
338        criteria. If you just want to iterate all objects that match your search
339        criteria, consider using `arvados.util.keyset_list_all`.
340
341        Optional parameters:
342
343        * bypass_federation: bool --- If true, do not return results from other clusters in the
344          federation, only the cluster that received the request.
345          You must be an administrator to use this flag. Default `False`.
346
347        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
348
349        * count: str --- A string to determine result counting behavior. Supported values are:
350
351          * `"exact"`: The response will include an `items_available` field that
352            counts the number of objects that matched this search criteria,
353            including ones not included in `items`.
354
355          * `"none"`: The response will not include an `items_avaliable`
356            field. This improves performance by returning a result as soon as enough
357            `items` have been loaded for this result.
358
359          Default `'exact'`.
360
361        * distinct: bool --- If this is true, and multiple objects have the same values
362          for the attributes that you specify in the `select` parameter, then each unique
363          set of values will only be returned once in the result set. Default `False`.
364
365        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
366          Refer to the [filters reference][] for more information about how to write filters. 
367
368          [filters reference]: https://doc.arvados.org/api/methods.html#filters
369
370        * limit: int --- The maximum number of objects to return in the result.
371          Note that the API may return fewer results than this if your request hits other
372          limits set by the administrator. Default `100`.
373
374        * offset: int --- Return matching objects starting from this index.
375          Note that result indexes may change if objects are modified in between a series
376          of list calls. Default `0`.
377
378        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
379          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
380          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
381
382        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
383
384        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
385          The keys of this object are attribute names.
386          Each value is either a single matching value or an array of matching values for that attribute.
387          The `filters` parameter is more flexible and preferred.
388        """

Retrieve a AuthorizedKeyList.

This method returns a single page of AuthorizedKey objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def update( self, *, body: Dict[Literal['authorized_key'], AuthorizedKey], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[AuthorizedKey]:
390    def update(self, *, body: "Dict[Literal['authorized_key'], AuthorizedKey]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[AuthorizedKey]':
391        """Update attributes of an existing AuthorizedKey.
392
393        Required parameters:
394
395        * body: Dict[Literal['authorized_key'], AuthorizedKey] --- A dictionary with a single item `'authorized_key'`.
396          Its value is a `AuthorizedKey` dictionary defining the attributes to set. 
397
398        * uuid: str --- The UUID of the AuthorizedKey to update. 
399
400        Optional parameters:
401
402        * select: Optional[List] --- An array of names of attributes to return in the response.
403        """

Update attributes of an existing AuthorizedKey.

Required parameters:

  • body: Dict[Literal[’authorized_key’], AuthorizedKey] — A dictionary with a single item 'authorized_key'. Its value is a AuthorizedKey dictionary defining the attributes to set.

  • uuid: str — The UUID of the AuthorizedKey to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class Collection(typing.TypedDict):
406class Collection(TypedDict, total=False):
407    """Arvados data collection
408
409    A collection describes how a set of files is stored in data blocks in Keep,
410    along with associated metadata.
411
412    This is the dictionary object that represents a single Collection in Arvados
413    and is returned by most `Collections` methods.
414    The keys of the dictionary are documented below, along with their types.
415    Not every key may appear in every dictionary returned by an API call.
416    When a method doesn't return all the data, you can use its `select` parameter
417    to list the specific keys you need. Refer to the API documentation for details.
418    """
419    etag: 'str'
420    """Object cache version."""
421    owner_uuid: 'str'
422    """The UUID of the user or group that owns this collection."""
423    created_at: 'str'
424    """The time this collection was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
425    modified_by_user_uuid: 'str'
426    """The UUID of the user that last updated this collection."""
427    modified_at: 'str'
428    """The time this collection was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
429    portable_data_hash: 'str'
430    """The portable data hash of this collection. This string provides a unique
431    and stable reference to these contents.
432    """
433    replication_desired: 'int'
434    """The number of copies that should be made for data in this collection."""
435    replication_confirmed_at: 'str'
436    """The last time the cluster confirmed that it met `replication_confirmed`
437    for this collection. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`.
438    """
439    replication_confirmed: 'int'
440    """The number of copies of data in this collection that the cluster has confirmed
441    exist in storage.
442    """
443    uuid: 'str'
444    """This collection's Arvados UUID, like `zzzzz-4zz18-12345abcde67890`."""
445    manifest_text: 'str'
446    """The manifest text that describes how files are constructed from data blocks
447    in this collection. Refer to the [manifest format][] reference for details.
448
449    [manifest format]: https://doc.arvados.org/architecture/manifest-format.html
450    """
451    name: 'str'
452    """The name of this collection assigned by a user."""
453    description: 'str'
454    """A longer HTML description of this collection assigned by a user.
455    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
456    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
457    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
458    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
459    """
460    properties: 'Dict[str, Any]'
461    """A hash of arbitrary metadata for this collection.
462    Some keys may be reserved by Arvados or defined by a configured vocabulary.
463    Refer to the [metadata properties reference][] for details.
464
465    [metadata properties reference]: https://doc.arvados.org/api/properties.html
466    """
467    delete_at: 'str'
468    """The time this collection will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
469    trash_at: 'str'
470    """The time this collection will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
471    is_trashed: 'bool'
472    """A boolean flag to indicate whether or not this collection is trashed."""
473    storage_classes_desired: 'List'
474    """An array of strings identifying the storage class(es) that should be used
475    for data in this collection. Storage classes are configured by the cluster administrator.
476    """
477    storage_classes_confirmed: 'List'
478    """An array of strings identifying the storage class(es) the cluster has
479    confirmed have a copy of this collection's data.
480    """
481    storage_classes_confirmed_at: 'str'
482    """The last time the cluster confirmed that data was stored on the storage
483    class(es) in `storage_classes_confirmed`. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`.
484    """
485    current_version_uuid: 'str'
486    """The UUID of the current version of this collection."""
487    version: 'int'
488    """An integer that counts which version of a collection this record
489    represents. Refer to [collection versioning][] for details. This attribute is
490    read-only.
491
492    [collection versioning]: https://doc.arvados.org/user/topics/collection-versioning.html
493    """
494    preserve_version: 'bool'
495    """A boolean flag to indicate whether this specific version of this collection
496    should be persisted in cluster storage.
497    """
498    file_count: 'int'
499    """The number of files represented in this collection's `manifest_text`.
500    This attribute is read-only.
501    """
502    file_size_total: 'int'
503    """The total size in bytes of files represented in this collection's `manifest_text`.
504    This attribute is read-only.
505    """

Arvados data collection

A collection describes how a set of files is stored in data blocks in Keep, along with associated metadata.

This is the dictionary object that represents a single Collection in Arvados and is returned by most Collections methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

owner_uuid: str

The UUID of the user or group that owns this collection.

created_at: str

The time this collection was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_by_user_uuid: str

The UUID of the user that last updated this collection.

modified_at: str

The time this collection was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

portable_data_hash: str

The portable data hash of this collection. This string provides a unique and stable reference to these contents.

replication_desired: int

The number of copies that should be made for data in this collection.

replication_confirmed_at: str

The last time the cluster confirmed that it met replication_confirmed for this collection. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

replication_confirmed: int

The number of copies of data in this collection that the cluster has confirmed exist in storage.

uuid: str

This collection’s Arvados UUID, like zzzzz-4zz18-12345abcde67890.

manifest_text: str

The manifest text that describes how files are constructed from data blocks in this collection. Refer to the manifest format reference for details.

name: str

The name of this collection assigned by a user.

description: str

A longer HTML description of this collection assigned by a user. Allowed HTML tags are a, b, blockquote, br, code, del, dd, dl, dt, em, h1, h2, h3, h4, h5, h6, hr, i, img, kbd, li, ol, p, pre, s, section, span, strong, sub, sup, and ul.

properties: Dict[str, Any]

A hash of arbitrary metadata for this collection. Some keys may be reserved by Arvados or defined by a configured vocabulary. Refer to the metadata properties reference for details.

delete_at: str

The time this collection will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

trash_at: str

The time this collection will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

is_trashed: bool

A boolean flag to indicate whether or not this collection is trashed.

storage_classes_desired: List

An array of strings identifying the storage class(es) that should be used for data in this collection. Storage classes are configured by the cluster administrator.

storage_classes_confirmed: List

An array of strings identifying the storage class(es) the cluster has confirmed have a copy of this collection’s data.

storage_classes_confirmed_at: str

The last time the cluster confirmed that data was stored on the storage class(es) in storage_classes_confirmed. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

current_version_uuid: str

The UUID of the current version of this collection.

version: int

An integer that counts which version of a collection this record represents. Refer to collection versioning for details. This attribute is read-only.

preserve_version: bool

A boolean flag to indicate whether this specific version of this collection should be persisted in cluster storage.

file_count: int

The number of files represented in this collection’s manifest_text. This attribute is read-only.

file_size_total: int

The total size in bytes of files represented in this collection’s manifest_text. This attribute is read-only.

class CollectionList(typing.TypedDict):
508class CollectionList(TypedDict, total=False):
509    """A list of Collection objects.
510
511    This is the dictionary object returned when you call `Collections.list`.
512    If you just want to iterate all objects that match your search criteria,
513    consider using `arvados.util.keyset_list_all`.
514    If you work with this raw object, the keys of the dictionary are documented
515    below, along with their types. The `items` key maps to a list of matching
516    `Collection` objects.
517    """
518    kind: 'str' = 'arvados#collectionList'
519    """Object type. Always arvados#collectionList."""
520    etag: 'str'
521    """List cache version."""
522    items: 'List[Collection]'
523    """An array of matching Collection objects."""

A list of Collection objects.

This is the dictionary object returned when you call Collections.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching Collection objects.

kind: str = 'arvados#collectionList'

Object type. Always arvados#collectionList.

etag: str

List cache version.

items: List[Collection]

An array of matching Collection objects.

class Collections:
526class Collections:
527    """Methods to query and manipulate Arvados collections"""
528
529    def create(self, *, body: "Dict[Literal['collection'], Collection]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, replace_files: 'Optional[Dict[str, Any]]' = None, replace_segments: 'Optional[Dict[str, Any]]' = None, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
530        """Create a new Collection.
531
532        Required parameters:
533
534        * body: Dict[Literal['collection'], Collection] --- A dictionary with a single item `'collection'`.
535          Its value is a `Collection` dictionary defining the attributes to set. 
536
537        Optional parameters:
538
539        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
540
541        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
542
543        * replace_files: Optional[Dict[str, Any]] --- Add, delete, and replace files and directories with new content
544          and/or content from other collections. Refer to the
545          [replace_files reference][] for details. 
546
547          [replace_files reference]: https://doc.arvados.org/api/methods/collections.html#replace_files
548
549        * replace_segments: Optional[Dict[str, Any]] --- Replace existing block segments in the collection with new segments.
550          Refer to the [replace_segments reference][] for details. 
551
552          [replace_segments reference]: https://doc.arvados.org/api/methods/collections.html#replace_segments
553
554        * select: Optional[List] --- An array of names of attributes to return in the response.
555        """
556
557    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
558        """Delete an existing Collection.
559
560        Required parameters:
561
562        * uuid: str --- The UUID of the Collection to delete.
563        """
564
565    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
566        """Get a Collection record by UUID.
567
568        Required parameters:
569
570        * uuid: str --- The UUID of the Collection to return. 
571
572        Optional parameters:
573
574        * include_trash: bool --- Show collection even if its `is_trashed` attribute is true. Default `False`.
575
576        * select: Optional[List] --- An array of names of attributes to return in the response.
577        """
578
579    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_old_versions: 'bool' = False, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[CollectionList]':
580        """Retrieve a CollectionList.
581
582        This method returns a single page of `Collection` objects that match your search
583        criteria. If you just want to iterate all objects that match your search
584        criteria, consider using `arvados.util.keyset_list_all`.
585
586        Optional parameters:
587
588        * bypass_federation: bool --- If true, do not return results from other clusters in the
589          federation, only the cluster that received the request.
590          You must be an administrator to use this flag. Default `False`.
591
592        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
593
594        * count: str --- A string to determine result counting behavior. Supported values are:
595
596          * `"exact"`: The response will include an `items_available` field that
597            counts the number of objects that matched this search criteria,
598            including ones not included in `items`.
599
600          * `"none"`: The response will not include an `items_avaliable`
601            field. This improves performance by returning a result as soon as enough
602            `items` have been loaded for this result.
603
604          Default `'exact'`.
605
606        * distinct: bool --- If this is true, and multiple objects have the same values
607          for the attributes that you specify in the `select` parameter, then each unique
608          set of values will only be returned once in the result set. Default `False`.
609
610        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
611          Refer to the [filters reference][] for more information about how to write filters. 
612
613          [filters reference]: https://doc.arvados.org/api/methods.html#filters
614
615        * include_old_versions: bool --- Include past collection versions. Default `False`.
616
617        * include_trash: bool --- Include collections whose `is_trashed` attribute is true. Default `False`.
618
619        * limit: int --- The maximum number of objects to return in the result.
620          Note that the API may return fewer results than this if your request hits other
621          limits set by the administrator. Default `100`.
622
623        * offset: int --- Return matching objects starting from this index.
624          Note that result indexes may change if objects are modified in between a series
625          of list calls. Default `0`.
626
627        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
628          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
629          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
630
631        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
632
633        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
634          The keys of this object are attribute names.
635          Each value is either a single matching value or an array of matching values for that attribute.
636          The `filters` parameter is more flexible and preferred.
637        """
638
639    def provenance(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
640        """Detail the provenance of a given collection.
641
642        Required parameters:
643
644        * uuid: str --- The UUID of the Collection to query.
645        """
646
647    def trash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
648        """Trash a collection.
649
650        Required parameters:
651
652        * uuid: str --- The UUID of the Collection to update.
653        """
654
655    def untrash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
656        """Untrash a collection.
657
658        Required parameters:
659
660        * uuid: str --- The UUID of the Collection to update.
661        """
662
663    def update(self, *, body: "Dict[Literal['collection'], Collection]", uuid: 'str', replace_files: 'Optional[Dict[str, Any]]' = None, replace_segments: 'Optional[Dict[str, Any]]' = None, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
664        """Update attributes of an existing Collection.
665
666        Required parameters:
667
668        * body: Dict[Literal['collection'], Collection] --- A dictionary with a single item `'collection'`.
669          Its value is a `Collection` dictionary defining the attributes to set. 
670
671        * uuid: str --- The UUID of the Collection to update. 
672
673        Optional parameters:
674
675        * replace_files: Optional[Dict[str, Any]] --- Add, delete, and replace files and directories with new content
676          and/or content from other collections. Refer to the
677          [replace_files reference][] for details. 
678
679          [replace_files reference]: https://doc.arvados.org/api/methods/collections.html#replace_files
680
681        * replace_segments: Optional[Dict[str, Any]] --- Replace existing block segments in the collection with new segments.
682          Refer to the [replace_segments reference][] for details. 
683
684          [replace_segments reference]: https://doc.arvados.org/api/methods/collections.html#replace_segments
685
686        * select: Optional[List] --- An array of names of attributes to return in the response.
687        """
688
689    def used_by(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
690        """Detail where a given collection has been used.
691
692        Required parameters:
693
694        * uuid: str --- The UUID of the Collection to query.
695        """

Methods to query and manipulate Arvados collections

def create( self, *, body: Dict[Literal['collection'], Collection], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, replace_files: Optional[Dict[str, Any]] = None, replace_segments: Optional[Dict[str, Any]] = None, select: Optional[List] = None) -> ArvadosAPIRequest[Collection]:
529    def create(self, *, body: "Dict[Literal['collection'], Collection]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, replace_files: 'Optional[Dict[str, Any]]' = None, replace_segments: 'Optional[Dict[str, Any]]' = None, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
530        """Create a new Collection.
531
532        Required parameters:
533
534        * body: Dict[Literal['collection'], Collection] --- A dictionary with a single item `'collection'`.
535          Its value is a `Collection` dictionary defining the attributes to set. 
536
537        Optional parameters:
538
539        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
540
541        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
542
543        * replace_files: Optional[Dict[str, Any]] --- Add, delete, and replace files and directories with new content
544          and/or content from other collections. Refer to the
545          [replace_files reference][] for details. 
546
547          [replace_files reference]: https://doc.arvados.org/api/methods/collections.html#replace_files
548
549        * replace_segments: Optional[Dict[str, Any]] --- Replace existing block segments in the collection with new segments.
550          Refer to the [replace_segments reference][] for details. 
551
552          [replace_segments reference]: https://doc.arvados.org/api/methods/collections.html#replace_segments
553
554        * select: Optional[List] --- An array of names of attributes to return in the response.
555        """

Create a new Collection.

Required parameters:

  • body: Dict[Literal[’collection’], Collection] — A dictionary with a single item 'collection'. Its value is a Collection dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • replace_files: Optional[Dict[str, Any]] — Add, delete, and replace files and directories with new content and/or content from other collections. Refer to the replace_files reference for details.

  • replace_segments: Optional[Dict[str, Any]] — Replace existing block segments in the collection with new segments. Refer to the replace_segments reference for details.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[Collection]:
557    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
558        """Delete an existing Collection.
559
560        Required parameters:
561
562        * uuid: str --- The UUID of the Collection to delete.
563        """

Delete an existing Collection.

Required parameters:

  • uuid: str — The UUID of the Collection to delete.
def get( self, *, uuid: str, include_trash: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[Collection]:
565    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
566        """Get a Collection record by UUID.
567
568        Required parameters:
569
570        * uuid: str --- The UUID of the Collection to return. 
571
572        Optional parameters:
573
574        * include_trash: bool --- Show collection even if its `is_trashed` attribute is true. Default `False`.
575
576        * select: Optional[List] --- An array of names of attributes to return in the response.
577        """

Get a Collection record by UUID.

Required parameters:

  • uuid: str — The UUID of the Collection to return.

Optional parameters:

  • include_trash: bool — Show collection even if its is_trashed attribute is true. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, include_old_versions: bool = False, include_trash: bool = False, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[CollectionList]:
579    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_old_versions: 'bool' = False, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[CollectionList]':
580        """Retrieve a CollectionList.
581
582        This method returns a single page of `Collection` objects that match your search
583        criteria. If you just want to iterate all objects that match your search
584        criteria, consider using `arvados.util.keyset_list_all`.
585
586        Optional parameters:
587
588        * bypass_federation: bool --- If true, do not return results from other clusters in the
589          federation, only the cluster that received the request.
590          You must be an administrator to use this flag. Default `False`.
591
592        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
593
594        * count: str --- A string to determine result counting behavior. Supported values are:
595
596          * `"exact"`: The response will include an `items_available` field that
597            counts the number of objects that matched this search criteria,
598            including ones not included in `items`.
599
600          * `"none"`: The response will not include an `items_avaliable`
601            field. This improves performance by returning a result as soon as enough
602            `items` have been loaded for this result.
603
604          Default `'exact'`.
605
606        * distinct: bool --- If this is true, and multiple objects have the same values
607          for the attributes that you specify in the `select` parameter, then each unique
608          set of values will only be returned once in the result set. Default `False`.
609
610        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
611          Refer to the [filters reference][] for more information about how to write filters. 
612
613          [filters reference]: https://doc.arvados.org/api/methods.html#filters
614
615        * include_old_versions: bool --- Include past collection versions. Default `False`.
616
617        * include_trash: bool --- Include collections whose `is_trashed` attribute is true. Default `False`.
618
619        * limit: int --- The maximum number of objects to return in the result.
620          Note that the API may return fewer results than this if your request hits other
621          limits set by the administrator. Default `100`.
622
623        * offset: int --- Return matching objects starting from this index.
624          Note that result indexes may change if objects are modified in between a series
625          of list calls. Default `0`.
626
627        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
628          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
629          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
630
631        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
632
633        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
634          The keys of this object are attribute names.
635          Each value is either a single matching value or an array of matching values for that attribute.
636          The `filters` parameter is more flexible and preferred.
637        """

Retrieve a CollectionList.

This method returns a single page of Collection objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • include_old_versions: bool — Include past collection versions. Default False.

  • include_trash: bool — Include collections whose is_trashed attribute is true. Default False.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def provenance( self, *, uuid: str) -> ArvadosAPIRequest[Collection]:
639    def provenance(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
640        """Detail the provenance of a given collection.
641
642        Required parameters:
643
644        * uuid: str --- The UUID of the Collection to query.
645        """

Detail the provenance of a given collection.

Required parameters:

  • uuid: str — The UUID of the Collection to query.
def trash( self, *, uuid: str) -> ArvadosAPIRequest[Collection]:
647    def trash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
648        """Trash a collection.
649
650        Required parameters:
651
652        * uuid: str --- The UUID of the Collection to update.
653        """

Trash a collection.

Required parameters:

  • uuid: str — The UUID of the Collection to update.
def untrash( self, *, uuid: str) -> ArvadosAPIRequest[Collection]:
655    def untrash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
656        """Untrash a collection.
657
658        Required parameters:
659
660        * uuid: str --- The UUID of the Collection to update.
661        """

Untrash a collection.

Required parameters:

  • uuid: str — The UUID of the Collection to update.
def update( self, *, body: Dict[Literal['collection'], Collection], uuid: str, replace_files: Optional[Dict[str, Any]] = None, replace_segments: Optional[Dict[str, Any]] = None, select: Optional[List] = None) -> ArvadosAPIRequest[Collection]:
663    def update(self, *, body: "Dict[Literal['collection'], Collection]", uuid: 'str', replace_files: 'Optional[Dict[str, Any]]' = None, replace_segments: 'Optional[Dict[str, Any]]' = None, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Collection]':
664        """Update attributes of an existing Collection.
665
666        Required parameters:
667
668        * body: Dict[Literal['collection'], Collection] --- A dictionary with a single item `'collection'`.
669          Its value is a `Collection` dictionary defining the attributes to set. 
670
671        * uuid: str --- The UUID of the Collection to update. 
672
673        Optional parameters:
674
675        * replace_files: Optional[Dict[str, Any]] --- Add, delete, and replace files and directories with new content
676          and/or content from other collections. Refer to the
677          [replace_files reference][] for details. 
678
679          [replace_files reference]: https://doc.arvados.org/api/methods/collections.html#replace_files
680
681        * replace_segments: Optional[Dict[str, Any]] --- Replace existing block segments in the collection with new segments.
682          Refer to the [replace_segments reference][] for details. 
683
684          [replace_segments reference]: https://doc.arvados.org/api/methods/collections.html#replace_segments
685
686        * select: Optional[List] --- An array of names of attributes to return in the response.
687        """

Update attributes of an existing Collection.

Required parameters:

  • body: Dict[Literal[’collection’], Collection] — A dictionary with a single item 'collection'. Its value is a Collection dictionary defining the attributes to set.

  • uuid: str — The UUID of the Collection to update.

Optional parameters:

  • replace_files: Optional[Dict[str, Any]] — Add, delete, and replace files and directories with new content and/or content from other collections. Refer to the replace_files reference for details.

  • replace_segments: Optional[Dict[str, Any]] — Replace existing block segments in the collection with new segments. Refer to the replace_segments reference for details.

  • select: Optional[List] — An array of names of attributes to return in the response.

def used_by( self, *, uuid: str) -> ArvadosAPIRequest[Collection]:
689    def used_by(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Collection]':
690        """Detail where a given collection has been used.
691
692        Required parameters:
693
694        * uuid: str --- The UUID of the Collection to query.
695        """

Detail where a given collection has been used.

Required parameters:

  • uuid: str — The UUID of the Collection to query.
class ComputedPermission(typing.TypedDict):
698class ComputedPermission(TypedDict, total=False):
699    """Arvados computed permission
700
701    Computed permissions do not correspond directly to any Arvados resource, but
702    provide a simple way to query the entire graph of permissions granted to
703    users and groups.
704
705    This is the dictionary object that represents a single ComputedPermission in Arvados
706    and is returned by most `ComputedPermissions` methods.
707    The keys of the dictionary are documented below, along with their types.
708    Not every key may appear in every dictionary returned by an API call.
709    When a method doesn't return all the data, you can use its `select` parameter
710    to list the specific keys you need. Refer to the API documentation for details.
711    """
712    user_uuid: 'str'
713    """The UUID of the Arvados user who has this permission."""
714    target_uuid: 'str'
715    """The UUID of the Arvados object the user has access to."""
716    perm_level: 'str'
717    """A string representing the user's level of access to the target object.
718    Possible values are:
719
720      * `"can_read"`
721      * `"can_write"`
722      * `"can_manage"`
723    """

Arvados computed permission

Computed permissions do not correspond directly to any Arvados resource, but provide a simple way to query the entire graph of permissions granted to users and groups.

This is the dictionary object that represents a single ComputedPermission in Arvados and is returned by most ComputedPermissions methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

user_uuid: str

The UUID of the Arvados user who has this permission.

target_uuid: str

The UUID of the Arvados object the user has access to.

perm_level: str

A string representing the user’s level of access to the target object. Possible values are:

  • "can_read"
  • "can_write"
  • "can_manage"
class ComputedPermissionList(typing.TypedDict):
726class ComputedPermissionList(TypedDict, total=False):
727    """A list of ComputedPermission objects.
728
729    This is the dictionary object returned when you call `ComputedPermissions.list`.
730    If you just want to iterate all objects that match your search criteria,
731    consider using `arvados.util.iter_computed_permissions`.
732    If you work with this raw object, the keys of the dictionary are documented
733    below, along with their types. The `items` key maps to a list of matching
734    `ComputedPermission` objects.
735    """
736    kind: 'str' = 'arvados#computedPermissionList'
737    """Object type. Always arvados#computedPermissionList."""
738    etag: 'str'
739    """List cache version."""
740    items: 'List[ComputedPermission]'
741    """An array of matching ComputedPermission objects."""

A list of ComputedPermission objects.

This is the dictionary object returned when you call ComputedPermissions.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.iter_computed_permissions. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching ComputedPermission objects.

kind: str = 'arvados#computedPermissionList'

Object type. Always arvados#computedPermissionList.

etag: str

List cache version.

items: List[ComputedPermission]

An array of matching ComputedPermission objects.

class ComputedPermissions:
744class ComputedPermissions:
745    """Methods to query and manipulate Arvados computed permissions"""
746
747    def list(self, *, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ComputedPermissionList]':
748        """Retrieve a ComputedPermissionList.
749
750        This method returns a single page of `ComputedPermission` objects that match your search
751        criteria. If you just want to iterate all objects that match your search
752        criteria, consider using `arvados.util.iter_computed_permissions`.
753
754        Optional parameters:
755
756        * count: str --- A string to determine result counting behavior. Supported values are:
757
758          * `"exact"`: The response will include an `items_available` field that
759            counts the number of objects that matched this search criteria,
760            including ones not included in `items`.
761
762          * `"none"`: The response will not include an `items_avaliable`
763            field. This improves performance by returning a result as soon as enough
764            `items` have been loaded for this result.
765
766          Default `'exact'`.
767
768        * distinct: bool --- If this is true, and multiple objects have the same values
769          for the attributes that you specify in the `select` parameter, then each unique
770          set of values will only be returned once in the result set. Default `False`.
771
772        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
773          Refer to the [filters reference][] for more information about how to write filters. 
774
775          [filters reference]: https://doc.arvados.org/api/methods.html#filters
776
777        * limit: int --- The maximum number of objects to return in the result.
778          Note that the API may return fewer results than this if your request hits other
779          limits set by the administrator. Default `100`.
780
781        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
782          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
783          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
784
785        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
786
787        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
788          The keys of this object are attribute names.
789          Each value is either a single matching value or an array of matching values for that attribute.
790          The `filters` parameter is more flexible and preferred.
791        """

Methods to query and manipulate Arvados computed permissions

def list( self, *, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[ComputedPermissionList]:
747    def list(self, *, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ComputedPermissionList]':
748        """Retrieve a ComputedPermissionList.
749
750        This method returns a single page of `ComputedPermission` objects that match your search
751        criteria. If you just want to iterate all objects that match your search
752        criteria, consider using `arvados.util.iter_computed_permissions`.
753
754        Optional parameters:
755
756        * count: str --- A string to determine result counting behavior. Supported values are:
757
758          * `"exact"`: The response will include an `items_available` field that
759            counts the number of objects that matched this search criteria,
760            including ones not included in `items`.
761
762          * `"none"`: The response will not include an `items_avaliable`
763            field. This improves performance by returning a result as soon as enough
764            `items` have been loaded for this result.
765
766          Default `'exact'`.
767
768        * distinct: bool --- If this is true, and multiple objects have the same values
769          for the attributes that you specify in the `select` parameter, then each unique
770          set of values will only be returned once in the result set. Default `False`.
771
772        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
773          Refer to the [filters reference][] for more information about how to write filters. 
774
775          [filters reference]: https://doc.arvados.org/api/methods.html#filters
776
777        * limit: int --- The maximum number of objects to return in the result.
778          Note that the API may return fewer results than this if your request hits other
779          limits set by the administrator. Default `100`.
780
781        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
782          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
783          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
784
785        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
786
787        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
788          The keys of this object are attribute names.
789          Each value is either a single matching value or an array of matching values for that attribute.
790          The `filters` parameter is more flexible and preferred.
791        """

Retrieve a ComputedPermissionList.

This method returns a single page of ComputedPermission objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.iter_computed_permissions.

Optional parameters:

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

class Configs:
794class Configs:
795    """Methods to query and manipulate Arvados configs"""
796
797    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
798        """Get this cluster's public configuration settings."""

Methods to query and manipulate Arvados configs

def get( self) -> ArvadosAPIRequest[typing.Dict[str, typing.Any]]:
797    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
798        """Get this cluster's public configuration settings."""

Get this cluster’s public configuration settings.

class ContainerRequest(typing.TypedDict):
801class ContainerRequest(TypedDict, total=False):
802    """Arvados container request
803
804    A container request represents a user's request that Arvados do some compute
805    work, along with full details about what work should be done. Arvados will
806    attempt to fulfill the request by mapping it to a matching container record,
807    running the work on demand if necessary.
808
809    This is the dictionary object that represents a single ContainerRequest in Arvados
810    and is returned by most `ContainerRequests` methods.
811    The keys of the dictionary are documented below, along with their types.
812    Not every key may appear in every dictionary returned by an API call.
813    When a method doesn't return all the data, you can use its `select` parameter
814    to list the specific keys you need. Refer to the API documentation for details.
815    """
816    etag: 'str'
817    """Object cache version."""
818    uuid: 'str'
819    """This container request's Arvados UUID, like `zzzzz-xvhdp-12345abcde67890`."""
820    owner_uuid: 'str'
821    """The UUID of the user or group that owns this container request."""
822    created_at: 'str'
823    """The time this container request was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
824    modified_at: 'str'
825    """The time this container request was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
826    modified_by_user_uuid: 'str'
827    """The UUID of the user that last updated this container request."""
828    name: 'str'
829    """The name of this container request assigned by a user."""
830    description: 'str'
831    """A longer HTML description of this container request assigned by a user.
832    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
833    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
834    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
835    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
836    """
837    properties: 'Dict[str, Any]'
838    """A hash of arbitrary metadata for this container request.
839    Some keys may be reserved by Arvados or defined by a configured vocabulary.
840    Refer to the [metadata properties reference][] for details.
841
842    [metadata properties reference]: https://doc.arvados.org/api/properties.html
843    """
844    state: 'str'
845    """A string indicating where this container request is in its lifecycle.
846    Possible values are:
847
848      * `"Uncommitted"` --- The container request has not been finalized and can still be edited.
849      * `"Committed"` --- The container request is ready to be fulfilled.
850      * `"Final"` --- The container request has been fulfilled or cancelled.
851    """
852    requesting_container_uuid: 'str'
853    """The UUID of the container that created this container request, if any."""
854    container_uuid: 'str'
855    """The UUID of the container that fulfills this container request, if any."""
856    container_count_max: 'int'
857    """An integer that defines the maximum number of times Arvados should attempt
858    to dispatch a container to fulfill this container request.
859    """
860    mounts: 'Dict[str, Any]'
861    """A hash where each key names a directory inside this container, and its
862    value is an object that defines the mount source for that directory. Refer
863    to the [mount types reference][] for details.
864
865    [mount types reference]: https://doc.arvados.org/api/methods/containers.html#mount_types
866    """
867    runtime_constraints: 'Dict[str, Any]'
868    """A hash that identifies compute resources this container requires to run
869    successfully. See the [runtime constraints reference][] for details.
870
871    [runtime constraints reference]: https://doc.arvados.org/api/methods/containers.html#runtime_constraints
872    """
873    container_image: 'str'
874    """The portable data hash of the Arvados collection that contains the image
875    to use for this container.
876    """
877    environment: 'Dict[str, Any]'
878    """A hash of string keys and values that defines the environment variables
879    for the dispatcher to set when it executes this container.
880    """
881    cwd: 'str'
882    """A string that the defines the working directory that the dispatcher should
883    use when it executes the command inside this container.
884    """
885    command: 'List'
886    """An array of strings that defines the command that the dispatcher should
887    execute inside this container.
888    """
889    output_path: 'str'
890    """A string that defines the file or directory path where the command
891    writes output that should be saved from this container.
892    """
893    priority: 'int'
894    """An integer between 0 and 1000 (inclusive) that represents this container request's
895    scheduling priority. 0 represents a request to be cancelled. Higher
896    values represent higher priority. Refer to the [priority reference][] for details.
897
898    [priority reference]: https://doc.arvados.org/api/methods/container_requests.html#priority
899    """
900    expires_at: 'str'
901    """The time after which this container request will no longer be fulfilled. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
902    filters: 'str'
903    """Filters that limit which existing containers are eligible to satisfy this
904    container request. This attribute is not implemented yet and should be null.
905    """
906    container_count: 'int'
907    """An integer that records how many times Arvados has attempted to dispatch
908    a container to fulfill this container request.
909    """
910    use_existing: 'bool'
911    """A boolean flag. If set, Arvados may choose to satisfy this container
912    request with an eligible container that already exists. Otherwise, Arvados will
913    satisfy this container request with a newer container, which will usually result
914    in the container running again.
915    """
916    scheduling_parameters: 'Dict[str, Any]'
917    """A hash of scheduling parameters that should be passed to the underlying
918    dispatcher when this container is run.
919    See the [scheduling parameters reference][] for details.
920
921    [scheduling parameters reference]: https://doc.arvados.org/api/methods/containers.html#scheduling_parameters
922    """
923    output_uuid: 'str'
924    """The UUID of the Arvados collection that contains output for all the
925    container(s) that were dispatched to fulfill this container request.
926    """
927    log_uuid: 'str'
928    """The UUID of the Arvados collection that contains logs for all the
929    container(s) that were dispatched to fulfill this container request.
930    """
931    output_name: 'str'
932    """The name to set on the output collection of this container request."""
933    output_ttl: 'int'
934    """An integer in seconds. If greater than zero, when an output collection is
935    created for this container request, its `expires_at` attribute will be set this
936    far in the future.
937    """
938    output_storage_classes: 'List'
939    """An array of strings identifying the storage class(es) that should be set
940    on the output collection of this container request. Storage classes are configured by
941    the cluster administrator.
942    """
943    output_properties: 'Dict[str, Any]'
944    """A hash of arbitrary metadata to set on the output collection of this container request.
945    Some keys may be reserved by Arvados or defined by a configured vocabulary.
946    Refer to the [metadata properties reference][] for details.
947
948    [metadata properties reference]: https://doc.arvados.org/api/properties.html
949    """
950    cumulative_cost: 'float'
951    """A float with the estimated cost of all cloud instances used to run
952    container(s) to fulfill this container request and their subrequests.
953    The value is `0` if cost estimation is not available on this cluster.
954    """
955    output_glob: 'List'
956    """An array of strings of shell-style glob patterns that define which file(s)
957    and subdirectory(ies) under the `output_path` directory should be recorded in
958    the container's final output. Refer to the [glob patterns reference][] for details.
959
960    [glob patterns reference]: https://doc.arvados.org/api/methods/containers.html#glob_patterns
961    """
962    service: 'bool'
963    """A boolean flag. If set, it informs the system that this request is for a long-running container
964    that functions as a system service or web app, rather than a once-through batch operation.
965    """
966    published_ports: 'Dict[str, Any]'
967    """A hash where keys are numeric TCP ports on the container which expose HTTP services.  Arvados
968    will proxy HTTP requests to these ports.  Values are hashes with the following keys:
969
970      * `"access"` --- One of 'private' or 'public' indicating if an Arvados API token is required to access the endpoint.
971      * `"label"` --- A human readable label describing the service, for display in Workbench.
972      * `"initial_path"` --- The relative path that should be included when constructing the URL that will be presented to the user in Workbench.
973    """

Arvados container request

A container request represents a user’s request that Arvados do some compute work, along with full details about what work should be done. Arvados will attempt to fulfill the request by mapping it to a matching container record, running the work on demand if necessary.

This is the dictionary object that represents a single ContainerRequest in Arvados and is returned by most ContainerRequests methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This container request’s Arvados UUID, like zzzzz-xvhdp-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this container request.

created_at: str

The time this container request was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_at: str

The time this container request was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_by_user_uuid: str

The UUID of the user that last updated this container request.

name: str

The name of this container request assigned by a user.

description: str

A longer HTML description of this container request assigned by a user. Allowed HTML tags are a, b, blockquote, br, code, del, dd, dl, dt, em, h1, h2, h3, h4, h5, h6, hr, i, img, kbd, li, ol, p, pre, s, section, span, strong, sub, sup, and ul.

properties: Dict[str, Any]

A hash of arbitrary metadata for this container request. Some keys may be reserved by Arvados or defined by a configured vocabulary. Refer to the metadata properties reference for details.

state: str

A string indicating where this container request is in its lifecycle. Possible values are:

  • "Uncommitted" — The container request has not been finalized and can still be edited.
  • "Committed" — The container request is ready to be fulfilled.
  • "Final" — The container request has been fulfilled or cancelled.
requesting_container_uuid: str

The UUID of the container that created this container request, if any.

container_uuid: str

The UUID of the container that fulfills this container request, if any.

container_count_max: int

An integer that defines the maximum number of times Arvados should attempt to dispatch a container to fulfill this container request.

mounts: Dict[str, Any]

A hash where each key names a directory inside this container, and its value is an object that defines the mount source for that directory. Refer to the mount types reference for details.

runtime_constraints: Dict[str, Any]

A hash that identifies compute resources this container requires to run successfully. See the runtime constraints reference for details.

container_image: str

The portable data hash of the Arvados collection that contains the image to use for this container.

environment: Dict[str, Any]

A hash of string keys and values that defines the environment variables for the dispatcher to set when it executes this container.

cwd: str

A string that the defines the working directory that the dispatcher should use when it executes the command inside this container.

command: List

An array of strings that defines the command that the dispatcher should execute inside this container.

output_path: str

A string that defines the file or directory path where the command writes output that should be saved from this container.

priority: int

An integer between 0 and 1000 (inclusive) that represents this container request’s scheduling priority. 0 represents a request to be cancelled. Higher values represent higher priority. Refer to the priority reference for details.

expires_at: str

The time after which this container request will no longer be fulfilled. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

filters: str

Filters that limit which existing containers are eligible to satisfy this container request. This attribute is not implemented yet and should be null.

container_count: int

An integer that records how many times Arvados has attempted to dispatch a container to fulfill this container request.

use_existing: bool

A boolean flag. If set, Arvados may choose to satisfy this container request with an eligible container that already exists. Otherwise, Arvados will satisfy this container request with a newer container, which will usually result in the container running again.

scheduling_parameters: Dict[str, Any]

A hash of scheduling parameters that should be passed to the underlying dispatcher when this container is run. See the scheduling parameters reference for details.

output_uuid: str

The UUID of the Arvados collection that contains output for all the container(s) that were dispatched to fulfill this container request.

log_uuid: str

The UUID of the Arvados collection that contains logs for all the container(s) that were dispatched to fulfill this container request.

output_name: str

The name to set on the output collection of this container request.

output_ttl: int

An integer in seconds. If greater than zero, when an output collection is created for this container request, its expires_at attribute will be set this far in the future.

output_storage_classes: List

An array of strings identifying the storage class(es) that should be set on the output collection of this container request. Storage classes are configured by the cluster administrator.

output_properties: Dict[str, Any]

A hash of arbitrary metadata to set on the output collection of this container request. Some keys may be reserved by Arvados or defined by a configured vocabulary. Refer to the metadata properties reference for details.

cumulative_cost: float

A float with the estimated cost of all cloud instances used to run container(s) to fulfill this container request and their subrequests. The value is 0 if cost estimation is not available on this cluster.

output_glob: List

An array of strings of shell-style glob patterns that define which file(s) and subdirectory(ies) under the output_path directory should be recorded in the container’s final output. Refer to the glob patterns reference for details.

service: bool

A boolean flag. If set, it informs the system that this request is for a long-running container that functions as a system service or web app, rather than a once-through batch operation.

published_ports: Dict[str, Any]

A hash where keys are numeric TCP ports on the container which expose HTTP services. Arvados will proxy HTTP requests to these ports. Values are hashes with the following keys:

  • "access" — One of ‘private’ or ‘public’ indicating if an Arvados API token is required to access the endpoint.
  • "label" — A human readable label describing the service, for display in Workbench.
  • "initial_path" — The relative path that should be included when constructing the URL that will be presented to the user in Workbench.
class ContainerRequestList(typing.TypedDict):
976class ContainerRequestList(TypedDict, total=False):
977    """A list of ContainerRequest objects.
978
979    This is the dictionary object returned when you call `ContainerRequests.list`.
980    If you just want to iterate all objects that match your search criteria,
981    consider using `arvados.util.keyset_list_all`.
982    If you work with this raw object, the keys of the dictionary are documented
983    below, along with their types. The `items` key maps to a list of matching
984    `ContainerRequest` objects.
985    """
986    kind: 'str' = 'arvados#containerRequestList'
987    """Object type. Always arvados#containerRequestList."""
988    etag: 'str'
989    """List cache version."""
990    items: 'List[ContainerRequest]'
991    """An array of matching ContainerRequest objects."""

A list of ContainerRequest objects.

This is the dictionary object returned when you call ContainerRequests.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching ContainerRequest objects.

kind: str = 'arvados#containerRequestList'

Object type. Always arvados#containerRequestList.

etag: str

List cache version.

items: List[ContainerRequest]

An array of matching ContainerRequest objects.

class ContainerRequests:
 994class ContainerRequests:
 995    """Methods to query and manipulate Arvados container requests"""
 996
 997    def container_status(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ContainerRequest]':
 998        """Return scheduling details for a container request.
 999
1000        Required parameters:
1001
1002        * uuid: str --- The UUID of the container request to query.
1003        """
1004
1005    def create(self, *, body: "Dict[Literal['container_request'], ContainerRequest]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1006        """Create a new ContainerRequest.
1007
1008        Required parameters:
1009
1010        * body: Dict[Literal['container_request'], ContainerRequest] --- A dictionary with a single item `'container_request'`.
1011          Its value is a `ContainerRequest` dictionary defining the attributes to set. 
1012
1013        Optional parameters:
1014
1015        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1016
1017        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1018
1019        * select: Optional[List] --- An array of names of attributes to return in the response.
1020        """
1021
1022    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ContainerRequest]':
1023        """Delete an existing ContainerRequest.
1024
1025        Required parameters:
1026
1027        * uuid: str --- The UUID of the ContainerRequest to delete.
1028        """
1029
1030    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1031        """Get a ContainerRequest record by UUID.
1032
1033        Required parameters:
1034
1035        * uuid: str --- The UUID of the ContainerRequest to return. 
1036
1037        Optional parameters:
1038
1039        * include_trash: bool --- Show container request even if its owner project is trashed. Default `False`.
1040
1041        * select: Optional[List] --- An array of names of attributes to return in the response.
1042        """
1043
1044    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ContainerRequestList]':
1045        """Retrieve a ContainerRequestList.
1046
1047        This method returns a single page of `ContainerRequest` objects that match your search
1048        criteria. If you just want to iterate all objects that match your search
1049        criteria, consider using `arvados.util.keyset_list_all`.
1050
1051        Optional parameters:
1052
1053        * bypass_federation: bool --- If true, do not return results from other clusters in the
1054          federation, only the cluster that received the request.
1055          You must be an administrator to use this flag. Default `False`.
1056
1057        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1058
1059        * count: str --- A string to determine result counting behavior. Supported values are:
1060
1061          * `"exact"`: The response will include an `items_available` field that
1062            counts the number of objects that matched this search criteria,
1063            including ones not included in `items`.
1064
1065          * `"none"`: The response will not include an `items_avaliable`
1066            field. This improves performance by returning a result as soon as enough
1067            `items` have been loaded for this result.
1068
1069          Default `'exact'`.
1070
1071        * distinct: bool --- If this is true, and multiple objects have the same values
1072          for the attributes that you specify in the `select` parameter, then each unique
1073          set of values will only be returned once in the result set. Default `False`.
1074
1075        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1076          Refer to the [filters reference][] for more information about how to write filters. 
1077
1078          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1079
1080        * include_trash: bool --- Include container requests whose owner project is trashed. Default `False`.
1081
1082        * limit: int --- The maximum number of objects to return in the result.
1083          Note that the API may return fewer results than this if your request hits other
1084          limits set by the administrator. Default `100`.
1085
1086        * offset: int --- Return matching objects starting from this index.
1087          Note that result indexes may change if objects are modified in between a series
1088          of list calls. Default `0`.
1089
1090        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1091          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1092          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1093
1094        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1095
1096        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1097          The keys of this object are attribute names.
1098          Each value is either a single matching value or an array of matching values for that attribute.
1099          The `filters` parameter is more flexible and preferred.
1100        """
1101
1102    def update(self, *, body: "Dict[Literal['container_request'], ContainerRequest]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1103        """Update attributes of an existing ContainerRequest.
1104
1105        Required parameters:
1106
1107        * body: Dict[Literal['container_request'], ContainerRequest] --- A dictionary with a single item `'container_request'`.
1108          Its value is a `ContainerRequest` dictionary defining the attributes to set. 
1109
1110        * uuid: str --- The UUID of the ContainerRequest to update. 
1111
1112        Optional parameters:
1113
1114        * select: Optional[List] --- An array of names of attributes to return in the response.
1115        """

Methods to query and manipulate Arvados container requests

def container_status( self, *, uuid: str) -> ArvadosAPIRequest[ContainerRequest]:
 997    def container_status(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ContainerRequest]':
 998        """Return scheduling details for a container request.
 999
1000        Required parameters:
1001
1002        * uuid: str --- The UUID of the container request to query.
1003        """

Return scheduling details for a container request.

Required parameters:

  • uuid: str — The UUID of the container request to query.
def create( self, *, body: Dict[Literal['container_request'], ContainerRequest], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[ContainerRequest]:
1005    def create(self, *, body: "Dict[Literal['container_request'], ContainerRequest]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1006        """Create a new ContainerRequest.
1007
1008        Required parameters:
1009
1010        * body: Dict[Literal['container_request'], ContainerRequest] --- A dictionary with a single item `'container_request'`.
1011          Its value is a `ContainerRequest` dictionary defining the attributes to set. 
1012
1013        Optional parameters:
1014
1015        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1016
1017        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1018
1019        * select: Optional[List] --- An array of names of attributes to return in the response.
1020        """

Create a new ContainerRequest.

Required parameters:

  • body: Dict[Literal[’container_request’], ContainerRequest] — A dictionary with a single item 'container_request'. Its value is a ContainerRequest dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[ContainerRequest]:
1022    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[ContainerRequest]':
1023        """Delete an existing ContainerRequest.
1024
1025        Required parameters:
1026
1027        * uuid: str --- The UUID of the ContainerRequest to delete.
1028        """

Delete an existing ContainerRequest.

Required parameters:

  • uuid: str — The UUID of the ContainerRequest to delete.
def get( self, *, uuid: str, include_trash: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[ContainerRequest]:
1030    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1031        """Get a ContainerRequest record by UUID.
1032
1033        Required parameters:
1034
1035        * uuid: str --- The UUID of the ContainerRequest to return. 
1036
1037        Optional parameters:
1038
1039        * include_trash: bool --- Show container request even if its owner project is trashed. Default `False`.
1040
1041        * select: Optional[List] --- An array of names of attributes to return in the response.
1042        """

Get a ContainerRequest record by UUID.

Required parameters:

  • uuid: str — The UUID of the ContainerRequest to return.

Optional parameters:

  • include_trash: bool — Show container request even if its owner project is trashed. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, include_trash: bool = False, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[ContainerRequestList]:
1044    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ContainerRequestList]':
1045        """Retrieve a ContainerRequestList.
1046
1047        This method returns a single page of `ContainerRequest` objects that match your search
1048        criteria. If you just want to iterate all objects that match your search
1049        criteria, consider using `arvados.util.keyset_list_all`.
1050
1051        Optional parameters:
1052
1053        * bypass_federation: bool --- If true, do not return results from other clusters in the
1054          federation, only the cluster that received the request.
1055          You must be an administrator to use this flag. Default `False`.
1056
1057        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1058
1059        * count: str --- A string to determine result counting behavior. Supported values are:
1060
1061          * `"exact"`: The response will include an `items_available` field that
1062            counts the number of objects that matched this search criteria,
1063            including ones not included in `items`.
1064
1065          * `"none"`: The response will not include an `items_avaliable`
1066            field. This improves performance by returning a result as soon as enough
1067            `items` have been loaded for this result.
1068
1069          Default `'exact'`.
1070
1071        * distinct: bool --- If this is true, and multiple objects have the same values
1072          for the attributes that you specify in the `select` parameter, then each unique
1073          set of values will only be returned once in the result set. Default `False`.
1074
1075        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1076          Refer to the [filters reference][] for more information about how to write filters. 
1077
1078          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1079
1080        * include_trash: bool --- Include container requests whose owner project is trashed. Default `False`.
1081
1082        * limit: int --- The maximum number of objects to return in the result.
1083          Note that the API may return fewer results than this if your request hits other
1084          limits set by the administrator. Default `100`.
1085
1086        * offset: int --- Return matching objects starting from this index.
1087          Note that result indexes may change if objects are modified in between a series
1088          of list calls. Default `0`.
1089
1090        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1091          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1092          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1093
1094        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1095
1096        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1097          The keys of this object are attribute names.
1098          Each value is either a single matching value or an array of matching values for that attribute.
1099          The `filters` parameter is more flexible and preferred.
1100        """

Retrieve a ContainerRequestList.

This method returns a single page of ContainerRequest objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • include_trash: bool — Include container requests whose owner project is trashed. Default False.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def update( self, *, body: Dict[Literal['container_request'], ContainerRequest], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[ContainerRequest]:
1102    def update(self, *, body: "Dict[Literal['container_request'], ContainerRequest]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[ContainerRequest]':
1103        """Update attributes of an existing ContainerRequest.
1104
1105        Required parameters:
1106
1107        * body: Dict[Literal['container_request'], ContainerRequest] --- A dictionary with a single item `'container_request'`.
1108          Its value is a `ContainerRequest` dictionary defining the attributes to set. 
1109
1110        * uuid: str --- The UUID of the ContainerRequest to update. 
1111
1112        Optional parameters:
1113
1114        * select: Optional[List] --- An array of names of attributes to return in the response.
1115        """

Update attributes of an existing ContainerRequest.

Required parameters:

  • body: Dict[Literal[’container_request’], ContainerRequest] — A dictionary with a single item 'container_request'. Its value is a ContainerRequest dictionary defining the attributes to set.

  • uuid: str — The UUID of the ContainerRequest to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class Container(typing.TypedDict):
1118class Container(TypedDict, total=False):
1119    """Arvados container record
1120
1121    A container represents compute work that has been or should be dispatched,
1122    along with its results. A container can satisfy one or more container requests.
1123
1124    This is the dictionary object that represents a single Container in Arvados
1125    and is returned by most `Containers` methods.
1126    The keys of the dictionary are documented below, along with their types.
1127    Not every key may appear in every dictionary returned by an API call.
1128    When a method doesn't return all the data, you can use its `select` parameter
1129    to list the specific keys you need. Refer to the API documentation for details.
1130    """
1131    etag: 'str'
1132    """Object cache version."""
1133    uuid: 'str'
1134    """This container's Arvados UUID, like `zzzzz-dz642-12345abcde67890`."""
1135    owner_uuid: 'str'
1136    """The UUID of the user or group that owns this container."""
1137    created_at: 'str'
1138    """The time this container was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1139    modified_at: 'str'
1140    """The time this container was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1141    modified_by_user_uuid: 'str'
1142    """The UUID of the user that last updated this container."""
1143    state: 'str'
1144    """A string representing the container's current execution status. Possible
1145    values are:
1146
1147      * `"Queued"` --- This container has not been dispatched yet.
1148      * `"Locked"` --- A dispatcher has claimed this container in preparation to run it.
1149      * `"Running"` --- A dispatcher is running this container.
1150      * `"Cancelled"` --- Container execution has been cancelled by user request.
1151      * `"Complete"` --- A dispatcher ran this container to completion and recorded the results.
1152    """
1153    started_at: 'str'
1154    """The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1155    finished_at: 'str'
1156    """The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1157    log: 'str'
1158    """The portable data hash of the Arvados collection that contains this
1159    container's logs.
1160    """
1161    environment: 'Dict[str, Any]'
1162    """A hash of string keys and values that defines the environment variables
1163    for the dispatcher to set when it executes this container.
1164    """
1165    cwd: 'str'
1166    """A string that the defines the working directory that the dispatcher should
1167    use when it executes the command inside this container.
1168    """
1169    command: 'List'
1170    """An array of strings that defines the command that the dispatcher should
1171    execute inside this container.
1172    """
1173    output_path: 'str'
1174    """A string that defines the file or directory path where the command
1175    writes output that should be saved from this container.
1176    """
1177    mounts: 'Dict[str, Any]'
1178    """A hash where each key names a directory inside this container, and its
1179    value is an object that defines the mount source for that directory. Refer
1180    to the [mount types reference][] for details.
1181
1182    [mount types reference]: https://doc.arvados.org/api/methods/containers.html#mount_types
1183    """
1184    runtime_constraints: 'Dict[str, Any]'
1185    """A hash that identifies compute resources this container requires to run
1186    successfully. See the [runtime constraints reference][] for details.
1187
1188    [runtime constraints reference]: https://doc.arvados.org/api/methods/containers.html#runtime_constraints
1189    """
1190    output: 'str'
1191    """The portable data hash of the Arvados collection that contains this
1192    container's output file(s).
1193    """
1194    container_image: 'str'
1195    """The portable data hash of the Arvados collection that contains the image
1196    to use for this container.
1197    """
1198    progress: 'float'
1199    """A float between 0.0 and 1.0 (inclusive) that represents the container's
1200    execution progress. This attribute is not implemented yet.
1201    """
1202    priority: 'int'
1203    """An integer between 0 and 1000 (inclusive) that represents this container's
1204    scheduling priority. 0 represents a request to be cancelled. Higher
1205    values represent higher priority. Refer to the [priority reference][] for details.
1206
1207    [priority reference]: https://doc.arvados.org/api/methods/container_requests.html#priority
1208    """
1209    exit_code: 'int'
1210    """An integer that records the Unix exit code of the `command` from a
1211    finished container.
1212    """
1213    auth_uuid: 'str'
1214    """The UUID of the Arvados API client authorization token that a dispatcher
1215    should use to set up this container. This token is automatically created by
1216    Arvados and this attribute automatically assigned unless a container is
1217    created with `runtime_token`.
1218    """
1219    locked_by_uuid: 'str'
1220    """The UUID of the Arvados API client authorization token that successfully
1221    locked this container in preparation to execute it.
1222    """
1223    scheduling_parameters: 'Dict[str, Any]'
1224    """A hash of scheduling parameters that should be passed to the underlying
1225    dispatcher when this container is run.
1226    See the [scheduling parameters reference][] for details.
1227
1228    [scheduling parameters reference]: https://doc.arvados.org/api/methods/containers.html#scheduling_parameters
1229    """
1230    runtime_status: 'Dict[str, Any]'
1231    """A hash with status updates from a running container.
1232    Refer to the [runtime status reference][] for details.
1233
1234    [runtime status reference]: https://doc.arvados.org/api/methods/containers.html#runtime_status
1235    """
1236    runtime_user_uuid: 'str'
1237    """The UUID of the Arvados user associated with the API client authorization
1238    token used to run this container.
1239    """
1240    runtime_auth_scopes: 'List'
1241    """The `scopes` from the API client authorization token used to run this container."""
1242    lock_count: 'int'
1243    """The number of times this container has been locked by a dispatcher. This
1244    may be greater than 1 if a dispatcher locks a container but then execution is
1245    interrupted for any reason.
1246    """
1247    gateway_address: 'str'
1248    """A string with the address of the Arvados gateway server, in `HOST:PORT`
1249    format. This is for internal use only.
1250    """
1251    interactive_session_started: 'bool'
1252    """This flag is set true if any user starts an interactive shell inside the
1253    running container.
1254    """
1255    output_storage_classes: 'List'
1256    """An array of strings identifying the storage class(es) that should be set
1257    on the output collection of this container. Storage classes are configured by
1258    the cluster administrator.
1259    """
1260    output_properties: 'Dict[str, Any]'
1261    """A hash of arbitrary metadata to set on the output collection of this container.
1262    Some keys may be reserved by Arvados or defined by a configured vocabulary.
1263    Refer to the [metadata properties reference][] for details.
1264
1265    [metadata properties reference]: https://doc.arvados.org/api/properties.html
1266    """
1267    cost: 'float'
1268    """A float with the estimated cost of the cloud instance used to run this
1269    container. The value is `0` if cost estimation is not available on this cluster.
1270    """
1271    subrequests_cost: 'float'
1272    """A float with the estimated cost of all cloud instances used to run this
1273    container and all its subrequests. The value is `0` if cost estimation is not
1274    available on this cluster.
1275    """
1276    output_glob: 'List'
1277    """An array of strings of shell-style glob patterns that define which file(s)
1278    and subdirectory(ies) under the `output_path` directory should be recorded in
1279    the container's final output. Refer to the [glob patterns reference][] for details.
1280
1281    [glob patterns reference]: https://doc.arvados.org/api/methods/containers.html#glob_patterns
1282    """
1283    service: 'bool'
1284    """A boolean flag. If set, it informs the system that this is a long-running container
1285    that functions as a system service or web app, rather than a once-through batch operation.
1286    """
1287    published_ports: 'jsonb'
1288    """A hash where keys are numeric TCP ports on the container which expose HTTP services.  Arvados
1289    will proxy HTTP requests to these ports.  Values are hashes with the following keys:
1290
1291      * `"access"` --- One of 'private' or 'public' indicating if an Arvados API token is required to access the endpoint.
1292      * `"label"` --- A human readable label describing the service, for display in Workbench.
1293      * `"initial_path"` --- The relative path that should be included when constructing the URL that will be presented to the user in Workbench.
1294    """

Arvados container record

A container represents compute work that has been or should be dispatched, along with its results. A container can satisfy one or more container requests.

This is the dictionary object that represents a single Container in Arvados and is returned by most Containers methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This container’s Arvados UUID, like zzzzz-dz642-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this container.

created_at: str

The time this container was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_at: str

The time this container was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_by_user_uuid: str

The UUID of the user that last updated this container.

state: str

A string representing the container’s current execution status. Possible values are:

  • "Queued" — This container has not been dispatched yet.
  • "Locked" — A dispatcher has claimed this container in preparation to run it.
  • "Running" — A dispatcher is running this container.
  • "Cancelled" — Container execution has been cancelled by user request.
  • "Complete" — A dispatcher ran this container to completion and recorded the results.
started_at: str

The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

finished_at: str

The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

log: str

The portable data hash of the Arvados collection that contains this container’s logs.

environment: Dict[str, Any]

A hash of string keys and values that defines the environment variables for the dispatcher to set when it executes this container.

cwd: str

A string that the defines the working directory that the dispatcher should use when it executes the command inside this container.

command: List

An array of strings that defines the command that the dispatcher should execute inside this container.

output_path: str

A string that defines the file or directory path where the command writes output that should be saved from this container.

mounts: Dict[str, Any]

A hash where each key names a directory inside this container, and its value is an object that defines the mount source for that directory. Refer to the mount types reference for details.

runtime_constraints: Dict[str, Any]

A hash that identifies compute resources this container requires to run successfully. See the runtime constraints reference for details.

output: str

The portable data hash of the Arvados collection that contains this container’s output file(s).

container_image: str

The portable data hash of the Arvados collection that contains the image to use for this container.

progress: float

A float between 0.0 and 1.0 (inclusive) that represents the container’s execution progress. This attribute is not implemented yet.

priority: int

An integer between 0 and 1000 (inclusive) that represents this container’s scheduling priority. 0 represents a request to be cancelled. Higher values represent higher priority. Refer to the priority reference for details.

exit_code: int

An integer that records the Unix exit code of the command from a finished container.

auth_uuid: str

The UUID of the Arvados API client authorization token that a dispatcher should use to set up this container. This token is automatically created by Arvados and this attribute automatically assigned unless a container is created with runtime_token.

locked_by_uuid: str

The UUID of the Arvados API client authorization token that successfully locked this container in preparation to execute it.

scheduling_parameters: Dict[str, Any]

A hash of scheduling parameters that should be passed to the underlying dispatcher when this container is run. See the scheduling parameters reference for details.

runtime_status: Dict[str, Any]

A hash with status updates from a running container. Refer to the runtime status reference for details.

runtime_user_uuid: str

The UUID of the Arvados user associated with the API client authorization token used to run this container.

runtime_auth_scopes: List

The scopes from the API client authorization token used to run this container.

lock_count: int

The number of times this container has been locked by a dispatcher. This may be greater than 1 if a dispatcher locks a container but then execution is interrupted for any reason.

gateway_address: str

A string with the address of the Arvados gateway server, in HOST:PORT format. This is for internal use only.

interactive_session_started: bool

This flag is set true if any user starts an interactive shell inside the running container.

output_storage_classes: List

An array of strings identifying the storage class(es) that should be set on the output collection of this container. Storage classes are configured by the cluster administrator.

output_properties: Dict[str, Any]

A hash of arbitrary metadata to set on the output collection of this container. Some keys may be reserved by Arvados or defined by a configured vocabulary. Refer to the metadata properties reference for details.

cost: float

A float with the estimated cost of the cloud instance used to run this container. The value is 0 if cost estimation is not available on this cluster.

subrequests_cost: float

A float with the estimated cost of all cloud instances used to run this container and all its subrequests. The value is 0 if cost estimation is not available on this cluster.

output_glob: List

An array of strings of shell-style glob patterns that define which file(s) and subdirectory(ies) under the output_path directory should be recorded in the container’s final output. Refer to the glob patterns reference for details.

service: bool

A boolean flag. If set, it informs the system that this is a long-running container that functions as a system service or web app, rather than a once-through batch operation.

published_ports: ForwardRef('jsonb')

A hash where keys are numeric TCP ports on the container which expose HTTP services. Arvados will proxy HTTP requests to these ports. Values are hashes with the following keys:

  • "access" — One of ‘private’ or ‘public’ indicating if an Arvados API token is required to access the endpoint.
  • "label" — A human readable label describing the service, for display in Workbench.
  • "initial_path" — The relative path that should be included when constructing the URL that will be presented to the user in Workbench.
class ContainerList(typing.TypedDict):
1297class ContainerList(TypedDict, total=False):
1298    """A list of Container objects.
1299
1300    This is the dictionary object returned when you call `Containers.list`.
1301    If you just want to iterate all objects that match your search criteria,
1302    consider using `arvados.util.keyset_list_all`.
1303    If you work with this raw object, the keys of the dictionary are documented
1304    below, along with their types. The `items` key maps to a list of matching
1305    `Container` objects.
1306    """
1307    kind: 'str' = 'arvados#containerList'
1308    """Object type. Always arvados#containerList."""
1309    etag: 'str'
1310    """List cache version."""
1311    items: 'List[Container]'
1312    """An array of matching Container objects."""

A list of Container objects.

This is the dictionary object returned when you call Containers.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching Container objects.

kind: str = 'arvados#containerList'

Object type. Always arvados#containerList.

etag: str

List cache version.

items: List[Container]

An array of matching Container objects.

class Containers:
1315class Containers:
1316    """Methods to query and manipulate Arvados containers"""
1317
1318    def auth(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1319        """Get the API client authorization token associated with this container.
1320
1321        Required parameters:
1322
1323        * uuid: str --- The UUID of the Container to query.
1324        """
1325
1326    def create(self, *, body: "Dict[Literal['container'], Container]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1327        """Create a new Container.
1328
1329        Required parameters:
1330
1331        * body: Dict[Literal['container'], Container] --- A dictionary with a single item `'container'`.
1332          Its value is a `Container` dictionary defining the attributes to set. 
1333
1334        Optional parameters:
1335
1336        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1337
1338        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1339
1340        * select: Optional[List] --- An array of names of attributes to return in the response.
1341        """
1342
1343    def current(self) -> 'ArvadosAPIRequest[Container]':
1344        """Return the container record associated with the API token authorizing this request."""
1345
1346    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1347        """Delete an existing Container.
1348
1349        Required parameters:
1350
1351        * uuid: str --- The UUID of the Container to delete.
1352        """
1353
1354    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1355        """Get a Container record by UUID.
1356
1357        Required parameters:
1358
1359        * uuid: str --- The UUID of the Container to return. 
1360
1361        Optional parameters:
1362
1363        * select: Optional[List] --- An array of names of attributes to return in the response.
1364        """
1365
1366    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ContainerList]':
1367        """Retrieve a ContainerList.
1368
1369        This method returns a single page of `Container` objects that match your search
1370        criteria. If you just want to iterate all objects that match your search
1371        criteria, consider using `arvados.util.keyset_list_all`.
1372
1373        Optional parameters:
1374
1375        * bypass_federation: bool --- If true, do not return results from other clusters in the
1376          federation, only the cluster that received the request.
1377          You must be an administrator to use this flag. Default `False`.
1378
1379        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1380
1381        * count: str --- A string to determine result counting behavior. Supported values are:
1382
1383          * `"exact"`: The response will include an `items_available` field that
1384            counts the number of objects that matched this search criteria,
1385            including ones not included in `items`.
1386
1387          * `"none"`: The response will not include an `items_avaliable`
1388            field. This improves performance by returning a result as soon as enough
1389            `items` have been loaded for this result.
1390
1391          Default `'exact'`.
1392
1393        * distinct: bool --- If this is true, and multiple objects have the same values
1394          for the attributes that you specify in the `select` parameter, then each unique
1395          set of values will only be returned once in the result set. Default `False`.
1396
1397        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1398          Refer to the [filters reference][] for more information about how to write filters. 
1399
1400          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1401
1402        * limit: int --- The maximum number of objects to return in the result.
1403          Note that the API may return fewer results than this if your request hits other
1404          limits set by the administrator. Default `100`.
1405
1406        * offset: int --- Return matching objects starting from this index.
1407          Note that result indexes may change if objects are modified in between a series
1408          of list calls. Default `0`.
1409
1410        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1411          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1412          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1413
1414        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1415
1416        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1417          The keys of this object are attribute names.
1418          Each value is either a single matching value or an array of matching values for that attribute.
1419          The `filters` parameter is more flexible and preferred.
1420        """
1421
1422    def lock(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1423        """Lock a container (for a dispatcher to begin running it).
1424
1425        Required parameters:
1426
1427        * uuid: str --- The UUID of the Container to update.
1428        """
1429
1430    def secret_mounts(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1431        """Return secret mount information for the container associated with the API token authorizing this request.
1432
1433        Required parameters:
1434
1435        * uuid: str --- The UUID of the Container to query.
1436        """
1437
1438    def unlock(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1439        """Unlock a container (for a dispatcher to stop running it).
1440
1441        Required parameters:
1442
1443        * uuid: str --- The UUID of the Container to update.
1444        """
1445
1446    def update(self, *, body: "Dict[Literal['container'], Container]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1447        """Update attributes of an existing Container.
1448
1449        Required parameters:
1450
1451        * body: Dict[Literal['container'], Container] --- A dictionary with a single item `'container'`.
1452          Its value is a `Container` dictionary defining the attributes to set. 
1453
1454        * uuid: str --- The UUID of the Container to update. 
1455
1456        Optional parameters:
1457
1458        * select: Optional[List] --- An array of names of attributes to return in the response.
1459        """
1460
1461    def update_priority(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1462        """Recalculate and return the priority of a given container.
1463
1464        Required parameters:
1465
1466        * uuid: str --- The UUID of the Container to update.
1467        """

Methods to query and manipulate Arvados containers

def auth( self, *, uuid: str) -> ArvadosAPIRequest[Container]:
1318    def auth(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1319        """Get the API client authorization token associated with this container.
1320
1321        Required parameters:
1322
1323        * uuid: str --- The UUID of the Container to query.
1324        """

Get the API client authorization token associated with this container.

Required parameters:

  • uuid: str — The UUID of the Container to query.
def create( self, *, body: Dict[Literal['container'], Container], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[Container]:
1326    def create(self, *, body: "Dict[Literal['container'], Container]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1327        """Create a new Container.
1328
1329        Required parameters:
1330
1331        * body: Dict[Literal['container'], Container] --- A dictionary with a single item `'container'`.
1332          Its value is a `Container` dictionary defining the attributes to set. 
1333
1334        Optional parameters:
1335
1336        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1337
1338        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1339
1340        * select: Optional[List] --- An array of names of attributes to return in the response.
1341        """

Create a new Container.

Required parameters:

  • body: Dict[Literal[’container’], Container] — A dictionary with a single item 'container'. Its value is a Container dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def current( self) -> ArvadosAPIRequest[Container]:
1343    def current(self) -> 'ArvadosAPIRequest[Container]':
1344        """Return the container record associated with the API token authorizing this request."""

Return the container record associated with the API token authorizing this request.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[Container]:
1346    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1347        """Delete an existing Container.
1348
1349        Required parameters:
1350
1351        * uuid: str --- The UUID of the Container to delete.
1352        """

Delete an existing Container.

Required parameters:

  • uuid: str — The UUID of the Container to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[Container]:
1354    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1355        """Get a Container record by UUID.
1356
1357        Required parameters:
1358
1359        * uuid: str --- The UUID of the Container to return. 
1360
1361        Optional parameters:
1362
1363        * select: Optional[List] --- An array of names of attributes to return in the response.
1364        """

Get a Container record by UUID.

Required parameters:

  • uuid: str — The UUID of the Container to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[ContainerList]:
1366    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[ContainerList]':
1367        """Retrieve a ContainerList.
1368
1369        This method returns a single page of `Container` objects that match your search
1370        criteria. If you just want to iterate all objects that match your search
1371        criteria, consider using `arvados.util.keyset_list_all`.
1372
1373        Optional parameters:
1374
1375        * bypass_federation: bool --- If true, do not return results from other clusters in the
1376          federation, only the cluster that received the request.
1377          You must be an administrator to use this flag. Default `False`.
1378
1379        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1380
1381        * count: str --- A string to determine result counting behavior. Supported values are:
1382
1383          * `"exact"`: The response will include an `items_available` field that
1384            counts the number of objects that matched this search criteria,
1385            including ones not included in `items`.
1386
1387          * `"none"`: The response will not include an `items_avaliable`
1388            field. This improves performance by returning a result as soon as enough
1389            `items` have been loaded for this result.
1390
1391          Default `'exact'`.
1392
1393        * distinct: bool --- If this is true, and multiple objects have the same values
1394          for the attributes that you specify in the `select` parameter, then each unique
1395          set of values will only be returned once in the result set. Default `False`.
1396
1397        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1398          Refer to the [filters reference][] for more information about how to write filters. 
1399
1400          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1401
1402        * limit: int --- The maximum number of objects to return in the result.
1403          Note that the API may return fewer results than this if your request hits other
1404          limits set by the administrator. Default `100`.
1405
1406        * offset: int --- Return matching objects starting from this index.
1407          Note that result indexes may change if objects are modified in between a series
1408          of list calls. Default `0`.
1409
1410        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1411          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1412          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1413
1414        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1415
1416        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1417          The keys of this object are attribute names.
1418          Each value is either a single matching value or an array of matching values for that attribute.
1419          The `filters` parameter is more flexible and preferred.
1420        """

Retrieve a ContainerList.

This method returns a single page of Container objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def lock( self, *, uuid: str) -> ArvadosAPIRequest[Container]:
1422    def lock(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1423        """Lock a container (for a dispatcher to begin running it).
1424
1425        Required parameters:
1426
1427        * uuid: str --- The UUID of the Container to update.
1428        """

Lock a container (for a dispatcher to begin running it).

Required parameters:

  • uuid: str — The UUID of the Container to update.
def secret_mounts( self, *, uuid: str) -> ArvadosAPIRequest[Container]:
1430    def secret_mounts(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1431        """Return secret mount information for the container associated with the API token authorizing this request.
1432
1433        Required parameters:
1434
1435        * uuid: str --- The UUID of the Container to query.
1436        """

Return secret mount information for the container associated with the API token authorizing this request.

Required parameters:

  • uuid: str — The UUID of the Container to query.
def unlock( self, *, uuid: str) -> ArvadosAPIRequest[Container]:
1438    def unlock(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1439        """Unlock a container (for a dispatcher to stop running it).
1440
1441        Required parameters:
1442
1443        * uuid: str --- The UUID of the Container to update.
1444        """

Unlock a container (for a dispatcher to stop running it).

Required parameters:

  • uuid: str — The UUID of the Container to update.
def update( self, *, body: Dict[Literal['container'], Container], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[Container]:
1446    def update(self, *, body: "Dict[Literal['container'], Container]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Container]':
1447        """Update attributes of an existing Container.
1448
1449        Required parameters:
1450
1451        * body: Dict[Literal['container'], Container] --- A dictionary with a single item `'container'`.
1452          Its value is a `Container` dictionary defining the attributes to set. 
1453
1454        * uuid: str --- The UUID of the Container to update. 
1455
1456        Optional parameters:
1457
1458        * select: Optional[List] --- An array of names of attributes to return in the response.
1459        """

Update attributes of an existing Container.

Required parameters:

  • body: Dict[Literal[’container’], Container] — A dictionary with a single item 'container'. Its value is a Container dictionary defining the attributes to set.

  • uuid: str — The UUID of the Container to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def update_priority( self, *, uuid: str) -> ArvadosAPIRequest[Container]:
1461    def update_priority(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Container]':
1462        """Recalculate and return the priority of a given container.
1463
1464        Required parameters:
1465
1466        * uuid: str --- The UUID of the Container to update.
1467        """

Recalculate and return the priority of a given container.

Required parameters:

  • uuid: str — The UUID of the Container to update.
class Credential(typing.TypedDict):
1470class Credential(TypedDict, total=False):
1471    """Arvados credential.
1472
1473    This is the dictionary object that represents a single Credential in Arvados
1474    and is returned by most `Credentials` methods.
1475    The keys of the dictionary are documented below, along with their types.
1476    Not every key may appear in every dictionary returned by an API call.
1477    When a method doesn't return all the data, you can use its `select` parameter
1478    to list the specific keys you need. Refer to the API documentation for details.
1479    """
1480    etag: 'str'
1481    """Object cache version."""
1482    uuid: 'str'
1483    """This credential's Arvados UUID, like `zzzzz-oss07-12345abcde67890`."""
1484    owner_uuid: 'str'
1485    """The UUID of the user or group that owns this credential."""
1486    created_at: 'str'
1487    """The time this credential was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1488    modified_at: 'str'
1489    """The time this credential was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1490    modified_by_user_uuid: 'str'
1491    """The UUID of the user that last updated this credential."""
1492    name: 'str'
1493    """The name of this credential assigned by a user."""
1494    description: 'str'
1495    """A longer HTML description of this credential assigned by a user.
1496    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
1497    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
1498    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
1499    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
1500    """
1501    credential_class: 'str'
1502    """The type of credential being stored."""
1503    scopes: 'List'
1504    """The resources the credential applies to or should be used with."""
1505    external_id: 'str'
1506    """The non-secret external identifier associated with a credential, e.g. a username."""
1507    expires_at: 'str'
1508    """Date after which the credential_secret field is no longer valid. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""

Arvados credential.

This is the dictionary object that represents a single Credential in Arvados and is returned by most Credentials methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This credential’s Arvados UUID, like zzzzz-oss07-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this credential.

created_at: str

The time this credential was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_at: str

The time this credential was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_by_user_uuid: str

The UUID of the user that last updated this credential.

name: str

The name of this credential assigned by a user.

description: str

A longer HTML description of this credential assigned by a user. Allowed HTML tags are a, b, blockquote, br, code, del, dd, dl, dt, em, h1, h2, h3, h4, h5, h6, hr, i, img, kbd, li, ol, p, pre, s, section, span, strong, sub, sup, and ul.

credential_class: str

The type of credential being stored.

scopes: List

The resources the credential applies to or should be used with.

external_id: str

The non-secret external identifier associated with a credential, e.g. a username.

expires_at: str

Date after which the credential_secret field is no longer valid. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

class CredentialList(typing.TypedDict):
1511class CredentialList(TypedDict, total=False):
1512    """A list of Credential objects.
1513
1514    This is the dictionary object returned when you call `Credentials.list`.
1515    If you just want to iterate all objects that match your search criteria,
1516    consider using `arvados.util.keyset_list_all`.
1517    If you work with this raw object, the keys of the dictionary are documented
1518    below, along with their types. The `items` key maps to a list of matching
1519    `Credential` objects.
1520    """
1521    kind: 'str' = 'arvados#credentialList'
1522    """Object type. Always arvados#credentialList."""
1523    etag: 'str'
1524    """List cache version."""
1525    items: 'List[Credential]'
1526    """An array of matching Credential objects."""

A list of Credential objects.

This is the dictionary object returned when you call Credentials.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching Credential objects.

kind: str = 'arvados#credentialList'

Object type. Always arvados#credentialList.

etag: str

List cache version.

items: List[Credential]

An array of matching Credential objects.

class Credentials:
1529class Credentials:
1530    """Methods to query and manipulate Arvados credentials"""
1531
1532    def create(self, *, body: "Dict[Literal['credential'], Credential]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1533        """Create a new Credential.
1534
1535        Required parameters:
1536
1537        * body: Dict[Literal['credential'], Credential] --- A dictionary with a single item `'credential'`.
1538          Its value is a `Credential` dictionary defining the attributes to set. 
1539
1540        Optional parameters:
1541
1542        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1543
1544        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1545
1546        * select: Optional[List] --- An array of names of attributes to return in the response.
1547        """
1548
1549    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Credential]':
1550        """Delete an existing Credential.
1551
1552        Required parameters:
1553
1554        * uuid: str --- The UUID of the Credential to delete.
1555        """
1556
1557    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1558        """Get a Credential record by UUID.
1559
1560        Required parameters:
1561
1562        * uuid: str --- The UUID of the Credential to return. 
1563
1564        Optional parameters:
1565
1566        * select: Optional[List] --- An array of names of attributes to return in the response.
1567        """
1568
1569    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[CredentialList]':
1570        """Retrieve a CredentialList.
1571
1572        This method returns a single page of `Credential` objects that match your search
1573        criteria. If you just want to iterate all objects that match your search
1574        criteria, consider using `arvados.util.keyset_list_all`.
1575
1576        Optional parameters:
1577
1578        * bypass_federation: bool --- If true, do not return results from other clusters in the
1579          federation, only the cluster that received the request.
1580          You must be an administrator to use this flag. Default `False`.
1581
1582        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1583
1584        * count: str --- A string to determine result counting behavior. Supported values are:
1585
1586          * `"exact"`: The response will include an `items_available` field that
1587            counts the number of objects that matched this search criteria,
1588            including ones not included in `items`.
1589
1590          * `"none"`: The response will not include an `items_avaliable`
1591            field. This improves performance by returning a result as soon as enough
1592            `items` have been loaded for this result.
1593
1594          Default `'exact'`.
1595
1596        * distinct: bool --- If this is true, and multiple objects have the same values
1597          for the attributes that you specify in the `select` parameter, then each unique
1598          set of values will only be returned once in the result set. Default `False`.
1599
1600        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1601          Refer to the [filters reference][] for more information about how to write filters. 
1602
1603          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1604
1605        * limit: int --- The maximum number of objects to return in the result.
1606          Note that the API may return fewer results than this if your request hits other
1607          limits set by the administrator. Default `100`.
1608
1609        * offset: int --- Return matching objects starting from this index.
1610          Note that result indexes may change if objects are modified in between a series
1611          of list calls. Default `0`.
1612
1613        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1614          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1615          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1616
1617        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1618
1619        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1620          The keys of this object are attribute names.
1621          Each value is either a single matching value or an array of matching values for that attribute.
1622          The `filters` parameter is more flexible and preferred.
1623        """
1624
1625    def secret(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Credential]':
1626        """Fetch the secret part of the credential (can only be invoked by running containers).
1627
1628        Required parameters:
1629
1630        * uuid: str --- The UUID of the Credential to query.
1631        """
1632
1633    def update(self, *, body: "Dict[Literal['credential'], Credential]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1634        """Update attributes of an existing Credential.
1635
1636        Required parameters:
1637
1638        * body: Dict[Literal['credential'], Credential] --- A dictionary with a single item `'credential'`.
1639          Its value is a `Credential` dictionary defining the attributes to set. 
1640
1641        * uuid: str --- The UUID of the Credential to update. 
1642
1643        Optional parameters:
1644
1645        * select: Optional[List] --- An array of names of attributes to return in the response.
1646        """

Methods to query and manipulate Arvados credentials

def create( self, *, body: Dict[Literal['credential'], Credential], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[Credential]:
1532    def create(self, *, body: "Dict[Literal['credential'], Credential]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1533        """Create a new Credential.
1534
1535        Required parameters:
1536
1537        * body: Dict[Literal['credential'], Credential] --- A dictionary with a single item `'credential'`.
1538          Its value is a `Credential` dictionary defining the attributes to set. 
1539
1540        Optional parameters:
1541
1542        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1543
1544        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1545
1546        * select: Optional[List] --- An array of names of attributes to return in the response.
1547        """

Create a new Credential.

Required parameters:

  • body: Dict[Literal[’credential’], Credential] — A dictionary with a single item 'credential'. Its value is a Credential dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[Credential]:
1549    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Credential]':
1550        """Delete an existing Credential.
1551
1552        Required parameters:
1553
1554        * uuid: str --- The UUID of the Credential to delete.
1555        """

Delete an existing Credential.

Required parameters:

  • uuid: str — The UUID of the Credential to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[Credential]:
1557    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1558        """Get a Credential record by UUID.
1559
1560        Required parameters:
1561
1562        * uuid: str --- The UUID of the Credential to return. 
1563
1564        Optional parameters:
1565
1566        * select: Optional[List] --- An array of names of attributes to return in the response.
1567        """

Get a Credential record by UUID.

Required parameters:

  • uuid: str — The UUID of the Credential to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[CredentialList]:
1569    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[CredentialList]':
1570        """Retrieve a CredentialList.
1571
1572        This method returns a single page of `Credential` objects that match your search
1573        criteria. If you just want to iterate all objects that match your search
1574        criteria, consider using `arvados.util.keyset_list_all`.
1575
1576        Optional parameters:
1577
1578        * bypass_federation: bool --- If true, do not return results from other clusters in the
1579          federation, only the cluster that received the request.
1580          You must be an administrator to use this flag. Default `False`.
1581
1582        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1583
1584        * count: str --- A string to determine result counting behavior. Supported values are:
1585
1586          * `"exact"`: The response will include an `items_available` field that
1587            counts the number of objects that matched this search criteria,
1588            including ones not included in `items`.
1589
1590          * `"none"`: The response will not include an `items_avaliable`
1591            field. This improves performance by returning a result as soon as enough
1592            `items` have been loaded for this result.
1593
1594          Default `'exact'`.
1595
1596        * distinct: bool --- If this is true, and multiple objects have the same values
1597          for the attributes that you specify in the `select` parameter, then each unique
1598          set of values will only be returned once in the result set. Default `False`.
1599
1600        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1601          Refer to the [filters reference][] for more information about how to write filters. 
1602
1603          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1604
1605        * limit: int --- The maximum number of objects to return in the result.
1606          Note that the API may return fewer results than this if your request hits other
1607          limits set by the administrator. Default `100`.
1608
1609        * offset: int --- Return matching objects starting from this index.
1610          Note that result indexes may change if objects are modified in between a series
1611          of list calls. Default `0`.
1612
1613        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1614          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1615          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1616
1617        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1618
1619        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1620          The keys of this object are attribute names.
1621          Each value is either a single matching value or an array of matching values for that attribute.
1622          The `filters` parameter is more flexible and preferred.
1623        """

Retrieve a CredentialList.

This method returns a single page of Credential objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def secret( self, *, uuid: str) -> ArvadosAPIRequest[Credential]:
1625    def secret(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Credential]':
1626        """Fetch the secret part of the credential (can only be invoked by running containers).
1627
1628        Required parameters:
1629
1630        * uuid: str --- The UUID of the Credential to query.
1631        """

Fetch the secret part of the credential (can only be invoked by running containers).

Required parameters:

  • uuid: str — The UUID of the Credential to query.
def update( self, *, body: Dict[Literal['credential'], Credential], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[Credential]:
1633    def update(self, *, body: "Dict[Literal['credential'], Credential]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Credential]':
1634        """Update attributes of an existing Credential.
1635
1636        Required parameters:
1637
1638        * body: Dict[Literal['credential'], Credential] --- A dictionary with a single item `'credential'`.
1639          Its value is a `Credential` dictionary defining the attributes to set. 
1640
1641        * uuid: str --- The UUID of the Credential to update. 
1642
1643        Optional parameters:
1644
1645        * select: Optional[List] --- An array of names of attributes to return in the response.
1646        """

Update attributes of an existing Credential.

Required parameters:

  • body: Dict[Literal[’credential’], Credential] — A dictionary with a single item 'credential'. Its value is a Credential dictionary defining the attributes to set.

  • uuid: str — The UUID of the Credential to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class Group(typing.TypedDict):
1649class Group(TypedDict, total=False):
1650    """Arvados group
1651
1652    Groups provide a way to organize users or data together, depending on their
1653    `group_class`.
1654
1655    This is the dictionary object that represents a single Group in Arvados
1656    and is returned by most `Groups` methods.
1657    The keys of the dictionary are documented below, along with their types.
1658    Not every key may appear in every dictionary returned by an API call.
1659    When a method doesn't return all the data, you can use its `select` parameter
1660    to list the specific keys you need. Refer to the API documentation for details.
1661    """
1662    etag: 'str'
1663    """Object cache version."""
1664    uuid: 'str'
1665    """This group's Arvados UUID, like `zzzzz-j7d0g-12345abcde67890`."""
1666    owner_uuid: 'str'
1667    """The UUID of the user or group that owns this group."""
1668    created_at: 'str'
1669    """The time this group was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1670    modified_by_user_uuid: 'str'
1671    """The UUID of the user that last updated this group."""
1672    modified_at: 'str'
1673    """The time this group was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1674    name: 'str'
1675    """The name of this group assigned by a user."""
1676    description: 'str'
1677    """A longer HTML description of this group assigned by a user.
1678    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
1679    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
1680    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
1681    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
1682    """
1683    group_class: 'str'
1684    """A string representing which type of group this is. One of:
1685
1686      * `"filter"` --- A virtual project whose contents are selected dynamically by filters.
1687      * `"project"` --- An Arvados project that can contain collections,
1688        container records, workflows, and subprojects.
1689      * `"role"` --- A group of users that can be granted permissions in Arvados.
1690    """
1691    trash_at: 'str'
1692    """The time this group will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1693    is_trashed: 'bool'
1694    """A boolean flag to indicate whether or not this group is trashed."""
1695    delete_at: 'str'
1696    """The time this group will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
1697    properties: 'Dict[str, Any]'
1698    """A hash of arbitrary metadata for this group.
1699    Some keys may be reserved by Arvados or defined by a configured vocabulary.
1700    Refer to the [metadata properties reference][] for details.
1701
1702    [metadata properties reference]: https://doc.arvados.org/api/properties.html
1703    """
1704    frozen_by_uuid: 'str'
1705    """The UUID of the user that has frozen this group, if any. Frozen projects
1706    cannot have their contents or metadata changed, even by admins.
1707    """

Arvados group

Groups provide a way to organize users or data together, depending on their group_class.

This is the dictionary object that represents a single Group in Arvados and is returned by most Groups methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This group’s Arvados UUID, like zzzzz-j7d0g-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this group.

created_at: str

The time this group was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_by_user_uuid: str

The UUID of the user that last updated this group.

modified_at: str

The time this group was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

name: str

The name of this group assigned by a user.

description: str

A longer HTML description of this group assigned by a user. Allowed HTML tags are a, b, blockquote, br, code, del, dd, dl, dt, em, h1, h2, h3, h4, h5, h6, hr, i, img, kbd, li, ol, p, pre, s, section, span, strong, sub, sup, and ul.

group_class: str

A string representing which type of group this is. One of:

  • "filter" — A virtual project whose contents are selected dynamically by filters.
  • "project" — An Arvados project that can contain collections, container records, workflows, and subprojects.
  • "role" — A group of users that can be granted permissions in Arvados.
trash_at: str

The time this group will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

is_trashed: bool

A boolean flag to indicate whether or not this group is trashed.

delete_at: str

The time this group will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

properties: Dict[str, Any]

A hash of arbitrary metadata for this group. Some keys may be reserved by Arvados or defined by a configured vocabulary. Refer to the metadata properties reference for details.

frozen_by_uuid: str

The UUID of the user that has frozen this group, if any. Frozen projects cannot have their contents or metadata changed, even by admins.

class GroupList(typing.TypedDict):
1710class GroupList(TypedDict, total=False):
1711    """A list of Group objects.
1712
1713    This is the dictionary object returned when you call `Groups.list`.
1714    If you just want to iterate all objects that match your search criteria,
1715    consider using `arvados.util.keyset_list_all`.
1716    If you work with this raw object, the keys of the dictionary are documented
1717    below, along with their types. The `items` key maps to a list of matching
1718    `Group` objects.
1719    """
1720    kind: 'str' = 'arvados#groupList'
1721    """Object type. Always arvados#groupList."""
1722    etag: 'str'
1723    """List cache version."""
1724    items: 'List[Group]'
1725    """An array of matching Group objects."""

A list of Group objects.

This is the dictionary object returned when you call Groups.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching Group objects.

kind: str = 'arvados#groupList'

Object type. Always arvados#groupList.

etag: str

List cache version.

items: List[Group]

An array of matching Group objects.

class Groups:
1728class Groups:
1729    """Methods to query and manipulate Arvados groups"""
1730
1731    def contents(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, exclude_home_project: 'bool' = False, filters: 'Optional[List]' = None, include: 'Optional[List]' = None, include_old_versions: 'bool' = False, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, recursive: 'bool' = False, select: 'Optional[List]' = None, uuid: 'str' = '', where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[Group]':
1732        """List objects that belong to a group.
1733
1734        Optional parameters:
1735
1736        * bypass_federation: bool --- If true, do not return results from other clusters in the
1737          federation, only the cluster that received the request.
1738          You must be an administrator to use this flag. Default `False`.
1739
1740        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1741
1742        * count: str --- A string to determine result counting behavior. Supported values are:
1743
1744          * `"exact"`: The response will include an `items_available` field that
1745            counts the number of objects that matched this search criteria,
1746            including ones not included in `items`.
1747
1748          * `"none"`: The response will not include an `items_avaliable`
1749            field. This improves performance by returning a result as soon as enough
1750            `items` have been loaded for this result.
1751
1752          Default `'exact'`.
1753
1754        * distinct: bool --- If this is true, and multiple objects have the same values
1755          for the attributes that you specify in the `select` parameter, then each unique
1756          set of values will only be returned once in the result set. Default `False`.
1757
1758        * exclude_home_project: bool --- If true, exclude contents of the user's home project from the listing.
1759          Calling this method with this flag set is how clients enumerate objects shared
1760          with the current user. Default `False`.
1761
1762        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1763          Refer to the [filters reference][] for more information about how to write filters. 
1764
1765          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1766
1767        * include: Optional[List] --- An array of referenced objects to include in the `included` field of the response. Supported values in the array are:
1768
1769          * `"container_uuid"`
1770          * `"owner_uuid"`
1771          * `"collection_uuid"`
1772
1773
1774
1775        * include_old_versions: bool --- If true, include past versions of collections in the listing. Default `False`.
1776
1777        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1778
1779        * limit: int --- The maximum number of objects to return in the result.
1780          Note that the API may return fewer results than this if your request hits other
1781          limits set by the administrator. Default `100`.
1782
1783        * offset: int --- Return matching objects starting from this index.
1784          Note that result indexes may change if objects are modified in between a series
1785          of list calls. Default `0`.
1786
1787        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1788          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1789          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1790
1791        * recursive: bool --- If true, include contents from child groups recursively. Default `False`.
1792
1793        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1794
1795        * uuid: str --- If given, limit the listing to objects owned by the
1796          user or group with this UUID. Default `''`.
1797
1798        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1799          The keys of this object are attribute names.
1800          Each value is either a single matching value or an array of matching values for that attribute.
1801          The `filters` parameter is more flexible and preferred.
1802        """
1803
1804    def create(self, *, body: "Dict[Literal['group'], Group]", async_: 'bool' = False, cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1805        """Create a new Group.
1806
1807        Required parameters:
1808
1809        * body: Dict[Literal['group'], Group] --- A dictionary with a single item `'group'`.
1810          Its value is a `Group` dictionary defining the attributes to set. 
1811
1812        Optional parameters:
1813
1814        * async: bool --- If true, cluster permission will not be updated immediately, but instead at the next configured update interval. Default `False`.
1815
1816        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1817
1818        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1819
1820        * select: Optional[List] --- An array of names of attributes to return in the response.
1821        """
1822
1823    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1824        """Delete an existing Group.
1825
1826        Required parameters:
1827
1828        * uuid: str --- The UUID of the Group to delete.
1829        """
1830
1831    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1832        """Get a Group record by UUID.
1833
1834        Required parameters:
1835
1836        * uuid: str --- The UUID of the Group to return. 
1837
1838        Optional parameters:
1839
1840        * include_trash: bool --- Return group/project even if its `is_trashed` attribute is true. Default `False`.
1841
1842        * select: Optional[List] --- An array of names of attributes to return in the response.
1843        """
1844
1845    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[GroupList]':
1846        """Retrieve a GroupList.
1847
1848        This method returns a single page of `Group` objects that match your search
1849        criteria. If you just want to iterate all objects that match your search
1850        criteria, consider using `arvados.util.keyset_list_all`.
1851
1852        Optional parameters:
1853
1854        * bypass_federation: bool --- If true, do not return results from other clusters in the
1855          federation, only the cluster that received the request.
1856          You must be an administrator to use this flag. Default `False`.
1857
1858        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1859
1860        * count: str --- A string to determine result counting behavior. Supported values are:
1861
1862          * `"exact"`: The response will include an `items_available` field that
1863            counts the number of objects that matched this search criteria,
1864            including ones not included in `items`.
1865
1866          * `"none"`: The response will not include an `items_avaliable`
1867            field. This improves performance by returning a result as soon as enough
1868            `items` have been loaded for this result.
1869
1870          Default `'exact'`.
1871
1872        * distinct: bool --- If this is true, and multiple objects have the same values
1873          for the attributes that you specify in the `select` parameter, then each unique
1874          set of values will only be returned once in the result set. Default `False`.
1875
1876        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1877          Refer to the [filters reference][] for more information about how to write filters. 
1878
1879          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1880
1881        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1882
1883        * limit: int --- The maximum number of objects to return in the result.
1884          Note that the API may return fewer results than this if your request hits other
1885          limits set by the administrator. Default `100`.
1886
1887        * offset: int --- Return matching objects starting from this index.
1888          Note that result indexes may change if objects are modified in between a series
1889          of list calls. Default `0`.
1890
1891        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1892          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1893          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1894
1895        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1896
1897        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1898          The keys of this object are attribute names.
1899          Each value is either a single matching value or an array of matching values for that attribute.
1900          The `filters` parameter is more flexible and preferred.
1901        """
1902
1903    def shared(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include: 'Optional[str]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[Group]':
1904        """List groups that the current user can access via permission links.
1905
1906        Optional parameters:
1907
1908        * bypass_federation: bool --- If true, do not return results from other clusters in the
1909          federation, only the cluster that received the request.
1910          You must be an administrator to use this flag. Default `False`.
1911
1912        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1913
1914        * count: str --- A string to determine result counting behavior. Supported values are:
1915
1916          * `"exact"`: The response will include an `items_available` field that
1917            counts the number of objects that matched this search criteria,
1918            including ones not included in `items`.
1919
1920          * `"none"`: The response will not include an `items_avaliable`
1921            field. This improves performance by returning a result as soon as enough
1922            `items` have been loaded for this result.
1923
1924          Default `'exact'`.
1925
1926        * distinct: bool --- If this is true, and multiple objects have the same values
1927          for the attributes that you specify in the `select` parameter, then each unique
1928          set of values will only be returned once in the result set. Default `False`.
1929
1930        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1931          Refer to the [filters reference][] for more information about how to write filters. 
1932
1933          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1934
1935        * include: Optional[str] --- A string naming referenced objects to include in the `included` field of the response. Supported values are:
1936
1937          * `"owner_uuid"`
1938
1939
1940
1941        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1942
1943        * limit: int --- The maximum number of objects to return in the result.
1944          Note that the API may return fewer results than this if your request hits other
1945          limits set by the administrator. Default `100`.
1946
1947        * offset: int --- Return matching objects starting from this index.
1948          Note that result indexes may change if objects are modified in between a series
1949          of list calls. Default `0`.
1950
1951        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1952          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1953          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1954
1955        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1956
1957        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1958          The keys of this object are attribute names.
1959          Each value is either a single matching value or an array of matching values for that attribute.
1960          The `filters` parameter is more flexible and preferred.
1961        """
1962
1963    def trash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1964        """Trash a group.
1965
1966        Required parameters:
1967
1968        * uuid: str --- The UUID of the Group to update.
1969        """
1970
1971    def untrash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1972        """Untrash a group.
1973
1974        Required parameters:
1975
1976        * uuid: str --- The UUID of the Group to update.
1977        """
1978
1979    def update(self, *, body: "Dict[Literal['group'], Group]", uuid: 'str', async_: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1980        """Update attributes of an existing Group.
1981
1982        Required parameters:
1983
1984        * body: Dict[Literal['group'], Group] --- A dictionary with a single item `'group'`.
1985          Its value is a `Group` dictionary defining the attributes to set. 
1986
1987        * uuid: str --- The UUID of the Group to update. 
1988
1989        Optional parameters:
1990
1991        * async: bool --- If true, cluster permission will not be updated immediately, but instead at the next configured update interval. Default `False`.
1992
1993        * select: Optional[List] --- An array of names of attributes to return in the response.
1994        """

Methods to query and manipulate Arvados groups

def contents( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, exclude_home_project: bool = False, filters: Optional[List] = None, include: Optional[List] = None, include_old_versions: bool = False, include_trash: bool = False, limit: int = 100, offset: int = 0, order: Optional[List] = None, recursive: bool = False, select: Optional[List] = None, uuid: str = '', where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[Group]:
1731    def contents(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, exclude_home_project: 'bool' = False, filters: 'Optional[List]' = None, include: 'Optional[List]' = None, include_old_versions: 'bool' = False, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, recursive: 'bool' = False, select: 'Optional[List]' = None, uuid: 'str' = '', where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[Group]':
1732        """List objects that belong to a group.
1733
1734        Optional parameters:
1735
1736        * bypass_federation: bool --- If true, do not return results from other clusters in the
1737          federation, only the cluster that received the request.
1738          You must be an administrator to use this flag. Default `False`.
1739
1740        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1741
1742        * count: str --- A string to determine result counting behavior. Supported values are:
1743
1744          * `"exact"`: The response will include an `items_available` field that
1745            counts the number of objects that matched this search criteria,
1746            including ones not included in `items`.
1747
1748          * `"none"`: The response will not include an `items_avaliable`
1749            field. This improves performance by returning a result as soon as enough
1750            `items` have been loaded for this result.
1751
1752          Default `'exact'`.
1753
1754        * distinct: bool --- If this is true, and multiple objects have the same values
1755          for the attributes that you specify in the `select` parameter, then each unique
1756          set of values will only be returned once in the result set. Default `False`.
1757
1758        * exclude_home_project: bool --- If true, exclude contents of the user's home project from the listing.
1759          Calling this method with this flag set is how clients enumerate objects shared
1760          with the current user. Default `False`.
1761
1762        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1763          Refer to the [filters reference][] for more information about how to write filters. 
1764
1765          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1766
1767        * include: Optional[List] --- An array of referenced objects to include in the `included` field of the response. Supported values in the array are:
1768
1769          * `"container_uuid"`
1770          * `"owner_uuid"`
1771          * `"collection_uuid"`
1772
1773
1774
1775        * include_old_versions: bool --- If true, include past versions of collections in the listing. Default `False`.
1776
1777        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1778
1779        * limit: int --- The maximum number of objects to return in the result.
1780          Note that the API may return fewer results than this if your request hits other
1781          limits set by the administrator. Default `100`.
1782
1783        * offset: int --- Return matching objects starting from this index.
1784          Note that result indexes may change if objects are modified in between a series
1785          of list calls. Default `0`.
1786
1787        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1788          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1789          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1790
1791        * recursive: bool --- If true, include contents from child groups recursively. Default `False`.
1792
1793        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1794
1795        * uuid: str --- If given, limit the listing to objects owned by the
1796          user or group with this UUID. Default `''`.
1797
1798        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1799          The keys of this object are attribute names.
1800          Each value is either a single matching value or an array of matching values for that attribute.
1801          The `filters` parameter is more flexible and preferred.
1802        """

List objects that belong to a group.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • exclude_home_project: bool — If true, exclude contents of the user’s home project from the listing. Calling this method with this flag set is how clients enumerate objects shared with the current user. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • include: Optional[List] — An array of referenced objects to include in the included field of the response. Supported values in the array are:

    • "container_uuid"
    • "owner_uuid"
    • "collection_uuid"
  • include_old_versions: bool — If true, include past versions of collections in the listing. Default False.

  • include_trash: bool — Include items whose is_trashed attribute is true. Default False.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • recursive: bool — If true, include contents from child groups recursively. Default False.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • uuid: str — If given, limit the listing to objects owned by the user or group with this UUID. Default ''.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def create( self, *, body: Dict[Literal['group'], Group], async_: bool = False, cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[Group]:
1804    def create(self, *, body: "Dict[Literal['group'], Group]", async_: 'bool' = False, cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1805        """Create a new Group.
1806
1807        Required parameters:
1808
1809        * body: Dict[Literal['group'], Group] --- A dictionary with a single item `'group'`.
1810          Its value is a `Group` dictionary defining the attributes to set. 
1811
1812        Optional parameters:
1813
1814        * async: bool --- If true, cluster permission will not be updated immediately, but instead at the next configured update interval. Default `False`.
1815
1816        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
1817
1818        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
1819
1820        * select: Optional[List] --- An array of names of attributes to return in the response.
1821        """

Create a new Group.

Required parameters:

  • body: Dict[Literal[’group’], Group] — A dictionary with a single item 'group'. Its value is a Group dictionary defining the attributes to set.

Optional parameters:

  • async: bool — If true, cluster permission will not be updated immediately, but instead at the next configured update interval. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[Group]:
1823    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1824        """Delete an existing Group.
1825
1826        Required parameters:
1827
1828        * uuid: str --- The UUID of the Group to delete.
1829        """

Delete an existing Group.

Required parameters:

  • uuid: str — The UUID of the Group to delete.
def get( self, *, uuid: str, include_trash: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[Group]:
1831    def get(self, *, uuid: 'str', include_trash: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1832        """Get a Group record by UUID.
1833
1834        Required parameters:
1835
1836        * uuid: str --- The UUID of the Group to return. 
1837
1838        Optional parameters:
1839
1840        * include_trash: bool --- Return group/project even if its `is_trashed` attribute is true. Default `False`.
1841
1842        * select: Optional[List] --- An array of names of attributes to return in the response.
1843        """

Get a Group record by UUID.

Required parameters:

  • uuid: str — The UUID of the Group to return.

Optional parameters:

  • include_trash: bool — Return group/project even if its is_trashed attribute is true. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, include_trash: bool = False, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[GroupList]:
1845    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[GroupList]':
1846        """Retrieve a GroupList.
1847
1848        This method returns a single page of `Group` objects that match your search
1849        criteria. If you just want to iterate all objects that match your search
1850        criteria, consider using `arvados.util.keyset_list_all`.
1851
1852        Optional parameters:
1853
1854        * bypass_federation: bool --- If true, do not return results from other clusters in the
1855          federation, only the cluster that received the request.
1856          You must be an administrator to use this flag. Default `False`.
1857
1858        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1859
1860        * count: str --- A string to determine result counting behavior. Supported values are:
1861
1862          * `"exact"`: The response will include an `items_available` field that
1863            counts the number of objects that matched this search criteria,
1864            including ones not included in `items`.
1865
1866          * `"none"`: The response will not include an `items_avaliable`
1867            field. This improves performance by returning a result as soon as enough
1868            `items` have been loaded for this result.
1869
1870          Default `'exact'`.
1871
1872        * distinct: bool --- If this is true, and multiple objects have the same values
1873          for the attributes that you specify in the `select` parameter, then each unique
1874          set of values will only be returned once in the result set. Default `False`.
1875
1876        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1877          Refer to the [filters reference][] for more information about how to write filters. 
1878
1879          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1880
1881        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1882
1883        * limit: int --- The maximum number of objects to return in the result.
1884          Note that the API may return fewer results than this if your request hits other
1885          limits set by the administrator. Default `100`.
1886
1887        * offset: int --- Return matching objects starting from this index.
1888          Note that result indexes may change if objects are modified in between a series
1889          of list calls. Default `0`.
1890
1891        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1892          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1893          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1894
1895        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1896
1897        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1898          The keys of this object are attribute names.
1899          Each value is either a single matching value or an array of matching values for that attribute.
1900          The `filters` parameter is more flexible and preferred.
1901        """

Retrieve a GroupList.

This method returns a single page of Group objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • include_trash: bool — Include items whose is_trashed attribute is true. Default False.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def shared( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, include: Optional[str] = None, include_trash: bool = False, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[Group]:
1903    def shared(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, include: 'Optional[str]' = None, include_trash: 'bool' = False, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[Group]':
1904        """List groups that the current user can access via permission links.
1905
1906        Optional parameters:
1907
1908        * bypass_federation: bool --- If true, do not return results from other clusters in the
1909          federation, only the cluster that received the request.
1910          You must be an administrator to use this flag. Default `False`.
1911
1912        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
1913
1914        * count: str --- A string to determine result counting behavior. Supported values are:
1915
1916          * `"exact"`: The response will include an `items_available` field that
1917            counts the number of objects that matched this search criteria,
1918            including ones not included in `items`.
1919
1920          * `"none"`: The response will not include an `items_avaliable`
1921            field. This improves performance by returning a result as soon as enough
1922            `items` have been loaded for this result.
1923
1924          Default `'exact'`.
1925
1926        * distinct: bool --- If this is true, and multiple objects have the same values
1927          for the attributes that you specify in the `select` parameter, then each unique
1928          set of values will only be returned once in the result set. Default `False`.
1929
1930        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
1931          Refer to the [filters reference][] for more information about how to write filters. 
1932
1933          [filters reference]: https://doc.arvados.org/api/methods.html#filters
1934
1935        * include: Optional[str] --- A string naming referenced objects to include in the `included` field of the response. Supported values are:
1936
1937          * `"owner_uuid"`
1938
1939
1940
1941        * include_trash: bool --- Include items whose `is_trashed` attribute is true. Default `False`.
1942
1943        * limit: int --- The maximum number of objects to return in the result.
1944          Note that the API may return fewer results than this if your request hits other
1945          limits set by the administrator. Default `100`.
1946
1947        * offset: int --- Return matching objects starting from this index.
1948          Note that result indexes may change if objects are modified in between a series
1949          of list calls. Default `0`.
1950
1951        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
1952          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
1953          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
1954
1955        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
1956
1957        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
1958          The keys of this object are attribute names.
1959          Each value is either a single matching value or an array of matching values for that attribute.
1960          The `filters` parameter is more flexible and preferred.
1961        """

List groups that the current user can access via permission links.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • include: Optional[str] — A string naming referenced objects to include in the included field of the response. Supported values are:

    • "owner_uuid"
  • include_trash: bool — Include items whose is_trashed attribute is true. Default False.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def trash( self, *, uuid: str) -> ArvadosAPIRequest[Group]:
1963    def trash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1964        """Trash a group.
1965
1966        Required parameters:
1967
1968        * uuid: str --- The UUID of the Group to update.
1969        """

Trash a group.

Required parameters:

  • uuid: str — The UUID of the Group to update.
def untrash( self, *, uuid: str) -> ArvadosAPIRequest[Group]:
1971    def untrash(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Group]':
1972        """Untrash a group.
1973
1974        Required parameters:
1975
1976        * uuid: str --- The UUID of the Group to update.
1977        """

Untrash a group.

Required parameters:

  • uuid: str — The UUID of the Group to update.
def update( self, *, body: Dict[Literal['group'], Group], uuid: str, async_: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[Group]:
1979    def update(self, *, body: "Dict[Literal['group'], Group]", uuid: 'str', async_: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Group]':
1980        """Update attributes of an existing Group.
1981
1982        Required parameters:
1983
1984        * body: Dict[Literal['group'], Group] --- A dictionary with a single item `'group'`.
1985          Its value is a `Group` dictionary defining the attributes to set. 
1986
1987        * uuid: str --- The UUID of the Group to update. 
1988
1989        Optional parameters:
1990
1991        * async: bool --- If true, cluster permission will not be updated immediately, but instead at the next configured update interval. Default `False`.
1992
1993        * select: Optional[List] --- An array of names of attributes to return in the response.
1994        """

Update attributes of an existing Group.

Required parameters:

  • body: Dict[Literal[’group’], Group] — A dictionary with a single item 'group'. Its value is a Group dictionary defining the attributes to set.

  • uuid: str — The UUID of the Group to update.

Optional parameters:

  • async: bool — If true, cluster permission will not be updated immediately, but instead at the next configured update interval. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

class KeepService(typing.TypedDict):
1997class KeepService(TypedDict, total=False):
1998    """Arvados Keep service
1999
2000    This resource stores information about a single Keep service in this Arvados
2001    cluster that clients can contact to retrieve and store data.
2002
2003    This is the dictionary object that represents a single KeepService in Arvados
2004    and is returned by most `KeepServices` methods.
2005    The keys of the dictionary are documented below, along with their types.
2006    Not every key may appear in every dictionary returned by an API call.
2007    When a method doesn't return all the data, you can use its `select` parameter
2008    to list the specific keys you need. Refer to the API documentation for details.
2009    """
2010    etag: 'str'
2011    """Object cache version."""
2012    uuid: 'str'
2013    """This Keep service's Arvados UUID, like `zzzzz-bi6l4-12345abcde67890`."""
2014    owner_uuid: 'str'
2015    """The UUID of the user or group that owns this Keep service."""
2016    modified_by_user_uuid: 'str'
2017    """The UUID of the user that last updated this Keep service."""
2018    modified_at: 'str'
2019    """The time this Keep service was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2020    service_host: 'str'
2021    """The DNS hostname of this Keep service."""
2022    service_port: 'int'
2023    """The TCP port where this Keep service listens."""
2024    service_ssl_flag: 'bool'
2025    """A boolean flag that indicates whether or not this Keep service uses TLS/SSL."""
2026    service_type: 'str'
2027    """A string that describes which type of Keep service this is. One of:
2028
2029      * `"disk"` --- A service that stores blocks on a local filesystem.
2030      * `"blob"` --- A service that stores blocks in a cloud object store.
2031      * `"proxy"` --- A keepproxy service.
2032    """
2033    created_at: 'str'
2034    """The time this Keep service was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2035    read_only: 'bool'
2036    """A boolean flag. If set, this Keep service does not accept requests to write data
2037    blocks; it only serves blocks it already has.
2038    """

Arvados Keep service

This resource stores information about a single Keep service in this Arvados cluster that clients can contact to retrieve and store data.

This is the dictionary object that represents a single KeepService in Arvados and is returned by most KeepServices methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This Keep service’s Arvados UUID, like zzzzz-bi6l4-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this Keep service.

modified_by_user_uuid: str

The UUID of the user that last updated this Keep service.

modified_at: str

The time this Keep service was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

service_host: str

The DNS hostname of this Keep service.

service_port: int

The TCP port where this Keep service listens.

service_ssl_flag: bool

A boolean flag that indicates whether or not this Keep service uses TLS/SSL.

service_type: str

A string that describes which type of Keep service this is. One of:

  • "disk" — A service that stores blocks on a local filesystem.
  • "blob" — A service that stores blocks in a cloud object store.
  • "proxy" — A keepproxy service.
created_at: str

The time this Keep service was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

read_only: bool

A boolean flag. If set, this Keep service does not accept requests to write data blocks; it only serves blocks it already has.

class KeepServiceList(typing.TypedDict):
2041class KeepServiceList(TypedDict, total=False):
2042    """A list of KeepService objects.
2043
2044    This is the dictionary object returned when you call `KeepServices.list`.
2045    If you just want to iterate all objects that match your search criteria,
2046    consider using `arvados.util.keyset_list_all`.
2047    If you work with this raw object, the keys of the dictionary are documented
2048    below, along with their types. The `items` key maps to a list of matching
2049    `KeepService` objects.
2050    """
2051    kind: 'str' = 'arvados#keepServiceList'
2052    """Object type. Always arvados#keepServiceList."""
2053    etag: 'str'
2054    """List cache version."""
2055    items: 'List[KeepService]'
2056    """An array of matching KeepService objects."""

A list of KeepService objects.

This is the dictionary object returned when you call KeepServices.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching KeepService objects.

kind: str = 'arvados#keepServiceList'

Object type. Always arvados#keepServiceList.

etag: str

List cache version.

items: List[KeepService]

An array of matching KeepService objects.

class KeepServices:
2059class KeepServices:
2060    """Methods to query and manipulate Arvados keep services"""
2061
2062    def accessible(self) -> 'ArvadosAPIRequest[KeepService]':
2063        """List Keep services that the current client can access."""
2064
2065    def create(self, *, body: "Dict[Literal['keep_service'], KeepService]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2066        """Create a new KeepService.
2067
2068        Required parameters:
2069
2070        * body: Dict[Literal['keep_service'], KeepService] --- A dictionary with a single item `'keep_service'`.
2071          Its value is a `KeepService` dictionary defining the attributes to set. 
2072
2073        Optional parameters:
2074
2075        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2076
2077        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2078
2079        * select: Optional[List] --- An array of names of attributes to return in the response.
2080        """
2081
2082    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[KeepService]':
2083        """Delete an existing KeepService.
2084
2085        Required parameters:
2086
2087        * uuid: str --- The UUID of the KeepService to delete.
2088        """
2089
2090    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2091        """Get a KeepService record by UUID.
2092
2093        Required parameters:
2094
2095        * uuid: str --- The UUID of the KeepService to return. 
2096
2097        Optional parameters:
2098
2099        * select: Optional[List] --- An array of names of attributes to return in the response.
2100        """
2101
2102    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[KeepServiceList]':
2103        """Retrieve a KeepServiceList.
2104
2105        This method returns a single page of `KeepService` objects that match your search
2106        criteria. If you just want to iterate all objects that match your search
2107        criteria, consider using `arvados.util.keyset_list_all`.
2108
2109        Optional parameters:
2110
2111        * bypass_federation: bool --- If true, do not return results from other clusters in the
2112          federation, only the cluster that received the request.
2113          You must be an administrator to use this flag. Default `False`.
2114
2115        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2116
2117        * count: str --- A string to determine result counting behavior. Supported values are:
2118
2119          * `"exact"`: The response will include an `items_available` field that
2120            counts the number of objects that matched this search criteria,
2121            including ones not included in `items`.
2122
2123          * `"none"`: The response will not include an `items_avaliable`
2124            field. This improves performance by returning a result as soon as enough
2125            `items` have been loaded for this result.
2126
2127          Default `'exact'`.
2128
2129        * distinct: bool --- If this is true, and multiple objects have the same values
2130          for the attributes that you specify in the `select` parameter, then each unique
2131          set of values will only be returned once in the result set. Default `False`.
2132
2133        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2134          Refer to the [filters reference][] for more information about how to write filters. 
2135
2136          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2137
2138        * limit: int --- The maximum number of objects to return in the result.
2139          Note that the API may return fewer results than this if your request hits other
2140          limits set by the administrator. Default `100`.
2141
2142        * offset: int --- Return matching objects starting from this index.
2143          Note that result indexes may change if objects are modified in between a series
2144          of list calls. Default `0`.
2145
2146        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2147          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2148          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2149
2150        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2151
2152        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2153          The keys of this object are attribute names.
2154          Each value is either a single matching value or an array of matching values for that attribute.
2155          The `filters` parameter is more flexible and preferred.
2156        """
2157
2158    def update(self, *, body: "Dict[Literal['keep_service'], KeepService]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2159        """Update attributes of an existing KeepService.
2160
2161        Required parameters:
2162
2163        * body: Dict[Literal['keep_service'], KeepService] --- A dictionary with a single item `'keep_service'`.
2164          Its value is a `KeepService` dictionary defining the attributes to set. 
2165
2166        * uuid: str --- The UUID of the KeepService to update. 
2167
2168        Optional parameters:
2169
2170        * select: Optional[List] --- An array of names of attributes to return in the response.
2171        """

Methods to query and manipulate Arvados keep services

def accessible( self) -> ArvadosAPIRequest[KeepService]:
2062    def accessible(self) -> 'ArvadosAPIRequest[KeepService]':
2063        """List Keep services that the current client can access."""

List Keep services that the current client can access.

def create( self, *, body: Dict[Literal['keep_service'], KeepService], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[KeepService]:
2065    def create(self, *, body: "Dict[Literal['keep_service'], KeepService]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2066        """Create a new KeepService.
2067
2068        Required parameters:
2069
2070        * body: Dict[Literal['keep_service'], KeepService] --- A dictionary with a single item `'keep_service'`.
2071          Its value is a `KeepService` dictionary defining the attributes to set. 
2072
2073        Optional parameters:
2074
2075        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2076
2077        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2078
2079        * select: Optional[List] --- An array of names of attributes to return in the response.
2080        """

Create a new KeepService.

Required parameters:

  • body: Dict[Literal[’keep_service’], KeepService] — A dictionary with a single item 'keep_service'. Its value is a KeepService dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[KeepService]:
2082    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[KeepService]':
2083        """Delete an existing KeepService.
2084
2085        Required parameters:
2086
2087        * uuid: str --- The UUID of the KeepService to delete.
2088        """

Delete an existing KeepService.

Required parameters:

  • uuid: str — The UUID of the KeepService to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[KeepService]:
2090    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2091        """Get a KeepService record by UUID.
2092
2093        Required parameters:
2094
2095        * uuid: str --- The UUID of the KeepService to return. 
2096
2097        Optional parameters:
2098
2099        * select: Optional[List] --- An array of names of attributes to return in the response.
2100        """

Get a KeepService record by UUID.

Required parameters:

  • uuid: str — The UUID of the KeepService to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[KeepServiceList]:
2102    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[KeepServiceList]':
2103        """Retrieve a KeepServiceList.
2104
2105        This method returns a single page of `KeepService` objects that match your search
2106        criteria. If you just want to iterate all objects that match your search
2107        criteria, consider using `arvados.util.keyset_list_all`.
2108
2109        Optional parameters:
2110
2111        * bypass_federation: bool --- If true, do not return results from other clusters in the
2112          federation, only the cluster that received the request.
2113          You must be an administrator to use this flag. Default `False`.
2114
2115        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2116
2117        * count: str --- A string to determine result counting behavior. Supported values are:
2118
2119          * `"exact"`: The response will include an `items_available` field that
2120            counts the number of objects that matched this search criteria,
2121            including ones not included in `items`.
2122
2123          * `"none"`: The response will not include an `items_avaliable`
2124            field. This improves performance by returning a result as soon as enough
2125            `items` have been loaded for this result.
2126
2127          Default `'exact'`.
2128
2129        * distinct: bool --- If this is true, and multiple objects have the same values
2130          for the attributes that you specify in the `select` parameter, then each unique
2131          set of values will only be returned once in the result set. Default `False`.
2132
2133        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2134          Refer to the [filters reference][] for more information about how to write filters. 
2135
2136          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2137
2138        * limit: int --- The maximum number of objects to return in the result.
2139          Note that the API may return fewer results than this if your request hits other
2140          limits set by the administrator. Default `100`.
2141
2142        * offset: int --- Return matching objects starting from this index.
2143          Note that result indexes may change if objects are modified in between a series
2144          of list calls. Default `0`.
2145
2146        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2147          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2148          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2149
2150        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2151
2152        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2153          The keys of this object are attribute names.
2154          Each value is either a single matching value or an array of matching values for that attribute.
2155          The `filters` parameter is more flexible and preferred.
2156        """

Retrieve a KeepServiceList.

This method returns a single page of KeepService objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def update( self, *, body: Dict[Literal['keep_service'], KeepService], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[KeepService]:
2158    def update(self, *, body: "Dict[Literal['keep_service'], KeepService]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[KeepService]':
2159        """Update attributes of an existing KeepService.
2160
2161        Required parameters:
2162
2163        * body: Dict[Literal['keep_service'], KeepService] --- A dictionary with a single item `'keep_service'`.
2164          Its value is a `KeepService` dictionary defining the attributes to set. 
2165
2166        * uuid: str --- The UUID of the KeepService to update. 
2167
2168        Optional parameters:
2169
2170        * select: Optional[List] --- An array of names of attributes to return in the response.
2171        """

Update attributes of an existing KeepService.

Required parameters:

  • body: Dict[Literal[’keep_service’], KeepService] — A dictionary with a single item 'keep_service'. Its value is a KeepService dictionary defining the attributes to set.

  • uuid: str — The UUID of the KeepService to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class Log(typing.TypedDict):
2367class Log(TypedDict, total=False):
2368    """Arvados log record
2369
2370    This resource represents a single log record about an event in this Arvados
2371    cluster. Some individual Arvados services create log records. Users can also
2372    create custom logs.
2373
2374    This is the dictionary object that represents a single Log in Arvados
2375    and is returned by most `Logs` methods.
2376    The keys of the dictionary are documented below, along with their types.
2377    Not every key may appear in every dictionary returned by an API call.
2378    When a method doesn't return all the data, you can use its `select` parameter
2379    to list the specific keys you need. Refer to the API documentation for details.
2380    """
2381    etag: 'str'
2382    """Object cache version."""
2383    id: 'int'
2384    """The serial number of this log. You can use this in filters to query logs
2385    that were created before/after another.
2386    """
2387    uuid: 'str'
2388    """This log's Arvados UUID, like `zzzzz-57u5n-12345abcde67890`."""
2389    owner_uuid: 'str'
2390    """The UUID of the user or group that owns this log."""
2391    modified_by_user_uuid: 'str'
2392    """The UUID of the user that last updated this log."""
2393    object_uuid: 'str'
2394    """The UUID of the Arvados object that this log pertains to, such as a user
2395    or container.
2396    """
2397    event_at: 'str'
2398    """The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2399    event_type: 'str'
2400    """An arbitrary short string that classifies what type of log this is."""
2401    summary: 'str'
2402    """A text string that describes the logged event. This is the primary
2403    attribute for simple logs.
2404    """
2405    properties: 'Dict[str, Any]'
2406    """A hash of arbitrary metadata for this log.
2407    Some keys may be reserved by Arvados or defined by a configured vocabulary.
2408    Refer to the [metadata properties reference][] for details.
2409
2410    [metadata properties reference]: https://doc.arvados.org/api/properties.html
2411    """
2412    created_at: 'str'
2413    """The time this log was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2414    modified_at: 'str'
2415    """The time this log was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2416    object_owner_uuid: 'str'
2417    """The `owner_uuid` of the object referenced by `object_uuid` at the time
2418    this log was created.
2419    """

Arvados log record

This resource represents a single log record about an event in this Arvados cluster. Some individual Arvados services create log records. Users can also create custom logs.

This is the dictionary object that represents a single Log in Arvados and is returned by most Logs methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

id: int

The serial number of this log. You can use this in filters to query logs that were created before/after another.

uuid: str

This log’s Arvados UUID, like zzzzz-57u5n-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this log.

modified_by_user_uuid: str

The UUID of the user that last updated this log.

object_uuid: str

The UUID of the Arvados object that this log pertains to, such as a user or container.

event_at: str

The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

event_type: str

An arbitrary short string that classifies what type of log this is.

summary: str

A text string that describes the logged event. This is the primary attribute for simple logs.

properties: Dict[str, Any]

A hash of arbitrary metadata for this log. Some keys may be reserved by Arvados or defined by a configured vocabulary. Refer to the metadata properties reference for details.

created_at: str

The time this log was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_at: str

The time this log was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

object_owner_uuid: str

The owner_uuid of the object referenced by object_uuid at the time this log was created.

class LogList(typing.TypedDict):
2422class LogList(TypedDict, total=False):
2423    """A list of Log objects.
2424
2425    This is the dictionary object returned when you call `Logs.list`.
2426    If you just want to iterate all objects that match your search criteria,
2427    consider using `arvados.util.keyset_list_all`.
2428    If you work with this raw object, the keys of the dictionary are documented
2429    below, along with their types. The `items` key maps to a list of matching
2430    `Log` objects.
2431    """
2432    kind: 'str' = 'arvados#logList'
2433    """Object type. Always arvados#logList."""
2434    etag: 'str'
2435    """List cache version."""
2436    items: 'List[Log]'
2437    """An array of matching Log objects."""

A list of Log objects.

This is the dictionary object returned when you call Logs.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching Log objects.

kind: str = 'arvados#logList'

Object type. Always arvados#logList.

etag: str

List cache version.

items: List[Log]

An array of matching Log objects.

class Logs:
2440class Logs:
2441    """Methods to query and manipulate Arvados logs"""
2442
2443    def create(self, *, body: "Dict[Literal['log'], Log]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2444        """Create a new Log.
2445
2446        Required parameters:
2447
2448        * body: Dict[Literal['log'], Log] --- A dictionary with a single item `'log'`.
2449          Its value is a `Log` dictionary defining the attributes to set. 
2450
2451        Optional parameters:
2452
2453        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2454
2455        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2456
2457        * select: Optional[List] --- An array of names of attributes to return in the response.
2458        """
2459
2460    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Log]':
2461        """Delete an existing Log.
2462
2463        Required parameters:
2464
2465        * uuid: str --- The UUID of the Log to delete.
2466        """
2467
2468    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2469        """Get a Log record by UUID.
2470
2471        Required parameters:
2472
2473        * uuid: str --- The UUID of the Log to return. 
2474
2475        Optional parameters:
2476
2477        * select: Optional[List] --- An array of names of attributes to return in the response.
2478        """
2479
2480    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[LogList]':
2481        """Retrieve a LogList.
2482
2483        This method returns a single page of `Log` objects that match your search
2484        criteria. If you just want to iterate all objects that match your search
2485        criteria, consider using `arvados.util.keyset_list_all`.
2486
2487        Optional parameters:
2488
2489        * bypass_federation: bool --- If true, do not return results from other clusters in the
2490          federation, only the cluster that received the request.
2491          You must be an administrator to use this flag. Default `False`.
2492
2493        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2494
2495        * count: str --- A string to determine result counting behavior. Supported values are:
2496
2497          * `"exact"`: The response will include an `items_available` field that
2498            counts the number of objects that matched this search criteria,
2499            including ones not included in `items`.
2500
2501          * `"none"`: The response will not include an `items_avaliable`
2502            field. This improves performance by returning a result as soon as enough
2503            `items` have been loaded for this result.
2504
2505          Default `'exact'`.
2506
2507        * distinct: bool --- If this is true, and multiple objects have the same values
2508          for the attributes that you specify in the `select` parameter, then each unique
2509          set of values will only be returned once in the result set. Default `False`.
2510
2511        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2512          Refer to the [filters reference][] for more information about how to write filters. 
2513
2514          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2515
2516        * limit: int --- The maximum number of objects to return in the result.
2517          Note that the API may return fewer results than this if your request hits other
2518          limits set by the administrator. Default `100`.
2519
2520        * offset: int --- Return matching objects starting from this index.
2521          Note that result indexes may change if objects are modified in between a series
2522          of list calls. Default `0`.
2523
2524        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2525          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2526          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2527
2528        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2529
2530        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2531          The keys of this object are attribute names.
2532          Each value is either a single matching value or an array of matching values for that attribute.
2533          The `filters` parameter is more flexible and preferred.
2534        """
2535
2536    def update(self, *, body: "Dict[Literal['log'], Log]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2537        """Update attributes of an existing Log.
2538
2539        Required parameters:
2540
2541        * body: Dict[Literal['log'], Log] --- A dictionary with a single item `'log'`.
2542          Its value is a `Log` dictionary defining the attributes to set. 
2543
2544        * uuid: str --- The UUID of the Log to update. 
2545
2546        Optional parameters:
2547
2548        * select: Optional[List] --- An array of names of attributes to return in the response.
2549        """

Methods to query and manipulate Arvados logs

def create( self, *, body: Dict[Literal['log'], Log], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[Log]:
2443    def create(self, *, body: "Dict[Literal['log'], Log]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2444        """Create a new Log.
2445
2446        Required parameters:
2447
2448        * body: Dict[Literal['log'], Log] --- A dictionary with a single item `'log'`.
2449          Its value is a `Log` dictionary defining the attributes to set. 
2450
2451        Optional parameters:
2452
2453        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2454
2455        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2456
2457        * select: Optional[List] --- An array of names of attributes to return in the response.
2458        """

Create a new Log.

Required parameters:

  • body: Dict[Literal[’log’], Log] — A dictionary with a single item 'log'. Its value is a Log dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[Log]:
2460    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Log]':
2461        """Delete an existing Log.
2462
2463        Required parameters:
2464
2465        * uuid: str --- The UUID of the Log to delete.
2466        """

Delete an existing Log.

Required parameters:

  • uuid: str — The UUID of the Log to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[Log]:
2468    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2469        """Get a Log record by UUID.
2470
2471        Required parameters:
2472
2473        * uuid: str --- The UUID of the Log to return. 
2474
2475        Optional parameters:
2476
2477        * select: Optional[List] --- An array of names of attributes to return in the response.
2478        """

Get a Log record by UUID.

Required parameters:

  • uuid: str — The UUID of the Log to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[LogList]:
2480    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[LogList]':
2481        """Retrieve a LogList.
2482
2483        This method returns a single page of `Log` objects that match your search
2484        criteria. If you just want to iterate all objects that match your search
2485        criteria, consider using `arvados.util.keyset_list_all`.
2486
2487        Optional parameters:
2488
2489        * bypass_federation: bool --- If true, do not return results from other clusters in the
2490          federation, only the cluster that received the request.
2491          You must be an administrator to use this flag. Default `False`.
2492
2493        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2494
2495        * count: str --- A string to determine result counting behavior. Supported values are:
2496
2497          * `"exact"`: The response will include an `items_available` field that
2498            counts the number of objects that matched this search criteria,
2499            including ones not included in `items`.
2500
2501          * `"none"`: The response will not include an `items_avaliable`
2502            field. This improves performance by returning a result as soon as enough
2503            `items` have been loaded for this result.
2504
2505          Default `'exact'`.
2506
2507        * distinct: bool --- If this is true, and multiple objects have the same values
2508          for the attributes that you specify in the `select` parameter, then each unique
2509          set of values will only be returned once in the result set. Default `False`.
2510
2511        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2512          Refer to the [filters reference][] for more information about how to write filters. 
2513
2514          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2515
2516        * limit: int --- The maximum number of objects to return in the result.
2517          Note that the API may return fewer results than this if your request hits other
2518          limits set by the administrator. Default `100`.
2519
2520        * offset: int --- Return matching objects starting from this index.
2521          Note that result indexes may change if objects are modified in between a series
2522          of list calls. Default `0`.
2523
2524        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2525          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2526          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2527
2528        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2529
2530        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2531          The keys of this object are attribute names.
2532          Each value is either a single matching value or an array of matching values for that attribute.
2533          The `filters` parameter is more flexible and preferred.
2534        """

Retrieve a LogList.

This method returns a single page of Log objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def update( self, *, body: Dict[Literal['log'], Log], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[Log]:
2536    def update(self, *, body: "Dict[Literal['log'], Log]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Log]':
2537        """Update attributes of an existing Log.
2538
2539        Required parameters:
2540
2541        * body: Dict[Literal['log'], Log] --- A dictionary with a single item `'log'`.
2542          Its value is a `Log` dictionary defining the attributes to set. 
2543
2544        * uuid: str --- The UUID of the Log to update. 
2545
2546        Optional parameters:
2547
2548        * select: Optional[List] --- An array of names of attributes to return in the response.
2549        """

Update attributes of an existing Log.

Required parameters:

  • body: Dict[Literal[’log’], Log] — A dictionary with a single item 'log'. Its value is a Log dictionary defining the attributes to set.

  • uuid: str — The UUID of the Log to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class Sys:
2552class Sys:
2553    """Methods to query and manipulate Arvados sys"""
2554
2555    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
2556        """Run scheduled data trash and sweep operations across this cluster's Keep services."""

Methods to query and manipulate Arvados sys

def get( self) -> ArvadosAPIRequest[typing.Dict[str, typing.Any]]:
2555    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
2556        """Run scheduled data trash and sweep operations across this cluster's Keep services."""

Run scheduled data trash and sweep operations across this cluster’s Keep services.

class UserAgreement(typing.TypedDict):
2559class UserAgreement(TypedDict, total=False):
2560    """Arvados user agreement
2561
2562    A user agreement is a collection with terms that users must agree to before
2563    they can use this Arvados cluster.
2564
2565    This is the dictionary object that represents a single UserAgreement in Arvados
2566    and is returned by most `UserAgreements` methods.
2567    The keys of the dictionary are documented below, along with their types.
2568    Not every key may appear in every dictionary returned by an API call.
2569    When a method doesn't return all the data, you can use its `select` parameter
2570    to list the specific keys you need. Refer to the API documentation for details.
2571    """
2572    etag: 'str'
2573    """Object cache version."""
2574    owner_uuid: 'str'
2575    """The UUID of the user or group that owns this user agreement."""
2576    created_at: 'str'
2577    """The time this user agreement was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2578    modified_by_user_uuid: 'str'
2579    """The UUID of the user that last updated this user agreement."""
2580    modified_at: 'str'
2581    """The time this user agreement was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2582    portable_data_hash: 'str'
2583    """The portable data hash of this user agreement. This string provides a unique
2584    and stable reference to these contents.
2585    """
2586    replication_desired: 'int'
2587    """The number of copies that should be made for data in this user agreement."""
2588    replication_confirmed_at: 'str'
2589    """The last time the cluster confirmed that it met `replication_confirmed`
2590    for this user agreement. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`.
2591    """
2592    replication_confirmed: 'int'
2593    """The number of copies of data in this user agreement that the cluster has confirmed
2594    exist in storage.
2595    """
2596    uuid: 'str'
2597    """This user agreement's Arvados UUID, like `zzzzz-gv0sa-12345abcde67890`."""
2598    manifest_text: 'str'
2599    """The manifest text that describes how files are constructed from data blocks
2600    in this user agreement. Refer to the [manifest format][] reference for details.
2601
2602    [manifest format]: https://doc.arvados.org/architecture/manifest-format.html
2603    """
2604    name: 'str'
2605    """The name of this user agreement assigned by a user."""
2606    description: 'str'
2607    """A longer HTML description of this user agreement assigned by a user.
2608    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
2609    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
2610    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
2611    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
2612    """
2613    properties: 'Dict[str, Any]'
2614    """A hash of arbitrary metadata for this user agreement.
2615    Some keys may be reserved by Arvados or defined by a configured vocabulary.
2616    Refer to the [metadata properties reference][] for details.
2617
2618    [metadata properties reference]: https://doc.arvados.org/api/properties.html
2619    """
2620    delete_at: 'str'
2621    """The time this user agreement will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2622    trash_at: 'str'
2623    """The time this user agreement will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2624    is_trashed: 'bool'
2625    """A boolean flag to indicate whether or not this user agreement is trashed."""
2626    storage_classes_desired: 'List'
2627    """An array of strings identifying the storage class(es) that should be used
2628    for data in this user agreement. Storage classes are configured by the cluster administrator.
2629    """
2630    storage_classes_confirmed: 'List'
2631    """An array of strings identifying the storage class(es) the cluster has
2632    confirmed have a copy of this user agreement's data.
2633    """
2634    storage_classes_confirmed_at: 'str'
2635    """The last time the cluster confirmed that data was stored on the storage
2636    class(es) in `storage_classes_confirmed`. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`.
2637    """
2638    current_version_uuid: 'str'
2639    """The UUID of the current version of this user agreement."""
2640    version: 'int'
2641    """An integer that counts which version of a user agreement this record
2642    represents. Refer to [collection versioning][] for details. This attribute is
2643    read-only.
2644
2645    [collection versioning]: https://doc.arvados.org/user/topics/collection-versioning.html
2646    """
2647    preserve_version: 'bool'
2648    """A boolean flag to indicate whether this specific version of this user agreement
2649    should be persisted in cluster storage.
2650    """
2651    file_count: 'int'
2652    """The number of files represented in this user agreement's `manifest_text`.
2653    This attribute is read-only.
2654    """
2655    file_size_total: 'int'
2656    """The total size in bytes of files represented in this user agreement's `manifest_text`.
2657    This attribute is read-only.
2658    """

Arvados user agreement

A user agreement is a collection with terms that users must agree to before they can use this Arvados cluster.

This is the dictionary object that represents a single UserAgreement in Arvados and is returned by most UserAgreements methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

owner_uuid: str

The UUID of the user or group that owns this user agreement.

created_at: str

The time this user agreement was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_by_user_uuid: str

The UUID of the user that last updated this user agreement.

modified_at: str

The time this user agreement was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

portable_data_hash: str

The portable data hash of this user agreement. This string provides a unique and stable reference to these contents.

replication_desired: int

The number of copies that should be made for data in this user agreement.

replication_confirmed_at: str

The last time the cluster confirmed that it met replication_confirmed for this user agreement. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

replication_confirmed: int

The number of copies of data in this user agreement that the cluster has confirmed exist in storage.

uuid: str

This user agreement’s Arvados UUID, like zzzzz-gv0sa-12345abcde67890.

manifest_text: str

The manifest text that describes how files are constructed from data blocks in this user agreement. Refer to the manifest format reference for details.

name: str

The name of this user agreement assigned by a user.

description: str

A longer HTML description of this user agreement assigned by a user. Allowed HTML tags are a, b, blockquote, br, code, del, dd, dl, dt, em, h1, h2, h3, h4, h5, h6, hr, i, img, kbd, li, ol, p, pre, s, section, span, strong, sub, sup, and ul.

properties: Dict[str, Any]

A hash of arbitrary metadata for this user agreement. Some keys may be reserved by Arvados or defined by a configured vocabulary. Refer to the metadata properties reference for details.

delete_at: str

The time this user agreement will be permanently deleted. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

trash_at: str

The time this user agreement will be trashed. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

is_trashed: bool

A boolean flag to indicate whether or not this user agreement is trashed.

storage_classes_desired: List

An array of strings identifying the storage class(es) that should be used for data in this user agreement. Storage classes are configured by the cluster administrator.

storage_classes_confirmed: List

An array of strings identifying the storage class(es) the cluster has confirmed have a copy of this user agreement’s data.

storage_classes_confirmed_at: str

The last time the cluster confirmed that data was stored on the storage class(es) in storage_classes_confirmed. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

current_version_uuid: str

The UUID of the current version of this user agreement.

version: int

An integer that counts which version of a user agreement this record represents. Refer to collection versioning for details. This attribute is read-only.

preserve_version: bool

A boolean flag to indicate whether this specific version of this user agreement should be persisted in cluster storage.

file_count: int

The number of files represented in this user agreement’s manifest_text. This attribute is read-only.

file_size_total: int

The total size in bytes of files represented in this user agreement’s manifest_text. This attribute is read-only.

class UserAgreementList(typing.TypedDict):
2661class UserAgreementList(TypedDict, total=False):
2662    """A list of UserAgreement objects.
2663
2664    This is the dictionary object returned when you call `UserAgreements.list`.
2665    If you just want to iterate all objects that match your search criteria,
2666    consider using `arvados.util.keyset_list_all`.
2667    If you work with this raw object, the keys of the dictionary are documented
2668    below, along with their types. The `items` key maps to a list of matching
2669    `UserAgreement` objects.
2670    """
2671    kind: 'str' = 'arvados#userAgreementList'
2672    """Object type. Always arvados#userAgreementList."""
2673    etag: 'str'
2674    """List cache version."""
2675    items: 'List[UserAgreement]'
2676    """An array of matching UserAgreement objects."""

A list of UserAgreement objects.

This is the dictionary object returned when you call UserAgreements.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching UserAgreement objects.

kind: str = 'arvados#userAgreementList'

Object type. Always arvados#userAgreementList.

etag: str

List cache version.

items: List[UserAgreement]

An array of matching UserAgreement objects.

class UserAgreements:
2679class UserAgreements:
2680    """Methods to query and manipulate Arvados user agreements"""
2681
2682    def create(self, *, body: "Dict[Literal['user_agreement'], UserAgreement]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2683        """Create a new UserAgreement.
2684
2685        Required parameters:
2686
2687        * body: Dict[Literal['user_agreement'], UserAgreement] --- A dictionary with a single item `'user_agreement'`.
2688          Its value is a `UserAgreement` dictionary defining the attributes to set. 
2689
2690        Optional parameters:
2691
2692        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2693
2694        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2695
2696        * select: Optional[List] --- An array of names of attributes to return in the response.
2697        """
2698
2699    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[UserAgreement]':
2700        """Delete an existing UserAgreement.
2701
2702        Required parameters:
2703
2704        * uuid: str --- The UUID of the UserAgreement to delete.
2705        """
2706
2707    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2708        """Get a UserAgreement record by UUID.
2709
2710        Required parameters:
2711
2712        * uuid: str --- The UUID of the UserAgreement to return. 
2713
2714        Optional parameters:
2715
2716        * select: Optional[List] --- An array of names of attributes to return in the response.
2717        """
2718
2719    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[UserAgreementList]':
2720        """Retrieve a UserAgreementList.
2721
2722        This method returns a single page of `UserAgreement` objects that match your search
2723        criteria. If you just want to iterate all objects that match your search
2724        criteria, consider using `arvados.util.keyset_list_all`.
2725
2726        Optional parameters:
2727
2728        * bypass_federation: bool --- If true, do not return results from other clusters in the
2729          federation, only the cluster that received the request.
2730          You must be an administrator to use this flag. Default `False`.
2731
2732        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2733
2734        * count: str --- A string to determine result counting behavior. Supported values are:
2735
2736          * `"exact"`: The response will include an `items_available` field that
2737            counts the number of objects that matched this search criteria,
2738            including ones not included in `items`.
2739
2740          * `"none"`: The response will not include an `items_avaliable`
2741            field. This improves performance by returning a result as soon as enough
2742            `items` have been loaded for this result.
2743
2744          Default `'exact'`.
2745
2746        * distinct: bool --- If this is true, and multiple objects have the same values
2747          for the attributes that you specify in the `select` parameter, then each unique
2748          set of values will only be returned once in the result set. Default `False`.
2749
2750        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2751          Refer to the [filters reference][] for more information about how to write filters. 
2752
2753          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2754
2755        * limit: int --- The maximum number of objects to return in the result.
2756          Note that the API may return fewer results than this if your request hits other
2757          limits set by the administrator. Default `100`.
2758
2759        * offset: int --- Return matching objects starting from this index.
2760          Note that result indexes may change if objects are modified in between a series
2761          of list calls. Default `0`.
2762
2763        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2764          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2765          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2766
2767        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2768
2769        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2770          The keys of this object are attribute names.
2771          Each value is either a single matching value or an array of matching values for that attribute.
2772          The `filters` parameter is more flexible and preferred.
2773        """
2774
2775    def sign(self) -> 'ArvadosAPIRequest[UserAgreement]':
2776        """Create a signature link from the current user for a given user agreement."""
2777
2778    def signatures(self) -> 'ArvadosAPIRequest[UserAgreement]':
2779        """List all user agreement signature links from a user."""
2780
2781    def update(self, *, body: "Dict[Literal['user_agreement'], UserAgreement]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2782        """Update attributes of an existing UserAgreement.
2783
2784        Required parameters:
2785
2786        * body: Dict[Literal['user_agreement'], UserAgreement] --- A dictionary with a single item `'user_agreement'`.
2787          Its value is a `UserAgreement` dictionary defining the attributes to set. 
2788
2789        * uuid: str --- The UUID of the UserAgreement to update. 
2790
2791        Optional parameters:
2792
2793        * select: Optional[List] --- An array of names of attributes to return in the response.
2794        """

Methods to query and manipulate Arvados user agreements

def create( self, *, body: Dict[Literal['user_agreement'], UserAgreement], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[UserAgreement]:
2682    def create(self, *, body: "Dict[Literal['user_agreement'], UserAgreement]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2683        """Create a new UserAgreement.
2684
2685        Required parameters:
2686
2687        * body: Dict[Literal['user_agreement'], UserAgreement] --- A dictionary with a single item `'user_agreement'`.
2688          Its value is a `UserAgreement` dictionary defining the attributes to set. 
2689
2690        Optional parameters:
2691
2692        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2693
2694        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2695
2696        * select: Optional[List] --- An array of names of attributes to return in the response.
2697        """

Create a new UserAgreement.

Required parameters:

  • body: Dict[Literal[’user_agreement’], UserAgreement] — A dictionary with a single item 'user_agreement'. Its value is a UserAgreement dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[UserAgreement]:
2699    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[UserAgreement]':
2700        """Delete an existing UserAgreement.
2701
2702        Required parameters:
2703
2704        * uuid: str --- The UUID of the UserAgreement to delete.
2705        """

Delete an existing UserAgreement.

Required parameters:

  • uuid: str — The UUID of the UserAgreement to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[UserAgreement]:
2707    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2708        """Get a UserAgreement record by UUID.
2709
2710        Required parameters:
2711
2712        * uuid: str --- The UUID of the UserAgreement to return. 
2713
2714        Optional parameters:
2715
2716        * select: Optional[List] --- An array of names of attributes to return in the response.
2717        """

Get a UserAgreement record by UUID.

Required parameters:

  • uuid: str — The UUID of the UserAgreement to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[UserAgreementList]:
2719    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[UserAgreementList]':
2720        """Retrieve a UserAgreementList.
2721
2722        This method returns a single page of `UserAgreement` objects that match your search
2723        criteria. If you just want to iterate all objects that match your search
2724        criteria, consider using `arvados.util.keyset_list_all`.
2725
2726        Optional parameters:
2727
2728        * bypass_federation: bool --- If true, do not return results from other clusters in the
2729          federation, only the cluster that received the request.
2730          You must be an administrator to use this flag. Default `False`.
2731
2732        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2733
2734        * count: str --- A string to determine result counting behavior. Supported values are:
2735
2736          * `"exact"`: The response will include an `items_available` field that
2737            counts the number of objects that matched this search criteria,
2738            including ones not included in `items`.
2739
2740          * `"none"`: The response will not include an `items_avaliable`
2741            field. This improves performance by returning a result as soon as enough
2742            `items` have been loaded for this result.
2743
2744          Default `'exact'`.
2745
2746        * distinct: bool --- If this is true, and multiple objects have the same values
2747          for the attributes that you specify in the `select` parameter, then each unique
2748          set of values will only be returned once in the result set. Default `False`.
2749
2750        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2751          Refer to the [filters reference][] for more information about how to write filters. 
2752
2753          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2754
2755        * limit: int --- The maximum number of objects to return in the result.
2756          Note that the API may return fewer results than this if your request hits other
2757          limits set by the administrator. Default `100`.
2758
2759        * offset: int --- Return matching objects starting from this index.
2760          Note that result indexes may change if objects are modified in between a series
2761          of list calls. Default `0`.
2762
2763        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2764          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2765          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2766
2767        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2768
2769        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2770          The keys of this object are attribute names.
2771          Each value is either a single matching value or an array of matching values for that attribute.
2772          The `filters` parameter is more flexible and preferred.
2773        """

Retrieve a UserAgreementList.

This method returns a single page of UserAgreement objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def sign( self) -> ArvadosAPIRequest[UserAgreement]:
2775    def sign(self) -> 'ArvadosAPIRequest[UserAgreement]':
2776        """Create a signature link from the current user for a given user agreement."""

Create a signature link from the current user for a given user agreement.

def signatures( self) -> ArvadosAPIRequest[UserAgreement]:
2778    def signatures(self) -> 'ArvadosAPIRequest[UserAgreement]':
2779        """List all user agreement signature links from a user."""

List all user agreement signature links from a user.

def update( self, *, body: Dict[Literal['user_agreement'], UserAgreement], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[UserAgreement]:
2781    def update(self, *, body: "Dict[Literal['user_agreement'], UserAgreement]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[UserAgreement]':
2782        """Update attributes of an existing UserAgreement.
2783
2784        Required parameters:
2785
2786        * body: Dict[Literal['user_agreement'], UserAgreement] --- A dictionary with a single item `'user_agreement'`.
2787          Its value is a `UserAgreement` dictionary defining the attributes to set. 
2788
2789        * uuid: str --- The UUID of the UserAgreement to update. 
2790
2791        Optional parameters:
2792
2793        * select: Optional[List] --- An array of names of attributes to return in the response.
2794        """

Update attributes of an existing UserAgreement.

Required parameters:

  • body: Dict[Literal[’user_agreement’], UserAgreement] — A dictionary with a single item 'user_agreement'. Its value is a UserAgreement dictionary defining the attributes to set.

  • uuid: str — The UUID of the UserAgreement to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class User(typing.TypedDict):
2797class User(TypedDict, total=False):
2798    """Arvados user
2799
2800    A user represents a single individual or role who may be authorized to access
2801    this Arvados cluster.
2802
2803    This is the dictionary object that represents a single User in Arvados
2804    and is returned by most `Users` methods.
2805    The keys of the dictionary are documented below, along with their types.
2806    Not every key may appear in every dictionary returned by an API call.
2807    When a method doesn't return all the data, you can use its `select` parameter
2808    to list the specific keys you need. Refer to the API documentation for details.
2809    """
2810    etag: 'str'
2811    """Object cache version."""
2812    uuid: 'str'
2813    """This user's Arvados UUID, like `zzzzz-tpzed-12345abcde67890`."""
2814    owner_uuid: 'str'
2815    """The UUID of the user or group that owns this user."""
2816    created_at: 'str'
2817    """The time this user was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2818    modified_by_user_uuid: 'str'
2819    """The UUID of the user that last updated this user."""
2820    modified_at: 'str'
2821    """The time this user was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
2822    email: 'str'
2823    """This user's email address."""
2824    first_name: 'str'
2825    """This user's first name."""
2826    last_name: 'str'
2827    """This user's last name."""
2828    identity_url: 'str'
2829    """A URL that represents this user with the cluster's identity provider."""
2830    is_admin: 'bool'
2831    """A boolean flag. If set, this user is an administrator of the Arvados
2832    cluster, and automatically passes most permissions checks.
2833    """
2834    prefs: 'Dict[str, Any]'
2835    """A hash that stores cluster-wide user preferences."""
2836    is_active: 'bool'
2837    """A boolean flag. If unset, this user is not permitted to make any Arvados
2838    API requests.
2839    """
2840    username: 'str'
2841    """This user's Unix username on virtual machines."""

Arvados user

A user represents a single individual or role who may be authorized to access this Arvados cluster.

This is the dictionary object that represents a single User in Arvados and is returned by most Users methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This user’s Arvados UUID, like zzzzz-tpzed-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this user.

created_at: str

The time this user was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_by_user_uuid: str

The UUID of the user that last updated this user.

modified_at: str

The time this user was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

email: str

This user’s email address.

first_name: str

This user’s first name.

last_name: str

This user’s last name.

identity_url: str

A URL that represents this user with the cluster’s identity provider.

is_admin: bool

A boolean flag. If set, this user is an administrator of the Arvados cluster, and automatically passes most permissions checks.

prefs: Dict[str, Any]

A hash that stores cluster-wide user preferences.

is_active: bool

A boolean flag. If unset, this user is not permitted to make any Arvados API requests.

username: str

This user’s Unix username on virtual machines.

class UserList(typing.TypedDict):
2844class UserList(TypedDict, total=False):
2845    """A list of User objects.
2846
2847    This is the dictionary object returned when you call `Users.list`.
2848    If you just want to iterate all objects that match your search criteria,
2849    consider using `arvados.util.keyset_list_all`.
2850    If you work with this raw object, the keys of the dictionary are documented
2851    below, along with their types. The `items` key maps to a list of matching
2852    `User` objects.
2853    """
2854    kind: 'str' = 'arvados#userList'
2855    """Object type. Always arvados#userList."""
2856    etag: 'str'
2857    """List cache version."""
2858    items: 'List[User]'
2859    """An array of matching User objects."""

A list of User objects.

This is the dictionary object returned when you call Users.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching User objects.

kind: str = 'arvados#userList'

Object type. Always arvados#userList.

etag: str

List cache version.

items: List[User]

An array of matching User objects.

class Users:
2862class Users:
2863    """Methods to query and manipulate Arvados users"""
2864
2865    def activate(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
2866        """Set the `is_active` flag on a user record.
2867
2868        Required parameters:
2869
2870        * uuid: str --- The UUID of the User to update.
2871        """
2872
2873    def create(self, *, body: "Dict[Literal['user'], User]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
2874        """Create a new User.
2875
2876        Required parameters:
2877
2878        * body: Dict[Literal['user'], User] --- A dictionary with a single item `'user'`.
2879          Its value is a `User` dictionary defining the attributes to set. 
2880
2881        Optional parameters:
2882
2883        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2884
2885        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2886
2887        * select: Optional[List] --- An array of names of attributes to return in the response.
2888        """
2889
2890    def current(self) -> 'ArvadosAPIRequest[User]':
2891        """Return the user record associated with the API token authorizing this request."""
2892
2893    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
2894        """Delete an existing User.
2895
2896        Required parameters:
2897
2898        * uuid: str --- The UUID of the User to delete.
2899        """
2900
2901    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
2902        """Get a User record by UUID.
2903
2904        Required parameters:
2905
2906        * uuid: str --- The UUID of the User to return. 
2907
2908        Optional parameters:
2909
2910        * select: Optional[List] --- An array of names of attributes to return in the response.
2911        """
2912
2913    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[UserList]':
2914        """Retrieve a UserList.
2915
2916        This method returns a single page of `User` objects that match your search
2917        criteria. If you just want to iterate all objects that match your search
2918        criteria, consider using `arvados.util.keyset_list_all`.
2919
2920        Optional parameters:
2921
2922        * bypass_federation: bool --- If true, do not return results from other clusters in the
2923          federation, only the cluster that received the request.
2924          You must be an administrator to use this flag. Default `False`.
2925
2926        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2927
2928        * count: str --- A string to determine result counting behavior. Supported values are:
2929
2930          * `"exact"`: The response will include an `items_available` field that
2931            counts the number of objects that matched this search criteria,
2932            including ones not included in `items`.
2933
2934          * `"none"`: The response will not include an `items_avaliable`
2935            field. This improves performance by returning a result as soon as enough
2936            `items` have been loaded for this result.
2937
2938          Default `'exact'`.
2939
2940        * distinct: bool --- If this is true, and multiple objects have the same values
2941          for the attributes that you specify in the `select` parameter, then each unique
2942          set of values will only be returned once in the result set. Default `False`.
2943
2944        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2945          Refer to the [filters reference][] for more information about how to write filters. 
2946
2947          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2948
2949        * limit: int --- The maximum number of objects to return in the result.
2950          Note that the API may return fewer results than this if your request hits other
2951          limits set by the administrator. Default `100`.
2952
2953        * offset: int --- Return matching objects starting from this index.
2954          Note that result indexes may change if objects are modified in between a series
2955          of list calls. Default `0`.
2956
2957        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2958          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2959          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2960
2961        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2962
2963        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2964          The keys of this object are attribute names.
2965          Each value is either a single matching value or an array of matching values for that attribute.
2966          The `filters` parameter is more flexible and preferred.
2967        """
2968
2969    def merge(self, *, new_owner_uuid: 'str', new_user_token: 'Optional[str]' = None, new_user_uuid: 'Optional[str]' = None, old_user_uuid: 'Optional[str]' = None, redirect_to_new_user: 'bool' = False) -> 'ArvadosAPIRequest[User]':
2970        """Transfer ownership of one user's data to another.
2971
2972        Required parameters:
2973
2974        * new_owner_uuid: str --- UUID of the user or group that will take ownership of data owned by the old user. 
2975
2976        Optional parameters:
2977
2978        * new_user_token: Optional[str] --- Valid API token for the user receiving ownership. If you use this option, it takes ownership of data owned by the user making the request. 
2979
2980        * new_user_uuid: Optional[str] --- UUID of the user receiving ownership. You must be an admin to use this option. 
2981
2982        * old_user_uuid: Optional[str] --- UUID of the user whose ownership is being transferred to `new_owner_uuid`. You must be an admin to use this option. 
2983
2984        * redirect_to_new_user: bool --- If true, authorization attempts for the old user will be redirected to the new user. Default `False`.
2985        """
2986
2987    def setup(self, *, repo_name: 'Optional[str]' = None, send_notification_email: 'bool' = False, user: 'Optional[Dict[str, Any]]' = None, uuid: 'Optional[str]' = None, vm_uuid: 'Optional[str]' = None) -> 'ArvadosAPIRequest[User]':
2988        """Convenience method to "fully" set up a user record with a virtual machine login and notification email.
2989
2990        Optional parameters:
2991
2992        * repo_name: Optional[str] --- This parameter is obsolete and ignored. 
2993
2994        * send_notification_email: bool --- If true, send an email to the user notifying them they can now access this Arvados cluster. Default `False`.
2995
2996        * user: Optional[Dict[str, Any]] --- Attributes of a new user record to set up. 
2997
2998        * uuid: Optional[str] --- UUID of an existing user record to set up. 
2999
3000        * vm_uuid: Optional[str] --- If given, setup creates a login link to allow this user to access the Arvados virtual machine with this UUID.
3001        """
3002
3003    def system(self) -> 'ArvadosAPIRequest[User]':
3004        """Return this cluster's system ("root") user record."""
3005
3006    def unsetup(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
3007        """Unset a user's active flag and delete associated records.
3008
3009        Required parameters:
3010
3011        * uuid: str --- The UUID of the User to update.
3012        """
3013
3014    def update(self, *, body: "Dict[Literal['user'], User]", uuid: 'str', bypass_federation: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
3015        """Update attributes of an existing User.
3016
3017        Required parameters:
3018
3019        * body: Dict[Literal['user'], User] --- A dictionary with a single item `'user'`.
3020          Its value is a `User` dictionary defining the attributes to set. 
3021
3022        * uuid: str --- The UUID of the User to update. 
3023
3024        Optional parameters:
3025
3026        * bypass_federation: bool --- If true, do not try to update the user on any other clusters in the federation,
3027          only the cluster that received the request.
3028          You must be an administrator to use this flag. Default `False`.
3029
3030        * select: Optional[List] --- An array of names of attributes to return in the response.
3031        """

Methods to query and manipulate Arvados users

def activate( self, *, uuid: str) -> ArvadosAPIRequest[User]:
2865    def activate(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
2866        """Set the `is_active` flag on a user record.
2867
2868        Required parameters:
2869
2870        * uuid: str --- The UUID of the User to update.
2871        """

Set the is_active flag on a user record.

Required parameters:

  • uuid: str — The UUID of the User to update.
def create( self, *, body: Dict[Literal['user'], User], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[User]:
2873    def create(self, *, body: "Dict[Literal['user'], User]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
2874        """Create a new User.
2875
2876        Required parameters:
2877
2878        * body: Dict[Literal['user'], User] --- A dictionary with a single item `'user'`.
2879          Its value is a `User` dictionary defining the attributes to set. 
2880
2881        Optional parameters:
2882
2883        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
2884
2885        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
2886
2887        * select: Optional[List] --- An array of names of attributes to return in the response.
2888        """

Create a new User.

Required parameters:

  • body: Dict[Literal[’user’], User] — A dictionary with a single item 'user'. Its value is a User dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def current( self) -> ArvadosAPIRequest[User]:
2890    def current(self) -> 'ArvadosAPIRequest[User]':
2891        """Return the user record associated with the API token authorizing this request."""

Return the user record associated with the API token authorizing this request.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[User]:
2893    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
2894        """Delete an existing User.
2895
2896        Required parameters:
2897
2898        * uuid: str --- The UUID of the User to delete.
2899        """

Delete an existing User.

Required parameters:

  • uuid: str — The UUID of the User to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[User]:
2901    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
2902        """Get a User record by UUID.
2903
2904        Required parameters:
2905
2906        * uuid: str --- The UUID of the User to return. 
2907
2908        Optional parameters:
2909
2910        * select: Optional[List] --- An array of names of attributes to return in the response.
2911        """

Get a User record by UUID.

Required parameters:

  • uuid: str — The UUID of the User to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[UserList]:
2913    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[UserList]':
2914        """Retrieve a UserList.
2915
2916        This method returns a single page of `User` objects that match your search
2917        criteria. If you just want to iterate all objects that match your search
2918        criteria, consider using `arvados.util.keyset_list_all`.
2919
2920        Optional parameters:
2921
2922        * bypass_federation: bool --- If true, do not return results from other clusters in the
2923          federation, only the cluster that received the request.
2924          You must be an administrator to use this flag. Default `False`.
2925
2926        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
2927
2928        * count: str --- A string to determine result counting behavior. Supported values are:
2929
2930          * `"exact"`: The response will include an `items_available` field that
2931            counts the number of objects that matched this search criteria,
2932            including ones not included in `items`.
2933
2934          * `"none"`: The response will not include an `items_avaliable`
2935            field. This improves performance by returning a result as soon as enough
2936            `items` have been loaded for this result.
2937
2938          Default `'exact'`.
2939
2940        * distinct: bool --- If this is true, and multiple objects have the same values
2941          for the attributes that you specify in the `select` parameter, then each unique
2942          set of values will only be returned once in the result set. Default `False`.
2943
2944        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
2945          Refer to the [filters reference][] for more information about how to write filters. 
2946
2947          [filters reference]: https://doc.arvados.org/api/methods.html#filters
2948
2949        * limit: int --- The maximum number of objects to return in the result.
2950          Note that the API may return fewer results than this if your request hits other
2951          limits set by the administrator. Default `100`.
2952
2953        * offset: int --- Return matching objects starting from this index.
2954          Note that result indexes may change if objects are modified in between a series
2955          of list calls. Default `0`.
2956
2957        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
2958          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
2959          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
2960
2961        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
2962
2963        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
2964          The keys of this object are attribute names.
2965          Each value is either a single matching value or an array of matching values for that attribute.
2966          The `filters` parameter is more flexible and preferred.
2967        """

Retrieve a UserList.

This method returns a single page of User objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def merge( self, *, new_owner_uuid: str, new_user_token: Optional[str] = None, new_user_uuid: Optional[str] = None, old_user_uuid: Optional[str] = None, redirect_to_new_user: bool = False) -> ArvadosAPIRequest[User]:
2969    def merge(self, *, new_owner_uuid: 'str', new_user_token: 'Optional[str]' = None, new_user_uuid: 'Optional[str]' = None, old_user_uuid: 'Optional[str]' = None, redirect_to_new_user: 'bool' = False) -> 'ArvadosAPIRequest[User]':
2970        """Transfer ownership of one user's data to another.
2971
2972        Required parameters:
2973
2974        * new_owner_uuid: str --- UUID of the user or group that will take ownership of data owned by the old user. 
2975
2976        Optional parameters:
2977
2978        * new_user_token: Optional[str] --- Valid API token for the user receiving ownership. If you use this option, it takes ownership of data owned by the user making the request. 
2979
2980        * new_user_uuid: Optional[str] --- UUID of the user receiving ownership. You must be an admin to use this option. 
2981
2982        * old_user_uuid: Optional[str] --- UUID of the user whose ownership is being transferred to `new_owner_uuid`. You must be an admin to use this option. 
2983
2984        * redirect_to_new_user: bool --- If true, authorization attempts for the old user will be redirected to the new user. Default `False`.
2985        """

Transfer ownership of one user’s data to another.

Required parameters:

  • new_owner_uuid: str — UUID of the user or group that will take ownership of data owned by the old user.

Optional parameters:

  • new_user_token: Optional[str] — Valid API token for the user receiving ownership. If you use this option, it takes ownership of data owned by the user making the request.

  • new_user_uuid: Optional[str] — UUID of the user receiving ownership. You must be an admin to use this option.

  • old_user_uuid: Optional[str] — UUID of the user whose ownership is being transferred to new_owner_uuid. You must be an admin to use this option.

  • redirect_to_new_user: bool — If true, authorization attempts for the old user will be redirected to the new user. Default False.

def setup( self, *, repo_name: Optional[str] = None, send_notification_email: bool = False, user: Optional[Dict[str, Any]] = None, uuid: Optional[str] = None, vm_uuid: Optional[str] = None) -> ArvadosAPIRequest[User]:
2987    def setup(self, *, repo_name: 'Optional[str]' = None, send_notification_email: 'bool' = False, user: 'Optional[Dict[str, Any]]' = None, uuid: 'Optional[str]' = None, vm_uuid: 'Optional[str]' = None) -> 'ArvadosAPIRequest[User]':
2988        """Convenience method to "fully" set up a user record with a virtual machine login and notification email.
2989
2990        Optional parameters:
2991
2992        * repo_name: Optional[str] --- This parameter is obsolete and ignored. 
2993
2994        * send_notification_email: bool --- If true, send an email to the user notifying them they can now access this Arvados cluster. Default `False`.
2995
2996        * user: Optional[Dict[str, Any]] --- Attributes of a new user record to set up. 
2997
2998        * uuid: Optional[str] --- UUID of an existing user record to set up. 
2999
3000        * vm_uuid: Optional[str] --- If given, setup creates a login link to allow this user to access the Arvados virtual machine with this UUID.
3001        """

Convenience method to “fully” set up a user record with a virtual machine login and notification email.

Optional parameters:

  • repo_name: Optional[str] — This parameter is obsolete and ignored.

  • send_notification_email: bool — If true, send an email to the user notifying them they can now access this Arvados cluster. Default False.

  • user: Optional[Dict[str, Any]] — Attributes of a new user record to set up.

  • uuid: Optional[str] — UUID of an existing user record to set up.

  • vm_uuid: Optional[str] — If given, setup creates a login link to allow this user to access the Arvados virtual machine with this UUID.

def system( self) -> ArvadosAPIRequest[User]:
3003    def system(self) -> 'ArvadosAPIRequest[User]':
3004        """Return this cluster's system ("root") user record."""

Return this cluster’s system ("root") user record.

def unsetup( self, *, uuid: str) -> ArvadosAPIRequest[User]:
3006    def unsetup(self, *, uuid: 'str') -> 'ArvadosAPIRequest[User]':
3007        """Unset a user's active flag and delete associated records.
3008
3009        Required parameters:
3010
3011        * uuid: str --- The UUID of the User to update.
3012        """

Unset a user’s active flag and delete associated records.

Required parameters:

  • uuid: str — The UUID of the User to update.
def update( self, *, body: Dict[Literal['user'], User], uuid: str, bypass_federation: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[User]:
3014    def update(self, *, body: "Dict[Literal['user'], User]", uuid: 'str', bypass_federation: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[User]':
3015        """Update attributes of an existing User.
3016
3017        Required parameters:
3018
3019        * body: Dict[Literal['user'], User] --- A dictionary with a single item `'user'`.
3020          Its value is a `User` dictionary defining the attributes to set. 
3021
3022        * uuid: str --- The UUID of the User to update. 
3023
3024        Optional parameters:
3025
3026        * bypass_federation: bool --- If true, do not try to update the user on any other clusters in the federation,
3027          only the cluster that received the request.
3028          You must be an administrator to use this flag. Default `False`.
3029
3030        * select: Optional[List] --- An array of names of attributes to return in the response.
3031        """

Update attributes of an existing User.

Required parameters:

  • body: Dict[Literal[’user’], User] — A dictionary with a single item 'user'. Its value is a User dictionary defining the attributes to set.

  • uuid: str — The UUID of the User to update.

Optional parameters:

  • bypass_federation: bool — If true, do not try to update the user on any other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

class VirtualMachine(typing.TypedDict):
3034class VirtualMachine(TypedDict, total=False):
3035    """Arvados virtual machine ("shell node")
3036
3037    This resource stores information about a virtual machine or "shell node"
3038    hosted on this Arvados cluster where users can log in and use preconfigured
3039    Arvados client tools.
3040
3041    This is the dictionary object that represents a single VirtualMachine in Arvados
3042    and is returned by most `VirtualMachines` methods.
3043    The keys of the dictionary are documented below, along with their types.
3044    Not every key may appear in every dictionary returned by an API call.
3045    When a method doesn't return all the data, you can use its `select` parameter
3046    to list the specific keys you need. Refer to the API documentation for details.
3047    """
3048    etag: 'str'
3049    """Object cache version."""
3050    uuid: 'str'
3051    """This virtual machine's Arvados UUID, like `zzzzz-2x53u-12345abcde67890`."""
3052    owner_uuid: 'str'
3053    """The UUID of the user or group that owns this virtual machine."""
3054    modified_by_user_uuid: 'str'
3055    """The UUID of the user that last updated this virtual machine."""
3056    modified_at: 'str'
3057    """The time this virtual machine was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
3058    hostname: 'str'
3059    """The DNS hostname where users should access this virtual machine."""
3060    created_at: 'str'
3061    """The time this virtual machine was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""

Arvados virtual machine ("shell node")

This resource stores information about a virtual machine or “shell node” hosted on this Arvados cluster where users can log in and use preconfigured Arvados client tools.

This is the dictionary object that represents a single VirtualMachine in Arvados and is returned by most VirtualMachines methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This virtual machine’s Arvados UUID, like zzzzz-2x53u-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this virtual machine.

modified_by_user_uuid: str

The UUID of the user that last updated this virtual machine.

modified_at: str

The time this virtual machine was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

hostname: str

The DNS hostname where users should access this virtual machine.

created_at: str

The time this virtual machine was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

class VirtualMachineList(typing.TypedDict):
3064class VirtualMachineList(TypedDict, total=False):
3065    """A list of VirtualMachine objects.
3066
3067    This is the dictionary object returned when you call `VirtualMachines.list`.
3068    If you just want to iterate all objects that match your search criteria,
3069    consider using `arvados.util.keyset_list_all`.
3070    If you work with this raw object, the keys of the dictionary are documented
3071    below, along with their types. The `items` key maps to a list of matching
3072    `VirtualMachine` objects.
3073    """
3074    kind: 'str' = 'arvados#virtualMachineList'
3075    """Object type. Always arvados#virtualMachineList."""
3076    etag: 'str'
3077    """List cache version."""
3078    items: 'List[VirtualMachine]'
3079    """An array of matching VirtualMachine objects."""

A list of VirtualMachine objects.

This is the dictionary object returned when you call VirtualMachines.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching VirtualMachine objects.

kind: str = 'arvados#virtualMachineList'

Object type. Always arvados#virtualMachineList.

etag: str

List cache version.

items: List[VirtualMachine]

An array of matching VirtualMachine objects.

class VirtualMachines:
3082class VirtualMachines:
3083    """Methods to query and manipulate Arvados virtual machines"""
3084
3085    def create(self, *, body: "Dict[Literal['virtual_machine'], VirtualMachine]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3086        """Create a new VirtualMachine.
3087
3088        Required parameters:
3089
3090        * body: Dict[Literal['virtual_machine'], VirtualMachine] --- A dictionary with a single item `'virtual_machine'`.
3091          Its value is a `VirtualMachine` dictionary defining the attributes to set. 
3092
3093        Optional parameters:
3094
3095        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
3096
3097        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
3098
3099        * select: Optional[List] --- An array of names of attributes to return in the response.
3100        """
3101
3102    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[VirtualMachine]':
3103        """Delete an existing VirtualMachine.
3104
3105        Required parameters:
3106
3107        * uuid: str --- The UUID of the VirtualMachine to delete.
3108        """
3109
3110    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3111        """Get a VirtualMachine record by UUID.
3112
3113        Required parameters:
3114
3115        * uuid: str --- The UUID of the VirtualMachine to return. 
3116
3117        Optional parameters:
3118
3119        * select: Optional[List] --- An array of names of attributes to return in the response.
3120        """
3121
3122    def get_all_logins(self) -> 'ArvadosAPIRequest[VirtualMachine]':
3123        """List login permission links for all virtual machines."""
3124
3125    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[VirtualMachineList]':
3126        """Retrieve a VirtualMachineList.
3127
3128        This method returns a single page of `VirtualMachine` objects that match your search
3129        criteria. If you just want to iterate all objects that match your search
3130        criteria, consider using `arvados.util.keyset_list_all`.
3131
3132        Optional parameters:
3133
3134        * bypass_federation: bool --- If true, do not return results from other clusters in the
3135          federation, only the cluster that received the request.
3136          You must be an administrator to use this flag. Default `False`.
3137
3138        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
3139
3140        * count: str --- A string to determine result counting behavior. Supported values are:
3141
3142          * `"exact"`: The response will include an `items_available` field that
3143            counts the number of objects that matched this search criteria,
3144            including ones not included in `items`.
3145
3146          * `"none"`: The response will not include an `items_avaliable`
3147            field. This improves performance by returning a result as soon as enough
3148            `items` have been loaded for this result.
3149
3150          Default `'exact'`.
3151
3152        * distinct: bool --- If this is true, and multiple objects have the same values
3153          for the attributes that you specify in the `select` parameter, then each unique
3154          set of values will only be returned once in the result set. Default `False`.
3155
3156        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
3157          Refer to the [filters reference][] for more information about how to write filters. 
3158
3159          [filters reference]: https://doc.arvados.org/api/methods.html#filters
3160
3161        * limit: int --- The maximum number of objects to return in the result.
3162          Note that the API may return fewer results than this if your request hits other
3163          limits set by the administrator. Default `100`.
3164
3165        * offset: int --- Return matching objects starting from this index.
3166          Note that result indexes may change if objects are modified in between a series
3167          of list calls. Default `0`.
3168
3169        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
3170          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
3171          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
3172
3173        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
3174
3175        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
3176          The keys of this object are attribute names.
3177          Each value is either a single matching value or an array of matching values for that attribute.
3178          The `filters` parameter is more flexible and preferred.
3179        """
3180
3181    def logins(self, *, uuid: 'str') -> 'ArvadosAPIRequest[VirtualMachine]':
3182        """List login permission links for a given virtual machine.
3183
3184        Required parameters:
3185
3186        * uuid: str --- The UUID of the VirtualMachine to query.
3187        """
3188
3189    def update(self, *, body: "Dict[Literal['virtual_machine'], VirtualMachine]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3190        """Update attributes of an existing VirtualMachine.
3191
3192        Required parameters:
3193
3194        * body: Dict[Literal['virtual_machine'], VirtualMachine] --- A dictionary with a single item `'virtual_machine'`.
3195          Its value is a `VirtualMachine` dictionary defining the attributes to set. 
3196
3197        * uuid: str --- The UUID of the VirtualMachine to update. 
3198
3199        Optional parameters:
3200
3201        * select: Optional[List] --- An array of names of attributes to return in the response.
3202        """

Methods to query and manipulate Arvados virtual machines

def create( self, *, body: Dict[Literal['virtual_machine'], VirtualMachine], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[VirtualMachine]:
3085    def create(self, *, body: "Dict[Literal['virtual_machine'], VirtualMachine]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3086        """Create a new VirtualMachine.
3087
3088        Required parameters:
3089
3090        * body: Dict[Literal['virtual_machine'], VirtualMachine] --- A dictionary with a single item `'virtual_machine'`.
3091          Its value is a `VirtualMachine` dictionary defining the attributes to set. 
3092
3093        Optional parameters:
3094
3095        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
3096
3097        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
3098
3099        * select: Optional[List] --- An array of names of attributes to return in the response.
3100        """

Create a new VirtualMachine.

Required parameters:

  • body: Dict[Literal[’virtual_machine’], VirtualMachine] — A dictionary with a single item 'virtual_machine'. Its value is a VirtualMachine dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[VirtualMachine]:
3102    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[VirtualMachine]':
3103        """Delete an existing VirtualMachine.
3104
3105        Required parameters:
3106
3107        * uuid: str --- The UUID of the VirtualMachine to delete.
3108        """

Delete an existing VirtualMachine.

Required parameters:

  • uuid: str — The UUID of the VirtualMachine to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[VirtualMachine]:
3110    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3111        """Get a VirtualMachine record by UUID.
3112
3113        Required parameters:
3114
3115        * uuid: str --- The UUID of the VirtualMachine to return. 
3116
3117        Optional parameters:
3118
3119        * select: Optional[List] --- An array of names of attributes to return in the response.
3120        """

Get a VirtualMachine record by UUID.

Required parameters:

  • uuid: str — The UUID of the VirtualMachine to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def get_all_logins( self) -> ArvadosAPIRequest[VirtualMachine]:
3122    def get_all_logins(self) -> 'ArvadosAPIRequest[VirtualMachine]':
3123        """List login permission links for all virtual machines."""

List login permission links for all virtual machines.

def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[VirtualMachineList]:
3125    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[VirtualMachineList]':
3126        """Retrieve a VirtualMachineList.
3127
3128        This method returns a single page of `VirtualMachine` objects that match your search
3129        criteria. If you just want to iterate all objects that match your search
3130        criteria, consider using `arvados.util.keyset_list_all`.
3131
3132        Optional parameters:
3133
3134        * bypass_federation: bool --- If true, do not return results from other clusters in the
3135          federation, only the cluster that received the request.
3136          You must be an administrator to use this flag. Default `False`.
3137
3138        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
3139
3140        * count: str --- A string to determine result counting behavior. Supported values are:
3141
3142          * `"exact"`: The response will include an `items_available` field that
3143            counts the number of objects that matched this search criteria,
3144            including ones not included in `items`.
3145
3146          * `"none"`: The response will not include an `items_avaliable`
3147            field. This improves performance by returning a result as soon as enough
3148            `items` have been loaded for this result.
3149
3150          Default `'exact'`.
3151
3152        * distinct: bool --- If this is true, and multiple objects have the same values
3153          for the attributes that you specify in the `select` parameter, then each unique
3154          set of values will only be returned once in the result set. Default `False`.
3155
3156        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
3157          Refer to the [filters reference][] for more information about how to write filters. 
3158
3159          [filters reference]: https://doc.arvados.org/api/methods.html#filters
3160
3161        * limit: int --- The maximum number of objects to return in the result.
3162          Note that the API may return fewer results than this if your request hits other
3163          limits set by the administrator. Default `100`.
3164
3165        * offset: int --- Return matching objects starting from this index.
3166          Note that result indexes may change if objects are modified in between a series
3167          of list calls. Default `0`.
3168
3169        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
3170          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
3171          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
3172
3173        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
3174
3175        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
3176          The keys of this object are attribute names.
3177          Each value is either a single matching value or an array of matching values for that attribute.
3178          The `filters` parameter is more flexible and preferred.
3179        """

Retrieve a VirtualMachineList.

This method returns a single page of VirtualMachine objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def logins( self, *, uuid: str) -> ArvadosAPIRequest[VirtualMachine]:
3181    def logins(self, *, uuid: 'str') -> 'ArvadosAPIRequest[VirtualMachine]':
3182        """List login permission links for a given virtual machine.
3183
3184        Required parameters:
3185
3186        * uuid: str --- The UUID of the VirtualMachine to query.
3187        """

List login permission links for a given virtual machine.

Required parameters:

  • uuid: str — The UUID of the VirtualMachine to query.
def update( self, *, body: Dict[Literal['virtual_machine'], VirtualMachine], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[VirtualMachine]:
3189    def update(self, *, body: "Dict[Literal['virtual_machine'], VirtualMachine]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[VirtualMachine]':
3190        """Update attributes of an existing VirtualMachine.
3191
3192        Required parameters:
3193
3194        * body: Dict[Literal['virtual_machine'], VirtualMachine] --- A dictionary with a single item `'virtual_machine'`.
3195          Its value is a `VirtualMachine` dictionary defining the attributes to set. 
3196
3197        * uuid: str --- The UUID of the VirtualMachine to update. 
3198
3199        Optional parameters:
3200
3201        * select: Optional[List] --- An array of names of attributes to return in the response.
3202        """

Update attributes of an existing VirtualMachine.

Required parameters:

  • body: Dict[Literal[’virtual_machine’], VirtualMachine] — A dictionary with a single item 'virtual_machine'. Its value is a VirtualMachine dictionary defining the attributes to set.

  • uuid: str — The UUID of the VirtualMachine to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class Vocabularies:
3205class Vocabularies:
3206    """Methods to query and manipulate Arvados vocabularies"""
3207
3208    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
3209        """Get this cluster's configured vocabulary definition.
3210
3211        Refer to [metadata vocabulary documentation][] for details.
3212
3213        [metadata vocabulary documentation]: https://doc.aravdos.org/admin/metadata-vocabulary.html
3214        """

Methods to query and manipulate Arvados vocabularies

def get( self) -> ArvadosAPIRequest[typing.Dict[str, typing.Any]]:
3208    def get(self) -> 'ArvadosAPIRequest[Dict[str, Any]]':
3209        """Get this cluster's configured vocabulary definition.
3210
3211        Refer to [metadata vocabulary documentation][] for details.
3212
3213        [metadata vocabulary documentation]: https://doc.aravdos.org/admin/metadata-vocabulary.html
3214        """

Get this cluster’s configured vocabulary definition.

Refer to metadata vocabulary documentation for details.

class Workflow(typing.TypedDict):
3217class Workflow(TypedDict, total=False):
3218    """Arvados workflow
3219
3220    A workflow contains workflow definition source code that Arvados can execute
3221    along with associated metadata for users.
3222
3223    This is the dictionary object that represents a single Workflow in Arvados
3224    and is returned by most `Workflows` methods.
3225    The keys of the dictionary are documented below, along with their types.
3226    Not every key may appear in every dictionary returned by an API call.
3227    When a method doesn't return all the data, you can use its `select` parameter
3228    to list the specific keys you need. Refer to the API documentation for details.
3229    """
3230    etag: 'str'
3231    """Object cache version."""
3232    uuid: 'str'
3233    """This workflow's Arvados UUID, like `zzzzz-7fd4e-12345abcde67890`."""
3234    owner_uuid: 'str'
3235    """The UUID of the user or group that owns this workflow."""
3236    created_at: 'str'
3237    """The time this workflow was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
3238    modified_at: 'str'
3239    """The time this workflow was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to `ciso8601.parse_datetime` to build a `datetime.datetime`."""
3240    modified_by_user_uuid: 'str'
3241    """The UUID of the user that last updated this workflow."""
3242    name: 'str'
3243    """The name of this workflow assigned by a user."""
3244    description: 'str'
3245    """A longer HTML description of this workflow assigned by a user.
3246    Allowed HTML tags are `a`, `b`, `blockquote`, `br`, `code`,
3247    `del`, `dd`, `dl`, `dt`, `em`, `h1`, `h2`, `h3`, `h4`, `h5`, `h6`, `hr`,
3248    `i`, `img`, `kbd`, `li`, `ol`, `p`, `pre`,
3249    `s`, `section`, `span`, `strong`, `sub`, `sup`, and `ul`.
3250    """
3251    definition: 'str'
3252    """A string with the CWL source of this workflow."""
3253    collection_uuid: 'str'
3254    """The collection this workflow is linked to, containing the definition of the workflow."""

Arvados workflow

A workflow contains workflow definition source code that Arvados can execute along with associated metadata for users.

This is the dictionary object that represents a single Workflow in Arvados and is returned by most Workflows methods. The keys of the dictionary are documented below, along with their types. Not every key may appear in every dictionary returned by an API call. When a method doesn’t return all the data, you can use its select parameter to list the specific keys you need. Refer to the API documentation for details.

etag: str

Object cache version.

uuid: str

This workflow’s Arvados UUID, like zzzzz-7fd4e-12345abcde67890.

owner_uuid: str

The UUID of the user or group that owns this workflow.

created_at: str

The time this workflow was created. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_at: str

The time this workflow was last updated. The string encodes a UTC date and time in ISO 8601 format. Pass this to ciso8601.parse_datetime to build a datetime.datetime.

modified_by_user_uuid: str

The UUID of the user that last updated this workflow.

name: str

The name of this workflow assigned by a user.

description: str

A longer HTML description of this workflow assigned by a user. Allowed HTML tags are a, b, blockquote, br, code, del, dd, dl, dt, em, h1, h2, h3, h4, h5, h6, hr, i, img, kbd, li, ol, p, pre, s, section, span, strong, sub, sup, and ul.

definition: str

A string with the CWL source of this workflow.

collection_uuid: str

The collection this workflow is linked to, containing the definition of the workflow.

class WorkflowList(typing.TypedDict):
3257class WorkflowList(TypedDict, total=False):
3258    """A list of Workflow objects.
3259
3260    This is the dictionary object returned when you call `Workflows.list`.
3261    If you just want to iterate all objects that match your search criteria,
3262    consider using `arvados.util.keyset_list_all`.
3263    If you work with this raw object, the keys of the dictionary are documented
3264    below, along with their types. The `items` key maps to a list of matching
3265    `Workflow` objects.
3266    """
3267    kind: 'str' = 'arvados#workflowList'
3268    """Object type. Always arvados#workflowList."""
3269    etag: 'str'
3270    """List cache version."""
3271    items: 'List[Workflow]'
3272    """An array of matching Workflow objects."""

A list of Workflow objects.

This is the dictionary object returned when you call Workflows.list. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all. If you work with this raw object, the keys of the dictionary are documented below, along with their types. The items key maps to a list of matching Workflow objects.

kind: str = 'arvados#workflowList'

Object type. Always arvados#workflowList.

etag: str

List cache version.

items: List[Workflow]

An array of matching Workflow objects.

class Workflows:
3275class Workflows:
3276    """Methods to query and manipulate Arvados workflows"""
3277
3278    def create(self, *, body: "Dict[Literal['workflow'], Workflow]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3279        """Create a new Workflow.
3280
3281        Required parameters:
3282
3283        * body: Dict[Literal['workflow'], Workflow] --- A dictionary with a single item `'workflow'`.
3284          Its value is a `Workflow` dictionary defining the attributes to set. 
3285
3286        Optional parameters:
3287
3288        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
3289
3290        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
3291
3292        * select: Optional[List] --- An array of names of attributes to return in the response.
3293        """
3294
3295    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Workflow]':
3296        """Delete an existing Workflow.
3297
3298        Required parameters:
3299
3300        * uuid: str --- The UUID of the Workflow to delete.
3301        """
3302
3303    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3304        """Get a Workflow record by UUID.
3305
3306        Required parameters:
3307
3308        * uuid: str --- The UUID of the Workflow to return. 
3309
3310        Optional parameters:
3311
3312        * select: Optional[List] --- An array of names of attributes to return in the response.
3313        """
3314
3315    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[WorkflowList]':
3316        """Retrieve a WorkflowList.
3317
3318        This method returns a single page of `Workflow` objects that match your search
3319        criteria. If you just want to iterate all objects that match your search
3320        criteria, consider using `arvados.util.keyset_list_all`.
3321
3322        Optional parameters:
3323
3324        * bypass_federation: bool --- If true, do not return results from other clusters in the
3325          federation, only the cluster that received the request.
3326          You must be an administrator to use this flag. Default `False`.
3327
3328        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
3329
3330        * count: str --- A string to determine result counting behavior. Supported values are:
3331
3332          * `"exact"`: The response will include an `items_available` field that
3333            counts the number of objects that matched this search criteria,
3334            including ones not included in `items`.
3335
3336          * `"none"`: The response will not include an `items_avaliable`
3337            field. This improves performance by returning a result as soon as enough
3338            `items` have been loaded for this result.
3339
3340          Default `'exact'`.
3341
3342        * distinct: bool --- If this is true, and multiple objects have the same values
3343          for the attributes that you specify in the `select` parameter, then each unique
3344          set of values will only be returned once in the result set. Default `False`.
3345
3346        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
3347          Refer to the [filters reference][] for more information about how to write filters. 
3348
3349          [filters reference]: https://doc.arvados.org/api/methods.html#filters
3350
3351        * limit: int --- The maximum number of objects to return in the result.
3352          Note that the API may return fewer results than this if your request hits other
3353          limits set by the administrator. Default `100`.
3354
3355        * offset: int --- Return matching objects starting from this index.
3356          Note that result indexes may change if objects are modified in between a series
3357          of list calls. Default `0`.
3358
3359        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
3360          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
3361          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
3362
3363        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
3364
3365        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
3366          The keys of this object are attribute names.
3367          Each value is either a single matching value or an array of matching values for that attribute.
3368          The `filters` parameter is more flexible and preferred.
3369        """
3370
3371    def update(self, *, body: "Dict[Literal['workflow'], Workflow]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3372        """Update attributes of an existing Workflow.
3373
3374        Required parameters:
3375
3376        * body: Dict[Literal['workflow'], Workflow] --- A dictionary with a single item `'workflow'`.
3377          Its value is a `Workflow` dictionary defining the attributes to set. 
3378
3379        * uuid: str --- The UUID of the Workflow to update. 
3380
3381        Optional parameters:
3382
3383        * select: Optional[List] --- An array of names of attributes to return in the response.
3384        """

Methods to query and manipulate Arvados workflows

def create( self, *, body: Dict[Literal['workflow'], Workflow], cluster_id: Optional[str] = None, ensure_unique_name: bool = False, select: Optional[List] = None) -> ArvadosAPIRequest[Workflow]:
3278    def create(self, *, body: "Dict[Literal['workflow'], Workflow]", cluster_id: 'Optional[str]' = None, ensure_unique_name: 'bool' = False, select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3279        """Create a new Workflow.
3280
3281        Required parameters:
3282
3283        * body: Dict[Literal['workflow'], Workflow] --- A dictionary with a single item `'workflow'`.
3284          Its value is a `Workflow` dictionary defining the attributes to set. 
3285
3286        Optional parameters:
3287
3288        * cluster_id: Optional[str] --- Cluster ID of a federated cluster where this object should be created. 
3289
3290        * ensure_unique_name: bool --- If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default `False`.
3291
3292        * select: Optional[List] --- An array of names of attributes to return in the response.
3293        """

Create a new Workflow.

Required parameters:

  • body: Dict[Literal[’workflow’], Workflow] — A dictionary with a single item 'workflow'. Its value is a Workflow dictionary defining the attributes to set.

Optional parameters:

  • cluster_id: Optional[str] — Cluster ID of a federated cluster where this object should be created.

  • ensure_unique_name: bool — If the given name is already used by this owner, adjust the name to ensure uniqueness instead of returning an error. Default False.

  • select: Optional[List] — An array of names of attributes to return in the response.

def delete( self, *, uuid: str) -> ArvadosAPIRequest[Workflow]:
3295    def delete(self, *, uuid: 'str') -> 'ArvadosAPIRequest[Workflow]':
3296        """Delete an existing Workflow.
3297
3298        Required parameters:
3299
3300        * uuid: str --- The UUID of the Workflow to delete.
3301        """

Delete an existing Workflow.

Required parameters:

  • uuid: str — The UUID of the Workflow to delete.
def get( self, *, uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[Workflow]:
3303    def get(self, *, uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3304        """Get a Workflow record by UUID.
3305
3306        Required parameters:
3307
3308        * uuid: str --- The UUID of the Workflow to return. 
3309
3310        Optional parameters:
3311
3312        * select: Optional[List] --- An array of names of attributes to return in the response.
3313        """

Get a Workflow record by UUID.

Required parameters:

  • uuid: str — The UUID of the Workflow to return.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
def list( self, *, bypass_federation: bool = False, cluster_id: Optional[str] = None, count: str = 'exact', distinct: bool = False, filters: Optional[List] = None, limit: int = 100, offset: int = 0, order: Optional[List] = None, select: Optional[List] = None, where: Optional[Dict[str, Any]] = None) -> ArvadosAPIRequest[WorkflowList]:
3315    def list(self, *, bypass_federation: 'bool' = False, cluster_id: 'Optional[str]' = None, count: 'str' = 'exact', distinct: 'bool' = False, filters: 'Optional[List]' = None, limit: 'int' = 100, offset: 'int' = 0, order: 'Optional[List]' = None, select: 'Optional[List]' = None, where: 'Optional[Dict[str, Any]]' = None) -> 'ArvadosAPIRequest[WorkflowList]':
3316        """Retrieve a WorkflowList.
3317
3318        This method returns a single page of `Workflow` objects that match your search
3319        criteria. If you just want to iterate all objects that match your search
3320        criteria, consider using `arvados.util.keyset_list_all`.
3321
3322        Optional parameters:
3323
3324        * bypass_federation: bool --- If true, do not return results from other clusters in the
3325          federation, only the cluster that received the request.
3326          You must be an administrator to use this flag. Default `False`.
3327
3328        * cluster_id: Optional[str] --- Cluster ID of a federated cluster to return objects from 
3329
3330        * count: str --- A string to determine result counting behavior. Supported values are:
3331
3332          * `"exact"`: The response will include an `items_available` field that
3333            counts the number of objects that matched this search criteria,
3334            including ones not included in `items`.
3335
3336          * `"none"`: The response will not include an `items_avaliable`
3337            field. This improves performance by returning a result as soon as enough
3338            `items` have been loaded for this result.
3339
3340          Default `'exact'`.
3341
3342        * distinct: bool --- If this is true, and multiple objects have the same values
3343          for the attributes that you specify in the `select` parameter, then each unique
3344          set of values will only be returned once in the result set. Default `False`.
3345
3346        * filters: Optional[List] --- Filters to limit which objects are returned by their attributes.
3347          Refer to the [filters reference][] for more information about how to write filters. 
3348
3349          [filters reference]: https://doc.arvados.org/api/methods.html#filters
3350
3351        * limit: int --- The maximum number of objects to return in the result.
3352          Note that the API may return fewer results than this if your request hits other
3353          limits set by the administrator. Default `100`.
3354
3355        * offset: int --- Return matching objects starting from this index.
3356          Note that result indexes may change if objects are modified in between a series
3357          of list calls. Default `0`.
3358
3359        * order: Optional[List] --- An array of strings to set the order in which matching objects are returned.
3360          Each string has the format `<ATTRIBUTE> <DIRECTION>`.
3361          `DIRECTION` can be `asc` or omitted for ascending, or `desc` for descending. 
3362
3363        * select: Optional[List] --- An array of names of attributes to return from each matching object. 
3364
3365        * where: Optional[Dict[str, Any]] --- An object to limit which objects are returned by their attributes.
3366          The keys of this object are attribute names.
3367          Each value is either a single matching value or an array of matching values for that attribute.
3368          The `filters` parameter is more flexible and preferred.
3369        """

Retrieve a WorkflowList.

This method returns a single page of Workflow objects that match your search criteria. If you just want to iterate all objects that match your search criteria, consider using arvados.util.keyset_list_all.

Optional parameters:

  • bypass_federation: bool — If true, do not return results from other clusters in the federation, only the cluster that received the request. You must be an administrator to use this flag. Default False.

  • cluster_id: Optional[str] — Cluster ID of a federated cluster to return objects from

  • count: str — A string to determine result counting behavior. Supported values are:

    • "exact": The response will include an items_available field that counts the number of objects that matched this search criteria, including ones not included in items.

    • "none": The response will not include an items_avaliable field. This improves performance by returning a result as soon as enough items have been loaded for this result.

    Default 'exact'.

  • distinct: bool — If this is true, and multiple objects have the same values for the attributes that you specify in the select parameter, then each unique set of values will only be returned once in the result set. Default False.

  • filters: Optional[List] — Filters to limit which objects are returned by their attributes. Refer to the filters reference for more information about how to write filters.

  • limit: int — The maximum number of objects to return in the result. Note that the API may return fewer results than this if your request hits other limits set by the administrator. Default 100.

  • offset: int — Return matching objects starting from this index. Note that result indexes may change if objects are modified in between a series of list calls. Default 0.

  • order: Optional[List] — An array of strings to set the order in which matching objects are returned. Each string has the format <ATTRIBUTE> <DIRECTION>. DIRECTION can be asc or omitted for ascending, or desc for descending.

  • select: Optional[List] — An array of names of attributes to return from each matching object.

  • where: Optional[Dict[str, Any]] — An object to limit which objects are returned by their attributes. The keys of this object are attribute names. Each value is either a single matching value or an array of matching values for that attribute. The filters parameter is more flexible and preferred.

def update( self, *, body: Dict[Literal['workflow'], Workflow], uuid: str, select: Optional[List] = None) -> ArvadosAPIRequest[Workflow]:
3371    def update(self, *, body: "Dict[Literal['workflow'], Workflow]", uuid: 'str', select: 'Optional[List]' = None) -> 'ArvadosAPIRequest[Workflow]':
3372        """Update attributes of an existing Workflow.
3373
3374        Required parameters:
3375
3376        * body: Dict[Literal['workflow'], Workflow] --- A dictionary with a single item `'workflow'`.
3377          Its value is a `Workflow` dictionary defining the attributes to set. 
3378
3379        * uuid: str --- The UUID of the Workflow to update. 
3380
3381        Optional parameters:
3382
3383        * select: Optional[List] --- An array of names of attributes to return in the response.
3384        """

Update attributes of an existing Workflow.

Required parameters:

  • body: Dict[Literal[’workflow’], Workflow] — A dictionary with a single item 'workflow'. Its value is a Workflow dictionary defining the attributes to set.

  • uuid: str — The UUID of the Workflow to update.

Optional parameters:

  • select: Optional[List] — An array of names of attributes to return in the response.
class ArvadosAPIClient(googleapiclient.discovery.Resource):
3387class ArvadosAPIClient(googleapiclient.discovery.Resource):
3388
3389    def api_client_authorizations(self) -> 'ApiClientAuthorizations':
3390        """Return an instance of `ApiClientAuthorizations` to call methods via this client"""
3391
3392    def authorized_keys(self) -> 'AuthorizedKeys':
3393        """Return an instance of `AuthorizedKeys` to call methods via this client"""
3394
3395    def collections(self) -> 'Collections':
3396        """Return an instance of `Collections` to call methods via this client"""
3397
3398    def computed_permissions(self) -> 'ComputedPermissions':
3399        """Return an instance of `ComputedPermissions` to call methods via this client"""
3400
3401    def configs(self) -> 'Configs':
3402        """Return an instance of `Configs` to call methods via this client"""
3403
3404    def container_requests(self) -> 'ContainerRequests':
3405        """Return an instance of `ContainerRequests` to call methods via this client"""
3406
3407    def containers(self) -> 'Containers':
3408        """Return an instance of `Containers` to call methods via this client"""
3409
3410    def credentials(self) -> 'Credentials':
3411        """Return an instance of `Credentials` to call methods via this client"""
3412
3413    def groups(self) -> 'Groups':
3414        """Return an instance of `Groups` to call methods via this client"""
3415
3416    def keep_services(self) -> 'KeepServices':
3417        """Return an instance of `KeepServices` to call methods via this client"""
3418
3419    def links(self) -> 'Links':
3420        """Return an instance of `Links` to call methods via this client"""
3421
3422    def logs(self) -> 'Logs':
3423        """Return an instance of `Logs` to call methods via this client"""
3424
3425    def sys(self) -> 'Sys':
3426        """Return an instance of `Sys` to call methods via this client"""
3427
3428    def user_agreements(self) -> 'UserAgreements':
3429        """Return an instance of `UserAgreements` to call methods via this client"""
3430
3431    def users(self) -> 'Users':
3432        """Return an instance of `Users` to call methods via this client"""
3433
3434    def virtual_machines(self) -> 'VirtualMachines':
3435        """Return an instance of `VirtualMachines` to call methods via this client"""
3436
3437    def vocabularies(self) -> 'Vocabularies':
3438        """Return an instance of `Vocabularies` to call methods via this client"""
3439
3440    def workflows(self) -> 'Workflows':
3441        """Return an instance of `Workflows` to call methods via this client"""

A class for interacting with a resource.

def api_client_authorizations(self) -> ApiClientAuthorizations:
3389    def api_client_authorizations(self) -> 'ApiClientAuthorizations':
3390        """Return an instance of `ApiClientAuthorizations` to call methods via this client"""

Return an instance of ApiClientAuthorizations to call methods via this client

def authorized_keys(self) -> AuthorizedKeys:
3392    def authorized_keys(self) -> 'AuthorizedKeys':
3393        """Return an instance of `AuthorizedKeys` to call methods via this client"""

Return an instance of AuthorizedKeys to call methods via this client

def collections(self) -> Collections:
3395    def collections(self) -> 'Collections':
3396        """Return an instance of `Collections` to call methods via this client"""

Return an instance of Collections to call methods via this client

def computed_permissions(self) -> ComputedPermissions:
3398    def computed_permissions(self) -> 'ComputedPermissions':
3399        """Return an instance of `ComputedPermissions` to call methods via this client"""

Return an instance of ComputedPermissions to call methods via this client

def configs(self) -> Configs:
3401    def configs(self) -> 'Configs':
3402        """Return an instance of `Configs` to call methods via this client"""

Return an instance of Configs to call methods via this client

def container_requests(self) -> ContainerRequests:
3404    def container_requests(self) -> 'ContainerRequests':
3405        """Return an instance of `ContainerRequests` to call methods via this client"""

Return an instance of ContainerRequests to call methods via this client

def containers(self) -> Containers:
3407    def containers(self) -> 'Containers':
3408        """Return an instance of `Containers` to call methods via this client"""

Return an instance of Containers to call methods via this client

def credentials(self) -> Credentials:
3410    def credentials(self) -> 'Credentials':
3411        """Return an instance of `Credentials` to call methods via this client"""

Return an instance of Credentials to call methods via this client

def groups(self) -> Groups:
3413    def groups(self) -> 'Groups':
3414        """Return an instance of `Groups` to call methods via this client"""

Return an instance of Groups to call methods via this client

def keep_services(self) -> KeepServices:
3416    def keep_services(self) -> 'KeepServices':
3417        """Return an instance of `KeepServices` to call methods via this client"""

Return an instance of KeepServices to call methods via this client

def logs(self) -> Logs:
3422    def logs(self) -> 'Logs':
3423        """Return an instance of `Logs` to call methods via this client"""

Return an instance of Logs to call methods via this client

def sys(self) -> Sys:
3425    def sys(self) -> 'Sys':
3426        """Return an instance of `Sys` to call methods via this client"""

Return an instance of Sys to call methods via this client

def user_agreements(self) -> UserAgreements:
3428    def user_agreements(self) -> 'UserAgreements':
3429        """Return an instance of `UserAgreements` to call methods via this client"""

Return an instance of UserAgreements to call methods via this client

def users(self) -> Users:
3431    def users(self) -> 'Users':
3432        """Return an instance of `Users` to call methods via this client"""

Return an instance of Users to call methods via this client

def virtual_machines(self) -> VirtualMachines:
3434    def virtual_machines(self) -> 'VirtualMachines':
3435        """Return an instance of `VirtualMachines` to call methods via this client"""

Return an instance of VirtualMachines to call methods via this client

def vocabularies(self) -> Vocabularies:
3437    def vocabularies(self) -> 'Vocabularies':
3438        """Return an instance of `Vocabularies` to call methods via this client"""

Return an instance of Vocabularies to call methods via this client

def workflows(self) -> Workflows:
3440    def workflows(self) -> 'Workflows':
3441        """Return an instance of `Workflows` to call methods via this client"""

Return an instance of Workflows to call methods via this client

Inherited Members
googleapiclient.discovery.Resource
Resource
close