> ## Documentation Index
> Fetch the complete documentation index at: https://docs.domino.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Fetch a list of :ref:`ref_flyteidl.admin.Task` definitions

> Fetch existing task definitions matching input filters.



## OpenAPI

````yaml /api-specs/cloud/flyte-native-api.yaml get /api/v1/tasks/{id.project}/{id.domain}
openapi: 3.0.0
info:
  title: flyteidl/service/admin.proto
  version: version not set
servers:
  - url: https://mycluster.domino.tech
    description: >-
      Replace 'mycluster.domino.tech' with your Domino cluster hostname. For
      Domino Cloud customers, that is <your-subdomain>.domino.tech (e.g.,
      acme.domino.tech). For self-hosted deployments, it is the hostname you
      reach the Domino UI at.
security: []
tags:
  - name: AdminService
paths:
  /api/v1/tasks/{id.project}/{id.domain}:
    get:
      tags:
        - AdminService
      summary: Fetch a list of :ref:`ref_flyteidl.admin.Task` definitions
      description: Fetch existing task definitions matching input filters.
      operationId: AdminService_ListTasks2
      parameters:
        - name: id.project
          description: Name of the project the resource belongs to.
          in: path
          required: true
          schema:
            type: string
        - name: id.domain
          description: |-
            Name of the domain the resource belongs to.
            A domain can be considered as a subset within a specific project.
          in: path
          required: true
          schema:
            type: string
        - name: id.name
          description: >-
            User provided value for the resource.

            The combination of project + domain + name uniquely identifies the
            resource.

            +optional - in certain contexts - like 'List API', 'Launch plans'
          in: query
          required: false
          schema:
            type: string
        - name: id.org
          description: Optional, org key applied to the resource.
          in: query
          required: false
          schema:
            type: string
        - name: limit
          description: |-
            Indicates the number of resources to be returned.
            +required
          in: query
          required: false
          schema:
            type: integer
            format: int64
        - name: token
          description: >-
            In the case of multiple pages of results, this server-provided token
            can be used to fetch the next page

            in a query.

            +optional
          in: query
          required: false
          schema:
            type: string
        - name: filters
          description: |-
            Indicates a list of filters passed as string.
            More info on constructing filters : <Link>
            +optional
          in: query
          required: false
          schema:
            type: string
        - name: sort_by.key
          description: |-
            Indicates an attribute to sort the response values.
            +required
          in: query
          required: false
          schema:
            type: string
        - name: sort_by.direction
          description: |-
            Indicates the direction to apply sort key for response values.
            +optional

             - DESCENDING: By default, fields are sorted in descending order.
          in: query
          required: false
          schema:
            type: string
            enum:
              - DESCENDING
              - ASCENDING
            default: DESCENDING
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/adminTaskList'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/googlerpcStatus'
components:
  schemas:
    adminTaskList:
      type: object
      properties:
        tasks:
          type: array
          items:
            $ref: '#/components/schemas/adminTask'
          description: A list of tasks returned based on the request.
        token:
          type: string
          description: >-
            In the case of multiple pages of results, the server-provided token
            can be used to fetch the next page

            in a query. If there are no more results, this value will be empty.
      title: |-
        Represents a list of tasks returned from the admin.
        See :ref:`ref_flyteidl.admin.Task` for more details
    googlerpcStatus:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            $ref: '#/components/schemas/protobufAny'
    adminTask:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/coreIdentifier'
        closure:
          $ref: '#/components/schemas/adminTaskClosure'
        short_description:
          type: string
          description: One-liner overview of the entity.
      description: >-
        Flyte workflows are composed of many ordered tasks. That is small,
        reusable, self-contained logical blocks

        arranged to process workflow inputs and produce a deterministic set of
        outputs.

        Tasks can come in many varieties tuned for specialized behavior.
    protobufAny:
      type: object
      properties:
        '@type':
          type: string
          description: >-
            A URL/resource name that uniquely identifies the type of the
            serialized

            protocol buffer message. This string must contain at least

            one "/" character. The last segment of the URL's path must represent

            the fully qualified name of the type (as in

            `path/google.protobuf.Duration`). The name should be in a canonical
            form

            (e.g., leading "." is not accepted).


            In practice, teams usually precompile into the binary all types that
            they

            expect it to use in the context of Any. However, for URLs which use
            the

            scheme `http`, `https`, or no scheme, one can optionally set up a
            type

            server that maps type URLs to message definitions as follows:


            * If no scheme is provided, `https` is assumed.

            * An HTTP GET on the URL must yield a [google.protobuf.Type][]
              value in binary format, or produce an error.
            * Applications are allowed to cache lookup results based on the
              URL, or have them precompiled into a binary to avoid any
              lookup. Therefore, binary compatibility needs to be preserved
              on changes to types. (Use versioned type names to manage
              breaking changes.)

            Note: this functionality is not currently available in the official

            protobuf release, and it is not used for type URLs beginning with

            type.googleapis.com. As of May 2023, there are no widely used type
            server

            implementations and no plans to implement one.


            Schemes other than `http`, `https` (or the empty scheme) might be

            used with implementation specific semantics.
      additionalProperties: {}
      description: >-
        `Any` contains an arbitrary serialized protocol buffer message along
        with a

        URL that describes the type of the serialized message.


        Protobuf library provides support to pack/unpack Any values in the form

        of utility functions or additional generated methods of the Any type.


        Example 1: Pack and unpack a message in C++.

            Foo foo = ...;
            Any any;
            any.PackFrom(foo);
            ...
            if (any.UnpackTo(&foo)) {
              ...
            }

        Example 2: Pack and unpack a message in Java.

            Foo foo = ...;
            Any any = Any.pack(foo);
            ...
            if (any.is(Foo.class)) {
              foo = any.unpack(Foo.class);
            }
            // or ...
            if (any.isSameTypeAs(Foo.getDefaultInstance())) {
              foo = any.unpack(Foo.getDefaultInstance());
            }

         Example 3: Pack and unpack a message in Python.

            foo = Foo(...)
            any = Any()
            any.Pack(foo)
            ...
            if any.Is(Foo.DESCRIPTOR):
              any.Unpack(foo)
              ...

         Example 4: Pack and unpack a message in Go

             foo := &pb.Foo{...}
             any, err := anypb.New(foo)
             if err != nil {
               ...
             }
             ...
             foo := &pb.Foo{}
             if err := any.UnmarshalTo(foo); err != nil {
               ...
             }

        The pack methods provided by protobuf library will by default use

        'type.googleapis.com/full.type.name' as the type URL and the unpack

        methods only use the fully qualified type name after the last '/'

        in the type URL, for example "foo.bar.com/x/y.z" will yield type

        name "y.z".


        JSON

        ====

        The JSON representation of an `Any` value uses the regular

        representation of the deserialized, embedded message, with an

        additional field `@type` which contains the type URL. Example:

            package google.profile;
            message Person {
              string first_name = 1;
              string last_name = 2;
            }

            {
              "@type": "type.googleapis.com/google.profile.Person",
              "firstName": <string>,
              "lastName": <string>
            }

        If the embedded message type is well-known and has a custom JSON

        representation, that representation will be embedded adding a field

        `value` which holds the custom JSON in addition to the `@type`

        field. Example (for message [google.protobuf.Duration][]):

            {
              "@type": "type.googleapis.com/google.protobuf.Duration",
              "value": "1.212s"
            }
    coreIdentifier:
      type: object
      properties:
        resource_type:
          $ref: '#/components/schemas/coreResourceType'
        project:
          type: string
          description: Name of the project the resource belongs to.
        domain:
          type: string
          description: |-
            Name of the domain the resource belongs to.
            A domain can be considered as a subset within a specific project.
        name:
          type: string
          description: User provided value for the resource.
        version:
          type: string
          description: Specific version of the resource.
        org:
          type: string
          description: Optional, org key applied to the resource.
      description: Encapsulation of fields that uniquely identifies a Flyte resource.
    adminTaskClosure:
      type: object
      properties:
        compiled_task:
          $ref: '#/components/schemas/coreCompiledTask'
        created_at:
          type: string
          format: date-time
          description: Time at which the task was created.
      description: >-
        Compute task attributes which include values derived from the TaskSpec,
        as well as plugin-specific data

        and task metadata.
    coreResourceType:
      type: string
      enum:
        - UNSPECIFIED
        - TASK
        - WORKFLOW
        - LAUNCH_PLAN
        - DATASET
      default: UNSPECIFIED
      description: >-
        Indicates a resource type within Flyte.

         - DATASET: A dataset represents an entity modeled in Flyte DataCatalog. A Dataset is also a versioned entity and can be a compilation of multiple individual objects.
        Eventually all Catalog objects should be modeled similar to Flyte
        Objects. The Dataset entities makes it possible for the UI  and CLI to
        act on the objects 

        in a similar manner to other Flyte objects
    coreCompiledTask:
      type: object
      properties:
        template:
          $ref: '#/components/schemas/coreTaskTemplate'
      title: >-
        Output of the Compilation step. This object represent one Task. We store
        more metadata at this layer
    coreTaskTemplate:
      type: object
      properties:
        id:
          $ref: '#/components/schemas/coreIdentifier'
        type:
          type: string
          description: >-
            A predefined yet extensible Task type identifier. This can be used
            to customize any of the components. If no

            extensions are provided in the system, Flyte will resolve the this
            task to its TaskCategory and default the

            implementation registered for the TaskCategory.
        metadata:
          $ref: '#/components/schemas/coreTaskMetadata'
        interface:
          $ref: '#/components/schemas/coreTypedInterface'
        custom:
          type: object
          description: >-
            Custom data about the task. This is extensible to allow various
            plugins in the system.
        container:
          $ref: '#/components/schemas/coreContainer'
        k8s_pod:
          $ref: '#/components/schemas/coreK8sPod'
        sql:
          $ref: '#/components/schemas/coreSql'
        task_type_version:
          type: integer
          format: int32
          description: >-
            This can be used to customize task handling at execution time for
            the same task type.
        security_context:
          $ref: '#/components/schemas/coreSecurityContext'
        extended_resources:
          $ref: '#/components/schemas/coreExtendedResources'
        config:
          type: object
          additionalProperties:
            type: string
          title: >-
            Metadata about the custom defined for this task. This is extensible
            to allow various plugins in the system

            to use as required.

            reserve the field numbers 1 through 15 for very frequently occurring
            message elements
      description: |-
        A Task structure that uniquely identifies a task in the system
        Tasks are registered as a first step in the system.
    coreTaskMetadata:
      type: object
      properties:
        discoverable:
          type: boolean
          description: >-
            Indicates whether the system should attempt to lookup this task's
            output to avoid duplication of work.
        runtime:
          $ref: '#/components/schemas/coreRuntimeMetadata'
        timeout:
          type: string
          description: The overall timeout of a task including user-triggered retries.
        retries:
          $ref: '#/components/schemas/coreRetryStrategy'
        discovery_version:
          type: string
          description: >-
            Indicates a logical version to apply to this task for the purpose of
            discovery.
        deprecated_error_message:
          type: string
          description: >-
            If set, this indicates that this task is deprecated.  This will
            enable owners of tasks to notify consumers

            of the ending of support for a given task.
        interruptible:
          type: boolean
        cache_serializable:
          type: boolean
          title: >-
            Indicates whether the system should attempt to execute discoverable
            instances in serial to avoid duplicate work
        tags:
          type: object
          additionalProperties:
            type: string
          title: >-
            Arbitrary tags that allow users and the platform to store small but
            arbitrary labels
        pod_template_name:
          type: string
          description: >-
            pod_template_name is the unique name of a PodTemplate k8s resource
            to be used as the base configuration if this

            task creates a k8s Pod. If this value is set, the specified
            PodTemplate will be used instead of, but applied

            identically as, the default PodTemplate configured in
            FlytePropeller.
        cache_ignore_input_vars:
          type: array
          items:
            type: string
          description: >-
            cache_ignore_input_vars is the input variables that should not be
            included when calculating hash for cache.
        is_eager:
          type: boolean
          description: |-
            is_eager indicates whether the task is eager or not.
            This would be used by CreateTask endpoint.
        generates_deck:
          type: boolean
          description: >-
            Indicates whether the task will generate a deck when it finishes
            executing.

            The BoolValue can have three states:

            - nil: The value is not set.

            - true: The task will generate a deck.

            - false: The task will not generate a deck.
        metadata:
          $ref: '#/components/schemas/coreK8sObjectMetadata'
      title: Task Metadata
    coreTypedInterface:
      type: object
      properties:
        inputs:
          $ref: '#/components/schemas/coreVariableMap'
        outputs:
          $ref: '#/components/schemas/coreVariableMap'
      description: Defines strongly typed inputs and outputs.
    coreContainer:
      type: object
      properties:
        image:
          type: string
          title: 'Container image url. Eg: docker/redis:latest'
        command:
          type: array
          items:
            type: string
          description: >-
            Command to be executed, if not provided, the default entrypoint in
            the container image will be used.
        args:
          type: array
          items:
            type: string
          description: >-
            These will default to Flyte given paths. If provided, the system
            will not append known paths. If the task still

            needs flyte's inputs and outputs path, add $(FLYTE_INPUT_FILE),
            $(FLYTE_OUTPUT_FILE) wherever makes sense and the

            system will populate these before executing the container.
        resources:
          $ref: '#/components/schemas/coreResources'
        env:
          type: array
          items:
            $ref: '#/components/schemas/flyteidlcoreKeyValuePair'
          description: Environment variables will be set as the container is starting up.
        config:
          type: array
          items:
            $ref: '#/components/schemas/flyteidlcoreKeyValuePair'
          description: |-
            Allows extra configs to be available for the container.
            TODO: elaborate on how configs will become available.
            Deprecated, please use TaskTemplate.config instead.
        ports:
          type: array
          items:
            $ref: '#/components/schemas/coreContainerPort'
          title: >-
            Ports to open in the container. This feature is not supported by all
            execution engines. (e.g. supported on K8s but

            not supported on AWS Batch)

            Only K8s
        data_config:
          $ref: '#/components/schemas/coreDataLoadingConfig'
        architecture:
          $ref: '#/components/schemas/ContainerArchitecture'
    coreK8sPod:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/coreK8sObjectMetadata'
        pod_spec:
          type: object
          title: >-
            Defines the primary pod spec created when a task is executed.

            This should be a JSON-marshalled pod spec, which can be defined in

            - go, using:
            https://github.com/kubernetes/api/blob/release-1.21/core/v1/types.go#L2936

            - python: using
            https://github.com/kubernetes-client/python/blob/release-19.0/kubernetes/client/models/v1_pod_spec.py
        data_config:
          $ref: '#/components/schemas/coreDataLoadingConfig'
        primary_container_name:
          type: string
          description: >-
            Defines the primary container name when pod template override is
            executed.
      description: >-
        Defines a pod spec and additional pod metadata that is created when a
        task is executed.
    coreSql:
      type: object
      properties:
        statement:
          type: string
          title: >-
            The actual query to run, the query can have templated parameters.

            We use Flyte's Golang templating format for Query templating.

            For example,

            insert overwrite directory '{{ .rawOutputDataPrefix }}' stored as
            parquet

            select *

            from my_table

            where ds = '{{ .Inputs.ds }}'
        dialect:
          $ref: '#/components/schemas/SqlDialect'
      description: Sql represents a generic sql workload with a statement and dialect.
    coreSecurityContext:
      type: object
      properties:
        run_as:
          $ref: '#/components/schemas/coreIdentity'
        secrets:
          type: array
          items:
            $ref: '#/components/schemas/coreSecret'
          description: >-
            secrets indicate the list of secrets the task needs in order to
            proceed. Secrets will be mounted/passed to the

            pod as it starts. If the plugin responsible for kicking of the task
            will not run it on a flyte cluster (e.g. AWS

            Batch), it's the responsibility of the plugin to fetch the secret
            (which means propeller identity will need access

            to the secret) and to pass it to the remote execution engine.
        tokens:
          type: array
          items:
            $ref: '#/components/schemas/coreOAuth2TokenRequest'
          description: >-
            tokens indicate the list of token requests the task needs in order
            to proceed. Tokens will be mounted/passed to the

            pod as it starts. If the plugin responsible for kicking of the task
            will not run it on a flyte cluster (e.g. AWS

            Batch), it's the responsibility of the plugin to fetch the secret
            (which means propeller identity will need access

            to the secret) and to pass it to the remote execution engine.
      description: SecurityContext holds security attributes that apply to tasks.
    coreExtendedResources:
      type: object
      properties:
        gpu_accelerator:
          $ref: '#/components/schemas/coreGPUAccelerator'
        shared_memory:
          $ref: '#/components/schemas/coreSharedMemory'
      description: >-
        Encapsulates all non-standard resources, not captured by
        v1.ResourceRequirements, to

        allocate to a task.
    coreRuntimeMetadata:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/RuntimeMetadataRuntimeType'
        version:
          type: string
          description: >-
            Version of the runtime. All versions should be backward compatible.
            However, certain cases call for version

            checks to ensure tighter validation or setting expectations.
        flavor:
          type: string
          description: >-
            +optional It can be used to provide extra information about the
            runtime (e.g. python, golang... etc.).
      description: Runtime information. This is loosely defined to allow for extensibility.
    coreRetryStrategy:
      type: object
      properties:
        retries:
          type: integer
          format: int64
          description: >-
            Number of retries. Retries will be consumed when the job fails with
            a recoverable error.

            The number of retries must be less than or equals to 10.
      description: Retry strategy associated with an executable unit.
    coreK8sObjectMetadata:
      type: object
      properties:
        labels:
          type: object
          additionalProperties:
            type: string
          description: Optional labels to add to the pod definition.
        annotations:
          type: object
          additionalProperties:
            type: string
          description: Optional annotations to add to the pod definition.
      description: Metadata for building a kubernetes object when a task is executed.
    coreVariableMap:
      type: object
      properties:
        variables:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/coreVariable'
          description: Defines a map of variable names to variables.
      title: A map of Variables
    coreResources:
      type: object
      properties:
        requests:
          type: array
          items:
            $ref: '#/components/schemas/ResourcesResourceEntry'
          description: >-
            The desired set of resources requested. ResourceNames must be unique
            within the list.
        limits:
          type: array
          items:
            $ref: '#/components/schemas/ResourcesResourceEntry'
          description: >-
            Defines a set of bounds (e.g. min/max) within which the task can
            reliably run. ResourceNames must be unique

            within the list.
      description: >-
        A customizable interface to convey resources requested for a container.
        This can be interpreted differently for different

        container engines.
    flyteidlcoreKeyValuePair:
      type: object
      properties:
        key:
          type: string
          description: required.
        value:
          type: string
          description: +optional.
      description: A generic key value pair.
    coreContainerPort:
      type: object
      properties:
        container_port:
          type: integer
          format: int64
          description: |-
            Number of port to expose on the pod's IP address.
            This must be a valid port number, 0 < x < 65536.
        name:
          type: string
          description: Name of the port to expose on the pod's IP address.
      description: Defines port properties for a container.
    coreDataLoadingConfig:
      type: object
      properties:
        enabled:
          type: boolean
          title: >-
            Flag enables DataLoading Config. If this is not set, data loading
            will not be used!
        input_path:
          type: string
          title: >-
            File system path (start at root). This folder will contain all the
            inputs exploded to a separate file.

            Example, if the input interface needs (x: int, y: blob, z:
            multipart_blob) and the input path is '/var/flyte/inputs', then the
            file system will look like

            /var/flyte/inputs/inputs.<metadata format dependent -> .pb .json
            .yaml> -> Format as defined previously. The Blob and Multipart blob
            will reference local filesystem instead of remote locations

            /var/flyte/inputs/x -> X is a file that contains the value of x
            (integer) in string format

            /var/flyte/inputs/y -> Y is a file in Binary format

            /var/flyte/inputs/z/... -> Note Z itself is a directory

            More information about the protocol - refer to docs #TODO reference
            docs here
        output_path:
          type: string
          title: >-
            File system path (start at root). This folder should contain all the
            outputs for the task as individual files and/or an error text file
        format:
          $ref: '#/components/schemas/DataLoadingConfigLiteralMapFormat'
        io_strategy:
          $ref: '#/components/schemas/coreIOStrategy'
      description: >-
        This configuration allows executing raw containers in Flyte using the
        Flyte CoPilot system.

        Flyte CoPilot, eliminates the needs of flytekit or sdk inside the
        container. Any inputs required by the users container are side-loaded in
        the input_path

        Any outputs generated by the user container - within output_path are
        automatically uploaded.
    ContainerArchitecture:
      type: string
      enum:
        - UNKNOWN
        - AMD64
        - ARM64
        - ARM_V6
        - ARM_V7
      default: UNKNOWN
      description: Architecture-type the container image supports.
    SqlDialect:
      type: string
      enum:
        - UNDEFINED
        - ANSI
        - HIVE
        - OTHER
      default: UNDEFINED
      description: >-
        The dialect of the SQL statement. This is used to validate and parse SQL
        statements at compilation time to avoid

        expensive runtime operations. If set to an unsupported dialect, no
        validation will be done on the statement.

        We support the following dialect: ansi, hive.
    coreIdentity:
      type: object
      properties:
        iam_role:
          type: string
          description: >-
            iam_role references the fully qualified name of Identity & Access
            Management role to impersonate.
        k8s_service_account:
          type: string
          description: >-
            k8s_service_account references a kubernetes service account to
            impersonate.
        oauth2_client:
          $ref: '#/components/schemas/coreOAuth2Client'
        execution_identity:
          type: string
          title: execution_identity references the subject who makes the execution
      description: >-
        Identity encapsulates the various security identities a task can run as.
        It's up to the underlying plugin to pick the

        right identity for the execution environment.
    coreSecret:
      type: object
      properties:
        group:
          type: string
          title: >-
            The name of the secret group where to find the key referenced below.
            For K8s secrets, this should be the name of

            the v1/secret object. For Confidant, this should be the Credential
            name. For Vault, this should be the secret name.

            For AWS Secret Manager, this should be the name of the secret.

            +required
        group_version:
          type: string
          title: >-
            The group version to fetch. This is not supported in all secret
            management systems. It'll be ignored for the ones

            that do not support it.

            +optional
        key:
          type: string
          title: >-
            The name of the secret to mount. This has to match an existing
            secret in the system. It's up to the implementation

            of the secret management system to require case sensitivity. For K8s
            secrets, Confidant and Vault, this should

            match one of the keys inside the secret. For AWS Secret Manager,
            it's ignored.

            +optional
        mount_requirement:
          $ref: '#/components/schemas/SecretMountType'
        env_var:
          type: string
          title: >-
            env_var is optional. Custom environment variable to set the value of
            the secret. If mount_requirement is ENV_VAR,

            then the value is the secret itself. If mount_requirement is FILE,
            then the value is the path to the secret file.

            +optional
      description: >-
        Secret encapsulates information about the secret a task needs to
        proceed. An environment variable

        FLYTE_SECRETS_ENV_PREFIX will be passed to indicate the prefix of the
        environment variables that will be present if

        secrets are passed through environment variables.

        FLYTE_SECRETS_DEFAULT_DIR will be passed to indicate the prefix of the
        path where secrets will be mounted if secrets

        are passed through file mounts.
    coreOAuth2TokenRequest:
      type: object
      properties:
        name:
          type: string
          title: >-
            name indicates a unique id for the token request within this task
            token requests. It'll be used as a suffix for

            environment variables and as a filename for mounting tokens as
            files.

            +required
        type:
          $ref: '#/components/schemas/coreOAuth2TokenRequestType'
        client:
          $ref: '#/components/schemas/coreOAuth2Client'
        idp_discovery_endpoint:
          type: string
          title: >-
            idp_discovery_endpoint references the discovery endpoint used to
            retrieve token endpoint and other related

            information.

            +optional
        token_endpoint:
          type: string
          title: >-
            token_endpoint references the token issuance endpoint. If
            idp_discovery_endpoint is not provided, this parameter is

            mandatory.

            +optional
      description: >-
        OAuth2TokenRequest encapsulates information needed to request an OAuth2
        token.

        FLYTE_TOKENS_ENV_PREFIX will be passed to indicate the prefix of the
        environment variables that will be present if

        tokens are passed through environment variables.

        FLYTE_TOKENS_PATH_PREFIX will be passed to indicate the prefix of the
        path where secrets will be mounted if tokens

        are passed through file mounts.
    coreGPUAccelerator:
      type: object
      properties:
        device:
          type: string
          description: >-
            This can be any arbitrary string, and should be informed by the
            labels or taints

            associated with the nodes in question. Default cloud provider labels
            typically

            use the following values: `nvidia-tesla-t4`, `nvidia-tesla-a100`,
            etc.
        unpartitioned:
          type: boolean
        partition_size:
          type: string
          description: >-
            Like `device`, this can be any arbitrary string, and should be
            informed by

            the labels or taints associated with the nodes in question. Default
            cloud

            provider labels typically use the following values: `1g.5gb`,
            `2g.10gb`, etc.
      description: >-
        Metadata associated with the GPU accelerator to allocate to a task.
        Contains

        information about device type, and for multi-instance GPUs, the
        partition size to

        use.
    coreSharedMemory:
      type: object
      properties:
        mount_path:
          type: string
          title: Mount path to place in container
        mount_name:
          type: string
          title: Name for volume
        size_limit:
          type: string
          title: >-
            Size limit for shared memory. If not set, then the shared memory is
            equal

            to the allocated memory.

            +optional
      description: Metadata associated with configuring a shared memory volume for a task.
    RuntimeMetadataRuntimeType:
      type: string
      enum:
        - OTHER
        - FLYTE_SDK
      default: OTHER
    coreVariable:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/coreLiteralType'
        description:
          type: string
          title: +optional string describing input variable
        artifact_partial_id:
          $ref: '#/components/schemas/coreArtifactID'
        artifact_tag:
          $ref: '#/components/schemas/coreArtifactTag'
      description: Defines a strongly typed variable.
    ResourcesResourceEntry:
      type: object
      properties:
        name:
          $ref: '#/components/schemas/ResourcesResourceName'
        value:
          type: string
          title: >-
            Value must be a valid k8s quantity. See

            https://github.com/kubernetes/apimachinery/blob/master/pkg/api/resource/quantity.go#L30-L80
      description: Encapsulates a resource name and value.
    DataLoadingConfigLiteralMapFormat:
      type: string
      enum:
        - JSON
        - YAML
        - PROTO
      default: JSON
      description: >-
        - JSON: JSON / YAML for the metadata (which contains inlined primitive
        values). The representation is inline with the standard json
        specification as specified - https://www.json.org/json-en.html
         - PROTO: Proto is a serialized binary of `core.LiteralMap` defined in flyteidl/core
      title: >-
        LiteralMapFormat decides the encoding format in which the input metadata
        should be made available to the containers.

        If the user has access to the protocol buffer definitions, it is
        recommended to use the PROTO format.

        JSON and YAML do not need any protobuf definitions to read it

        All remote references in core.LiteralMap are replaced with local
        filesystem references (the data is downloaded to local filesystem)
    coreIOStrategy:
      type: object
      properties:
        download_mode:
          $ref: '#/components/schemas/IOStrategyDownloadMode'
        upload_mode:
          $ref: '#/components/schemas/IOStrategyUploadMode'
      title: >-
        Strategy to use when dealing with Blob, Schema, or multipart blob data
        (large datasets)
    coreOAuth2Client:
      type: object
      properties:
        client_id:
          type: string
          title: >-
            client_id is the public id for the client to use. The system will
            not perform any pre-auth validation that the

            secret requested matches the client_id indicated here.

            +required
        client_secret:
          $ref: '#/components/schemas/coreSecret'
      description: >-
        OAuth2Client encapsulates OAuth2 Client Credentials to be used when
        making calls on behalf of that task.
    SecretMountType:
      type: string
      enum:
        - ANY
        - ENV_VAR
        - FILE
      default: ANY
      description: |2-
         - ANY: Default case, indicates the client can tolerate either mounting options.
         - ENV_VAR: ENV_VAR indicates the secret needs to be mounted as an environment variable.
         - FILE: FILE indicates the secret needs to be mounted as a file.
    coreOAuth2TokenRequestType:
      type: string
      enum:
        - CLIENT_CREDENTIALS
      default: CLIENT_CREDENTIALS
      description: |-
        Type of the token requested.

         - CLIENT_CREDENTIALS: CLIENT_CREDENTIALS indicates a 2-legged OAuth token requested using client credentials.
    coreLiteralType:
      type: object
      properties:
        simple:
          $ref: '#/components/schemas/coreSimpleType'
        schema:
          $ref: '#/components/schemas/coreSchemaType'
        collection_type:
          $ref: '#/components/schemas/coreLiteralType'
        map_value_type:
          $ref: '#/components/schemas/coreLiteralType'
        blob:
          $ref: '#/components/schemas/coreBlobType'
        enum_type:
          $ref: '#/components/schemas/flyteidlcoreEnumType'
        structured_dataset_type:
          $ref: '#/components/schemas/coreStructuredDatasetType'
        union_type:
          $ref: '#/components/schemas/coreUnionType'
        metadata:
          type: object
          description: >-
            This field contains type metadata that is descriptive of the type,
            but is NOT considered in type-checking.  This might be used by

            consumers to identify special behavior or display extended
            information for the type.
        annotation:
          $ref: '#/components/schemas/coreTypeAnnotation'
        structure:
          $ref: '#/components/schemas/coreTypeStructure'
      description: Defines a strong type to allow type checking between interfaces.
    coreArtifactID:
      type: object
      properties:
        artifact_key:
          $ref: '#/components/schemas/coreArtifactKey'
        version:
          type: string
        partitions:
          $ref: '#/components/schemas/corePartitions'
        time_partition:
          $ref: '#/components/schemas/coreTimePartition'
    coreArtifactTag:
      type: object
      properties:
        artifact_key:
          $ref: '#/components/schemas/coreArtifactKey'
        value:
          $ref: '#/components/schemas/coreLabelValue'
    ResourcesResourceName:
      type: string
      enum:
        - UNKNOWN
        - CPU
        - GPU
        - MEMORY
        - STORAGE
        - EPHEMERAL_STORAGE
      default: UNKNOWN
      description: |-
        Known resource names.

         - EPHEMERAL_STORAGE: For Kubernetes-based deployments, pods use ephemeral local storage for scratch space, caching, and for logs.
    IOStrategyDownloadMode:
      type: string
      enum:
        - DOWNLOAD_EAGER
        - DOWNLOAD_STREAM
        - DO_NOT_DOWNLOAD
      default: DOWNLOAD_EAGER
      description: >-
        - DOWNLOAD_EAGER: All data will be downloaded before the main container
        is executed
         - DOWNLOAD_STREAM: Data will be downloaded as a stream and an End-Of-Stream marker will be written to indicate all data has been downloaded. Refer to protocol for details
         - DO_NOT_DOWNLOAD: Large objects (offloaded) will not be downloaded
      title: Mode to use for downloading
    IOStrategyUploadMode:
      type: string
      enum:
        - UPLOAD_ON_EXIT
        - UPLOAD_EAGER
        - DO_NOT_UPLOAD
      default: UPLOAD_ON_EXIT
      description: >-
        - UPLOAD_ON_EXIT: All data will be uploaded after the main container
        exits
         - UPLOAD_EAGER: Data will be uploaded as it appears. Refer to protocol specification for details
         - DO_NOT_UPLOAD: Data will not be uploaded, only references will be written
      title: Mode to use for uploading
    coreSimpleType:
      type: string
      enum:
        - NONE
        - INTEGER
        - FLOAT
        - STRING
        - BOOLEAN
        - DATETIME
        - DURATION
        - BINARY
        - ERROR
        - STRUCT
      default: NONE
      description: Define a set of simple types.
    coreSchemaType:
      type: object
      properties:
        columns:
          type: array
          items:
            $ref: '#/components/schemas/SchemaTypeSchemaColumn'
          description: A list of ordered columns this schema comprises of.
      description: >-
        Defines schema columns and types to strongly type-validate schemas
        interoperability.
    coreBlobType:
      type: object
      properties:
        format:
          type: string
          title: |-
            Format can be a free form string understood by SDK/UI etc like
            csv, parquet etc
        dimensionality:
          $ref: '#/components/schemas/BlobTypeBlobDimensionality'
      title: Defines type behavior for blob objects
    flyteidlcoreEnumType:
      type: object
      properties:
        values:
          type: array
          items:
            type: string
          description: Predefined set of enum values.
      description: >-
        Enables declaring enum types, with predefined string values

        For len(values) > 0, the first value in the ordered list is regarded as
        the default value. If you wish

        To provide no defaults, make the first value as undefined.
    coreStructuredDatasetType:
      type: object
      properties:
        columns:
          type: array
          items:
            $ref: '#/components/schemas/StructuredDatasetTypeDatasetColumn'
          description: A list of ordered columns this schema comprises of.
        format:
          type: string
          description: >-
            This is the storage format, the format of the bits at rest

            parquet, feather, csv, etc.

            For two types to be compatible, the format will need to be an exact
            match.
        external_schema_type:
          type: string
          description: >-
            This is a string representing the type that the bytes in
            external_schema_bytes are formatted in.

            This is an optional field that will not be used for type checking.
        external_schema_bytes:
          type: string
          format: byte
          description: |-
            The serialized bytes of a third-party schema library like Arrow.
            This is an optional field that will not be used for type checking.
    coreUnionType:
      type: object
      properties:
        variants:
          type: array
          items:
            $ref: '#/components/schemas/coreLiteralType'
          description: Predefined set of variants in union.
      description: >-
        Defines a tagged union type, also known as a variant (and formally as
        the sum type).


        A sum type S is defined by a sequence of types (A, B, C, ...), each
        tagged by a string tag

        A value of type S is constructed from a value of any of the variant
        types. The specific choice of type is recorded by

        storing the varaint's tag with the literal value and can be examined in
        runtime.


        Type S is typically written as

        S := Apple A | Banana B | Cantaloupe C | ...


        Notably, a nullable (optional) type is a sum type between some type X
        and the singleton type representing a null-value:

        Optional X := X | Null


        See also: https://en.wikipedia.org/wiki/Tagged_union
    coreTypeAnnotation:
      type: object
      properties:
        annotations:
          type: object
          description: A arbitrary JSON payload to describe a type.
      description: >-
        TypeAnnotation encapsulates registration time information about a type.
        This can be used for various control-plane operations. TypeAnnotation
        will not be available at runtime when a task runs.
    coreTypeStructure:
      type: object
      properties:
        tag:
          type: string
          title: Must exactly match for types to be castable
        dataclass_type:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/coreLiteralType'
          title: >-
            dataclass_type only exists for dataclasses.

            This is used to resolve the type of the fields of dataclass

            The key is the field name, and the value is the literal type of the
            field

            e.g. For dataclass Foo, with fields a, and a is a string

            Foo.a will be resolved as a literal type of string from
            dataclass_type
      description: |-
        Hints to improve type matching
        e.g. allows distinguishing output from custom type transformers
        even if the underlying IDL serialization matches.
    coreArtifactKey:
      type: object
      properties:
        project:
          type: string
          description: >-
            Project and domain and suffix needs to be unique across a given
            artifact store.
        domain:
          type: string
        name:
          type: string
        org:
          type: string
    corePartitions:
      type: object
      properties:
        value:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/coreLabelValue'
    coreTimePartition:
      type: object
      properties:
        value:
          $ref: '#/components/schemas/coreLabelValue'
        granularity:
          $ref: '#/components/schemas/coreGranularity'
    coreLabelValue:
      type: object
      properties:
        static_value:
          type: string
          title: The string static value is for use in the Partitions object
        time_value:
          type: string
          format: date-time
          title: The time value is for use in the TimePartition case
        triggered_binding:
          $ref: '#/components/schemas/coreArtifactBindingData'
        input_binding:
          $ref: '#/components/schemas/coreInputBindingData'
        runtime_binding:
          $ref: '#/components/schemas/coreRuntimeBinding'
    SchemaTypeSchemaColumn:
      type: object
      properties:
        name:
          type: string
          title: A unique name -within the schema type- for the column
        type:
          $ref: '#/components/schemas/SchemaColumnSchemaColumnType'
    BlobTypeBlobDimensionality:
      type: string
      enum:
        - SINGLE
        - MULTIPART
      default: SINGLE
    StructuredDatasetTypeDatasetColumn:
      type: object
      properties:
        name:
          type: string
          description: A unique name within the schema type for the column.
        literal_type:
          $ref: '#/components/schemas/coreLiteralType'
    coreGranularity:
      type: string
      enum:
        - UNSET
        - MINUTE
        - HOUR
        - DAY
        - MONTH
      default: UNSET
      title: '- DAY: default'
    coreArtifactBindingData:
      type: object
      properties:
        partition_key:
          type: string
        bind_to_time_partition:
          type: boolean
        time_transform:
          $ref: '#/components/schemas/coreTimeTransform'
      title: Only valid for triggers
    coreInputBindingData:
      type: object
      properties:
        var:
          type: string
    coreRuntimeBinding:
      type: object
    SchemaColumnSchemaColumnType:
      type: string
      enum:
        - INTEGER
        - FLOAT
        - STRING
        - BOOLEAN
        - DATETIME
        - DURATION
      default: INTEGER
    coreTimeTransform:
      type: object
      properties:
        transform:
          type: string
        op:
          $ref: '#/components/schemas/flyteidlcoreOperator'
    flyteidlcoreOperator:
      type: string
      enum:
        - MINUS
        - PLUS
      default: MINUS

````