---
title: "POST /v1/{+parent}/schedules"
method: POST
path: "/v1/{+parent}/schedules"
tags: ["projects"]
---

# POST /v1/{+parent}/schedules

`POST /v1/{+parent}/schedules`

Creates a Schedule.

## Path parameters

- `parent` string, required

## Request body

- GoogleCloudAiplatformV1Schedule — An instance of a Schedule periodically schedules runs to make API calls based on user specified time specification and API request type.
  - `maxConcurrentActiveRunCount` string, int64 — Optional. Specifies the maximum number of active runs that can be executed concurrently for this Schedule. This limits the number of runs that can be in a non-terminal state at the same time. Currently, this field is only supported for requests of type CreatePipelineJobRequest.
  - `startedRunCount` string, int64 — Output only. The number of runs started by this schedule.
  - `createTime` string, google-datetime — Output only. Timestamp when this Schedule was created.
  - `cron` string — Cron schedule (https://en.wikipedia.org/wiki/Cron) to launch scheduled runs. To explicitly set a timezone to the cron tab, apply a prefix in the cron tab: "CRON_TZ=${IANA_TIME_ZONE}" or "TZ=${IANA_TIME_ZONE}". The ${IANA_TIME_ZONE} may only be a valid string from IANA time zone database. For example, "CRON_TZ=America/New_York 1 * * * *", or "TZ=America/New_York 1 * * * *".
  - `state` 'STATE_UNSPECIFIED' | 'ACTIVE' | 'PAUSED' | 'COMPLETED' — Output only. The state of this Schedule.
  - `catchUp` boolean — Output only. Whether to backfill missed runs when the schedule is resumed from PAUSED state. If set to true, all missed runs will be scheduled. New runs will be scheduled after the backfill is complete. Default to false.
  - `updateTime` string, google-datetime — Output only. Timestamp when this Schedule was updated.
  - `lastScheduledRunResponse` GoogleCloudAiplatformV1ScheduleRunResponse — Status of a scheduled run.
    - `runResponse` string — The response of the scheduled run.
    - `scheduledRunTime` string, google-datetime — The scheduled run time based on the user-specified schedule.
  - `maxRunCount` string, int64 — Optional. Maximum run count of the schedule. If specified, The schedule will be completed when either started_run_count >= max_run_count or when end_time is reached. If not specified, new runs will keep getting scheduled until this Schedule is paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.
  - `name` string — Immutable. The resource name of the Schedule.
  - `allowQueueing` boolean — Optional. Whether new scheduled runs can be queued when max_concurrent_runs limit is reached. If set to true, new runs will be queued instead of skipped. Default to false.
  - `displayName` string — Required. User provided name of the Schedule. The name can be up to 128 characters long and can consist of any UTF-8 characters.
  - `lastPauseTime` string, google-datetime — Output only. Timestamp when this Schedule was last paused. Unset if never paused.
  - `createPipelineJobRequest` GoogleCloudAiplatformV1CreatePipelineJobRequest — Request message for PipelineService.CreatePipelineJob.
    - `parent` string — Required. The resource name of the Location to create the PipelineJob in. Format: `projects/{project}/locations/{location}`
    - `pipelineJob` GoogleCloudAiplatformV1PipelineJob — An instance of a machine learning PipelineJob.
      - `serviceAccount` string — The service account that the pipeline workload runs as. If not specified, the Compute Engine default service account in the project will be used. See https://cloud.google.com/compute/docs/access/service-accounts#default_service_account Users starting the pipeline must have the `iam.serviceAccounts.actAs` permission on this service account.
      - `network` string — The full name of the Compute Engine [network](/compute/docs/networks-and-firewalls#networks) to which the Pipeline Job's workload should be peered. For example, `projects/12345/global/networks/myVPC`. [Format](/compute/docs/reference/rest/v1/networks/insert) is of the form `projects/{project}/global/networks/{network}`. Where {project} is a project number, as in `12345`, and {network} is a network name. Private services access must already be configured for the network. Pipeline job will apply the network configuration to the Google Cloud resources being launched, if applied, such as Vertex AI Training or Dataflow job. If left unspecified, the workload is not peered with any network.
      - `jobDetail` GoogleCloudAiplatformV1PipelineJobDetail — The runtime detail of PipelineJob.
        - `pipelineContext` GoogleCloudAiplatformV1Context — Instance of a general context.
          - `schemaTitle` string — The title of the schema describing the metadata. Schema title and version is expected to be registered in earlier Create Schema calls. And both are used together as unique identifiers to identify schemas within the local metadata store.
          - `schemaVersion` string — The version of the schema in schema_name to use. Schema title and version is expected to be registered in earlier Create Schema calls. And both are used together as unique identifiers to identify schemas within the local metadata store.
          - `parentContexts` string[] — Output only. A list of resource names of Contexts that are parents of this Context. A Context may have at most 10 parent_contexts.
          - `metadata` object — Properties of the Context. Top level metadata keys' heading and trailing spaces will be trimmed. The size of this field should not exceed 200KB.
          - `createTime` string, google-datetime — Output only. Timestamp when this Context was created.
          - `displayName` string — User provided display name of the Context. May be up to 128 Unicode characters.
          - `name` string — Immutable. The resource name of the Context.
          - `description` string — Description of the Context
          - `updateTime` string, google-datetime — Output only. Timestamp when this Context was last updated.
          - `labels` object — The labels with user-defined metadata to organize your Contexts. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. No more than 64 user labels can be associated with one Context (System labels are excluded).
          - `etag` string — An eTag used to perform consistent read-modify-write updates. If not set, a blind "overwrite" update happens.
        - `pipelineRunContext` GoogleCloudAiplatformV1Context — Instance of a general context.
          - `schemaTitle` string — The title of the schema describing the metadata. Schema title and version is expected to be registered in earlier Create Schema calls. And both are used together as unique identifiers to identify schemas within the local metadata store.
          - `schemaVersion` string — The version of the schema in schema_name to use. Schema title and version is expected to be registered in earlier Create Schema calls. And both are used together as unique identifiers to identify schemas within the local metadata store.
          - `parentContexts` string[] — Output only. A list of resource names of Contexts that are parents of this Context. A Context may have at most 10 parent_contexts.
          - `metadata` object — Properties of the Context. Top level metadata keys' heading and trailing spaces will be trimmed. The size of this field should not exceed 200KB.
          - `createTime` string, google-datetime — Output only. Timestamp when this Context was created.
          - `displayName` string — User provided display name of the Context. May be up to 128 Unicode characters.
          - `name` string — Immutable. The resource name of the Context.
          - `description` string — Description of the Context
          - `updateTime` string, google-datetime — Output only. Timestamp when this Context was last updated.
          - `labels` object — The labels with user-defined metadata to organize your Contexts. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. No more than 64 user labels can be associated with one Context (System labels are excluded).
          - `etag` string — An eTag used to perform consistent read-modify-write updates. If not set, a blind "overwrite" update happens.
        - `taskDetails` GoogleCloudAiplatformV1PipelineTaskDetail[] — Output only. The runtime details of the tasks under the pipeline.
          - `execution` GoogleCloudAiplatformV1Execution — Instance of a general execution.
            - `updateTime` string, google-datetime — Output only. Timestamp when this Execution was last updated.
            - `labels` object — The labels with user-defined metadata to organize your Executions. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. No more than 64 user labels can be associated with one Execution (System labels are excluded).
            - `etag` string — An eTag used to perform consistent read-modify-write updates. If not set, a blind "overwrite" update happens.
            - `schemaTitle` string — The title of the schema describing the metadata. Schema title and version is expected to be registered in earlier Create Schema calls. And both are used together as unique identifiers to identify schemas within the local metadata store.
            - `schemaVersion` string — The version of the schema in `schema_title` to use. Schema title and version is expected to be registered in earlier Create Schema calls. And both are used together as unique identifiers to identify schemas within the local metadata store.
            - `state` 'STATE_UNSPECIFIED' | 'NEW' | 'RUNNING' | 'COMPLETE' | 'FAILED' | 'CACHED' | 'CANCELLED' — The state of this Execution. This is a property of the Execution, and does not imply or capture any ongoing process. This property is managed by clients (such as Vertex AI Pipelines) and the system does not prescribe or check the validity of state transitions.
            - `metadata` object — Properties of the Execution. Top level metadata keys' heading and trailing spaces will be trimmed. The size of this field should not exceed 200KB.
            - `createTime` string, google-datetime — Output only. Timestamp when this Execution was created.
            - `displayName` string — User provided display name of the Execution. May be up to 128 Unicode characters.
            - `name` string — Output only. The resource name of the Execution.
            - `description` string — Description of the Execution
          - `outputs` object — Output only. The runtime output artifacts of the task.
          - `createTime` string, google-datetime — Output only. Task create time.
          - `inputs` object — Output only. The runtime input artifacts of the task.
          - `state` 'STATE_UNSPECIFIED' | 'PENDING' | 'RUNNING' | 'SUCCEEDED' | 'CANCEL_PENDING' | 'CANCELLING' | 'CANCELLED' | 'FAILED' | 'SKIPPED' | 'NOT_TRIGGERED' — Output only. State of the task.
          - `taskUniqueName` string — Output only. The unique name of a task. This field is used by rerun pipeline job. Console UI and Vertex AI SDK will support triggering pipeline job reruns. The name is constructed by concatenating all the parent tasks name with the task name. For example, if a task named "child_task" has a parent task named "parent_task_1" and parent task 1 has a parent task named "parent_task_2", the task unique name will be "parent_task_2.parent_task_1.child_task".
          - `pipelineTaskStatus` GoogleCloudAiplatformV1PipelineTaskDetailPipelineTaskStatus[] — Output only. A list of task status. This field keeps a record of task status evolving over time.
            - `state` 'STATE_UNSPECIFIED' | 'PENDING' | 'RUNNING' | 'SUCCEEDED' | 'CANCEL_PENDING' | 'CANCELLING' | 'CANCELLED' | 'FAILED' | 'SKIPPED' | 'NOT_TRIGGERED' — Output only. The state of the task.
            - `error` GoogleRpcStatus — The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).
              - …
            - `updateTime` string, google-datetime — Output only. Update time of this status.
          - `taskName` string — Output only. The user specified name of the task that is defined in pipeline_spec.
          - `taskId` string, int64 — Output only. The system generated ID of the task.
          - `parentTaskId` string, int64 — Output only. The id of the parent task if the task is within a component scope. Empty if the task is at the root level.
          - `error` GoogleRpcStatus — The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).
            - `code` integer — The status code, which should be an enum value of google.rpc.Code.
            - `message` string — A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
            - `details` object[] — A list of messages that carry the error details. There is a common set of message types for APIs to use.
              - …
          - `executorDetail` GoogleCloudAiplatformV1PipelineTaskExecutorDetail — The runtime detail of a pipeline executor.
            - `containerDetail` GoogleCloudAiplatformV1PipelineTaskExecutorDetailContainerDetail — The detail of a container execution. It contains the job names of the lifecycle of a container execution.
              - …
            - `customJobDetail` GoogleCloudAiplatformV1PipelineTaskExecutorDetailCustomJobDetail — The detailed info for a custom job executor.
              - …
          - `startTime` string, google-datetime — Output only. Task start time.
          - `endTime` string, google-datetime — Output only. Task end time.
      - `name` string — Output only. The resource name of the PipelineJob.
      - `error` GoogleRpcStatus — The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).
        - `code` integer — The status code, which should be an enum value of google.rpc.Code.
        - `message` string — A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
        - `details` object[] — A list of messages that carry the error details. There is a common set of message types for APIs to use.
      - `pscInterfaceConfig` GoogleCloudAiplatformV1PscInterfaceConfig — Configuration for PSC-I.
        - `networkAttachment` string — Optional. The name of the Compute Engine [network attachment](https://cloud.google.com/vpc/docs/about-network-attachments) to attach to the resource within the region and user project. To specify this field, you must have already [created a network attachment] (https://cloud.google.com/vpc/docs/create-manage-network-attachments#create-network-attachments). This field is only used for resources using PSC-I.
        - `dnsPeeringConfigs` GoogleCloudAiplatformV1DnsPeeringConfig[] — Optional. DNS peering configurations. When specified, Vertex AI will attempt to configure DNS peering zones in the tenant project VPC to resolve the specified domains using the target network's Cloud DNS. The user must grant the dns.peer role to the Vertex AI Service Agent on the target project.
          - `domain` string — Required. The DNS name suffix of the zone being peered to, e.g., "my-internal-domain.corp.". Must end with a dot.
          - `targetProject` string — Required. The project ID hosting the Cloud DNS managed zone that contains the 'domain'. The Vertex AI Service Agent requires the dns.peer role on this project.
          - `targetNetwork` string — Required. The VPC network name in the target_project where the DNS zone specified by 'domain' is visible.
      - `displayName` string — The display name of the Pipeline. The name can be up to 128 characters long and can consist of any UTF-8 characters.
      - `endTime` string, google-datetime — Output only. Pipeline end time.
      - `preflightValidations` boolean — Optional. Whether to do component level validations before job creation.
      - `encryptionSpec` GoogleCloudAiplatformV1EncryptionSpec — Represents a customer-managed encryption key specification that can be applied to a Vertex AI resource.
        - `kmsKeyName` string — Required. Resource name of the Cloud KMS key used to protect the resource. The Cloud KMS key must be in the same region as the resource. It must have the format `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.
      - `startTime` string, google-datetime — Output only. Pipeline start time.
      - `state` 'PIPELINE_STATE_UNSPECIFIED' | 'PIPELINE_STATE_QUEUED' | 'PIPELINE_STATE_PENDING' | 'PIPELINE_STATE_RUNNING' | 'PIPELINE_STATE_SUCCEEDED' | 'PIPELINE_STATE_FAILED' | 'PIPELINE_STATE_CANCELLING' | 'PIPELINE_STATE_CANCELLED' | 'PIPELINE_STATE_PAUSED' — Output only. The detailed state of the job.
      - `reservedIpRanges` string[] — A list of names for the reserved ip ranges under the VPC network that can be used for this Pipeline Job's workload. If set, we will deploy the Pipeline Job's workload within the provided ip ranges. Otherwise, the job will be deployed to any ip ranges under the provided VPC network. Example: ['vertex-ai-ip-range'].
      - `scheduleName` string — Output only. The schedule resource name. Only returned if the Pipeline is created by Schedule API.
      - `createTime` string, google-datetime — Output only. Pipeline creation time.
      - `pipelineSpec` object — A compiled definition of a pipeline, represented as a `JSON` object. Defines the structure of the pipeline, including its components, tasks, and parameters. This specification is generated by compiling a pipeline function defined in `Python` using the `Kubeflow Pipelines SDK`.
      - `runtimeConfig` GoogleCloudAiplatformV1PipelineJobRuntimeConfig — The runtime config of a PipelineJob.
        - `gcsOutputDirectory` string — Required. A path in a Cloud Storage bucket, which will be treated as the root output directory of the pipeline. It is used by the system to generate the paths of output artifacts. The artifact paths are generated with a sub-path pattern `{job_id}/{task_id}/{output_key}` under the specified output directory. The service account specified in this pipeline must have the `storage.objects.get` and `storage.objects.create` permissions for this bucket.
        - `parameterValues` object — The runtime parameters of the PipelineJob. The parameters will be passed into PipelineJob.pipeline_spec to replace the placeholders at runtime. This field is used by pipelines built using `PipelineJob.pipeline_spec.schema_version` 2.1.0, such as pipelines built using Kubeflow Pipelines SDK 1.9 or higher and the v2 DSL.
        - `inputArtifacts` object — The runtime artifacts of the PipelineJob. The key will be the input artifact name and the value would be one of the InputArtifact.
        - `parameters` object — Deprecated. Use RuntimeConfig.parameter_values instead. The runtime parameters of the PipelineJob. The parameters will be passed into PipelineJob.pipeline_spec to replace the placeholders at runtime. This field is used by pipelines built using `PipelineJob.pipeline_spec.schema_version` 2.0.0 or lower, such as pipelines built using Kubeflow Pipelines SDK 1.8 or lower.
        - `failurePolicy` 'PIPELINE_FAILURE_POLICY_UNSPECIFIED' | 'PIPELINE_FAILURE_POLICY_FAIL_SLOW' | 'PIPELINE_FAILURE_POLICY_FAIL_FAST' — Represents the failure policy of a pipeline. Currently, the default of a pipeline is that the pipeline will continue to run until no more tasks can be executed, also known as PIPELINE_FAILURE_POLICY_FAIL_SLOW. However, if a pipeline is set to PIPELINE_FAILURE_POLICY_FAIL_FAST, it will stop scheduling any new tasks when a task has failed. Any scheduled tasks will continue to completion.
      - `templateUri` string — A template uri from where the PipelineJob.pipeline_spec, if empty, will be downloaded. Currently, only uri from Vertex Template Registry & Gallery is supported. Reference to https://cloud.google.com/vertex-ai/docs/pipelines/create-pipeline-template.
      - `labels` object — The labels with user-defined metadata to organize PipelineJob. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. See https://goo.gl/xmQnxf for more information and examples of labels. Note there is some reserved label key for Vertex AI Pipelines. - `vertex-ai-pipelines-run-billing-id`, user set value will get overrided.
      - `templateMetadata` GoogleCloudAiplatformV1PipelineTemplateMetadata — Pipeline template metadata if PipelineJob.template_uri is from supported template registry. Currently, the only supported registry is Artifact Registry.
        - `version` string — The version_name in artifact registry. Will always be presented in output if the PipelineJob.template_uri is from supported template registry. Format is "sha256:abcdef123456...".
      - `updateTime` string, google-datetime — Output only. Timestamp when this PipelineJob was most recently updated.
    - `pipelineJobId` string — The ID to use for the PipelineJob, which will become the final component of the PipelineJob name. If not provided, an ID will be automatically generated. This value should be less than 128 characters, and valid characters are `/a-z-/`.
  - `nextRunTime` string, google-datetime — Output only. Timestamp when this Schedule should schedule the next run. Having a next_run_time in the past means the runs are being started behind schedule.
  - `startTime` string, google-datetime — Optional. Timestamp after which the first run can be scheduled. Default to Schedule create time if not specified.
  - `lastResumeTime` string, google-datetime — Output only. Timestamp when this Schedule was last resumed. Unset if never resumed from pause.
  - `maxConcurrentRunCount` string, int64 — Required. Maximum number of runs that can be started concurrently for this Schedule. This is the limit for starting the scheduled requests and not the execution of the operations/jobs created by the requests (if applicable).
  - `createNotebookExecutionJobRequest` GoogleCloudAiplatformV1CreateNotebookExecutionJobRequest — Request message for [NotebookService.CreateNotebookExecutionJob]
    - `notebookExecutionJobId` string — Optional. User specified ID for the NotebookExecutionJob.
    - `notebookExecutionJob` GoogleCloudAiplatformV1NotebookExecutionJob — NotebookExecutionJob represents an instance of a notebook execution.
      - `dataformRepositorySource` GoogleCloudAiplatformV1NotebookExecutionJobDataformRepositorySource — The Dataform Repository containing the input notebook.
        - `dataformRepositoryResourceName` string — The resource name of the Dataform Repository. Format: `projects/{project_id}/locations/{location}/repositories/{repository_id}`
        - `commitSha` string — The commit SHA to read repository with. If unset, the file will be read at HEAD.
      - `executionTimeout` string, google-duration — Max running time of the execution job in seconds (default 86400s / 24 hrs).
      - `executionUser` string — The user email to run the execution as. Only supported by Colab runtimes.
      - `encryptionSpec` GoogleCloudAiplatformV1EncryptionSpec — Represents a customer-managed encryption key specification that can be applied to a Vertex AI resource.
        - `kmsKeyName` string — Required. Resource name of the Cloud KMS key used to protect the resource. The Cloud KMS key must be in the same region as the resource. It must have the format `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}`.
      - `notebookRuntimeTemplateResourceName` string — The NotebookRuntimeTemplate to source compute configuration from.
      - `gcsOutputUri` string — The Cloud Storage location to upload the result to. Format: `gs://bucket-name`
      - `displayName` string — The display name of the NotebookExecutionJob. The name can be up to 128 characters long and can consist of any UTF-8 characters.
      - `name` string — Output only. The resource name of this NotebookExecutionJob. Format: `projects/{project_id}/locations/{location}/notebookExecutionJobs/{job_id}`
      - `status` GoogleRpcStatus — The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).
        - `code` integer — The status code, which should be an enum value of google.rpc.Code.
        - `message` string — A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
        - `details` object[] — A list of messages that carry the error details. There is a common set of message types for APIs to use.
      - `serviceAccount` string — The service account to run the execution as.
      - `updateTime` string, google-datetime — Output only. Timestamp when this NotebookExecutionJob was most recently updated.
      - `labels` object — The labels with user-defined metadata to organize NotebookExecutionJobs. Label keys and values can be no longer than 64 characters (Unicode codepoints), can only contain lowercase letters, numeric characters, underscores and dashes. International characters are allowed. See https://goo.gl/xmQnxf for more information and examples of labels. System reserved label keys are prefixed with "aiplatform.googleapis.com/" and are immutable.
      - `gcsNotebookSource` GoogleCloudAiplatformV1NotebookExecutionJobGcsNotebookSource — The Cloud Storage uri for the input notebook.
        - `uri` string — The Cloud Storage uri pointing to the ipynb file. Format: `gs://bucket/notebook_file.ipynb`
        - `generation` string — The version of the Cloud Storage object to read. If unset, the current version of the object is read. See https://cloud.google.com/storage/docs/metadata#generation-number.
      - `jobState` 'JOB_STATE_UNSPECIFIED' | 'JOB_STATE_QUEUED' | 'JOB_STATE_PENDING' | 'JOB_STATE_RUNNING' | 'JOB_STATE_SUCCEEDED' | 'JOB_STATE_FAILED' | 'JOB_STATE_CANCELLING' | 'JOB_STATE_CANCELLED' | 'JOB_STATE_PAUSED' | 'JOB_STATE_EXPIRED' | 'JOB_STATE_UPDATING' | 'JOB_STATE_PARTIALLY_SUCCEEDED' — Output only. The state of the NotebookExecutionJob.
      - `createTime` string, google-datetime — Output only. Timestamp when this NotebookExecutionJob was created.
      - `kernelName` string — The name of the kernel to use during notebook execution. If unset, the default kernel is used.
      - `customEnvironmentSpec` GoogleCloudAiplatformV1NotebookExecutionJobCustomEnvironmentSpec — Compute configuration to use for an execution job.
        - `machineSpec` GoogleCloudAiplatformV1MachineSpec — Specification of a single machine.
          - `reservationAffinity` GoogleCloudAiplatformV1ReservationAffinity — A ReservationAffinity can be used to configure a Vertex AI resource (e.g., a DeployedModel) to draw its Compute Engine resources from a Shared Reservation, or exclusively from on-demand capacity.
            - `key` string — Optional. Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, use `compute.googleapis.com/reservation-name` as the key and specify the name of your reservation as its value.
            - `reservationAffinityType` 'TYPE_UNSPECIFIED' | 'NO_RESERVATION' | 'ANY_RESERVATION' | 'SPECIFIC_RESERVATION' — Required. Specifies the reservation affinity type.
            - `values` string[] — Optional. Corresponds to the label values of a reservation resource. This must be the full resource name of the reservation or reservation block.
          - `gpuPartitionSize` string — Optional. Immutable. The Nvidia GPU partition size. When specified, the requested accelerators will be partitioned into smaller GPU partitions. For example, if the request is for 8 units of NVIDIA A100 GPUs, and gpu_partition_size="1g.10gb", the service will create 8 * 7 = 56 partitioned MIG instances. The partition size must be a value supported by the requested accelerator. Refer to [Nvidia GPU Partitioning](https://cloud.google.com/kubernetes-engine/docs/how-to/gpus-multi#multi-instance_gpu_partitions) for the available partition sizes. If set, the accelerator_count should be set to 1.
          - `tpuTopology` string — Immutable. The topology of the TPUs. Corresponds to the TPU topologies available from GKE. (Example: tpu_topology: "2x2x1").
          - `machineType` string — Immutable. The type of the machine. See the [list of machine types supported for prediction](https://cloud.google.com/gemini-enterprise-agent-platform/machine-learning/predictions/configure-compute#machine-types) See the [list of machine types supported for custom training](https://cloud.google.com/gemini-enterprise-agent-platform/machine-learning/training/configure-compute#machine-types). For DeployedModel this field is optional, and the default value is `n1-standard-2`. For BatchPredictionJob or as part of WorkerPoolSpec this field is required.
          - `acceleratorCount` integer — The number of accelerators to attach to the machine. For [accelerator optimized machine types](https://cloud.google.com/compute/docs/accelerator-optimized-machines), One may set the accelerator_count from 1 to N for machine with N GPUs. If accelerator_count is less than or equal to N / 2, Agent Platform co-schedules the replicas of the model into the same VM to save cost. For example, if the machine type is a3-highgpu-8g, which has 8 H100 GPUs, one can set accelerator_count to 1 to 8. If accelerator_count is 1, 2, 3, or 4, Agent Platform co-schedules 8, 4, 2, or 2 replicas of the model into the same VM to save cost. When co-scheduling, CPU, memory and storage on the VM will be distributed to replicas on the VM. For example, one can expect a co-scheduled replica requesting 2 GPUs out of a 8-GPU VM will receive 25% of the CPU, memory and storage of the VM. Note that the feature is not compatible with multihost_gpu_node_count. When multihost_gpu_node_count is set, the co-scheduling will not be enabled.
          - `acceleratorType` 'ACCELERATOR_TYPE_UNSPECIFIED' | 'NVIDIA_TESLA_K80' | 'NVIDIA_TESLA_P100' | 'NVIDIA_TESLA_V100' | 'NVIDIA_TESLA_P4' | 'NVIDIA_TESLA_T4' | 'NVIDIA_TESLA_A100' | 'NVIDIA_A100_80GB' | 'NVIDIA_L4' | 'NVIDIA_H100_80GB' | 'NVIDIA_H100_MEGA_80GB' | 'NVIDIA_H200_141GB' | 'NVIDIA_B200' | 'NVIDIA_GB200' | 'NVIDIA_RTX_PRO_6000' | 'TPU_V2' | 'TPU_V3' | 'TPU_V4_POD' | 'TPU_V5_LITEPOD' — Immutable. The type of accelerator(s) that may be attached to the machine as per accelerator_count.
        - `persistentDiskSpec` GoogleCloudAiplatformV1PersistentDiskSpec — Represents the spec of persistent disk and hyperdisk options.
          - `diskSizeGb` string, int64 — Size in GB of the disk (default is 100GB).
          - `diskType` string — Type of the disk (default is "pd-standard"). Valid values: "pd-ssd" (Persistent Disk Solid State Drive) "pd-standard" (Persistent Disk Hard Disk Drive) "pd-balanced" (Balanced Persistent Disk) "pd-extreme" (Extreme Persistent Disk) "hyperdisk-balanced" (Hyperdisk Balanced) "hyperdisk-extreme" (Hyperdisk Extreme) "hyperdisk-balanced-high-availability" (Hyperdisk Balanced High Availability) "hyperdisk-ml" (Hyperdisk ML) "hyperdisk-throughput" (Hyperdisk Throughput)
        - `networkSpec` GoogleCloudAiplatformV1NetworkSpec — Network spec.
          - `enableInternetAccess` boolean — Whether to enable public internet access. Default false.
          - `subnetwork` string — The name of the subnet that this instance is in. Format: `projects/{project_id_or_number}/regions/{region}/subnetworks/{subnetwork_id}`
          - `network` string — The full name of the Google Compute Engine [network](https://cloud.google.com//compute/docs/networks-and-firewalls#networks)
      - `scheduleResourceName` string — The Schedule resource name if this job is triggered by one. Format: `projects/{project_id}/locations/{location}/schedules/{schedule_id}`
      - `directNotebookSource` GoogleCloudAiplatformV1NotebookExecutionJobDirectNotebookSource — The content of the input notebook in ipynb format.
        - `content` string, byte — The base64-encoded contents of the input notebook file.
      - `workbenchRuntime` GoogleCloudAiplatformV1NotebookExecutionJobWorkbenchRuntime — Configuration for a Workbench Instances-based environment.
    - `parent` string — Required. The resource name of the Location to create the NotebookExecutionJob. Format: `projects/{project}/locations/{location}`
  - `endTime` string, google-datetime — Optional. Timestamp after which no new runs can be scheduled. If specified, The schedule will be completed when either end_time is reached or when scheduled_run_count >= max_run_count. If not specified, new runs will keep getting scheduled until this Schedule is paused or deleted. Already scheduled runs will be allowed to complete. Unset if not specified.

## Response `200`

Successful response

---

[API](https://skmtc.net/google/apis/aiplatform.md) · [All operations](https://skmtc.net/google/apis/aiplatform/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/google/aiplatform/versions/b608d71b91f0/schema)
