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

# POST /v1/{+parent}/workloads

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

Creates a Workload in an Application.

## Path parameters

- `parent` string, required

## Query parameters

- `requestId` string
- `workloadId` string

## Request body

- Workload — Workload is an App Hub data model that contains a discovered workload, which represents a binary deployment (such as managed instance groups (MIGs) and GKE deployments) that performs the smallest logical subset of business functionality.
  - `name` string — Identifier. The resource name of the Workload. Format: `"projects/{host-project-id}/locations/{location}/applications/{application-id}/workloads/{workload-id}"`
  - `createTime` string, google-datetime — Output only. Create time.
  - `state` 'STATE_UNSPECIFIED' | 'CREATING' | 'ACTIVE' | 'DELETING' | 'DETACHED' — Output only. Workload state.
  - `discoveredWorkload` string — Required. Immutable. The resource name of the original discovered workload.
  - `uid` string — Output only. A universally unique identifier (UUID) for the `Workload` in the UUID4 format.
  - `displayName` string — Optional. User-defined name for the Workload. Can have a maximum length of 63 characters.
  - `workloadReference` WorkloadReference — Reference of an underlying compute resource represented by the Workload.
    - `uri` string — Output only. The underlying compute resource uri.
  - `workloadProperties` WorkloadProperties — Properties of an underlying compute resource represented by the Workload.
    - `gcpProject` string — Output only. The service project identifier that the underlying cloud resource resides in. Empty for non-cloud resources.
    - `functionalType` FunctionalType — The functional type of a service or workload.
      - `type` 'TYPE_UNSPECIFIED' | 'AGENT' | 'MCP_SERVER' | 'ENDPOINT' — Output only. The functional type of a service or workload.
    - `location` string — Output only. The location that the underlying compute resource resides in (for example, us-west1).
    - `identity` Identity — The identity associated with a service or workload.
      - `principal` string — Output only. The principal of the identity. Supported formats: * `sa://my-sa@PROJECT_ID.iam.gserviceaccount.com` for GCP Service Account * `principal://POOL_ID.global.PROJECT_NUMBER.workload.id.goog/ns/NAMESPACE_ID/sa/MANAGED_IDENTITY_ID` for Managed Workload Identity
    - `zone` string — Output only. The location that the underlying compute resource resides in if it is zonal (for example, us-west1-a).
    - `extendedMetadata` object — Output only. Additional metadata specific to the resource type. The key is a string that identifies the type of metadata and the value is the metadata contents specific to that type. Key format: `apphub.googleapis.com/{metadataType}`
  - `updateTime` string, google-datetime — Output only. Update time.
  - `attributes` Attributes — Consumer provided attributes.
    - `environment` Environment — Environment of the Application, Service, or Workload
      - `type` 'TYPE_UNSPECIFIED' | 'PRODUCTION' | 'STAGING' | 'TEST' | 'DEVELOPMENT' — Required. Environment Type.
    - `developerOwners` ContactInfo[] — Optional. Developer team that owns development and coding.
      - `displayName` string — Optional. Contact's name. Can have a maximum length of 63 characters.
      - `email` string — Required. Email address of the contacts.
    - `businessOwners` ContactInfo[] — Optional. Business team that ensures user needs are met and value is delivered
      - `displayName` string — Optional. Contact's name. Can have a maximum length of 63 characters.
      - `email` string — Required. Email address of the contacts.
    - `criticality` Criticality — Criticality of the Application, Service, or Workload
      - `type` 'TYPE_UNSPECIFIED' | 'MISSION_CRITICAL' | 'HIGH' | 'MEDIUM' | 'LOW' — Required. Criticality Type.
    - `operatorOwners` ContactInfo[] — Optional. Operator team that ensures runtime and operations.
      - `displayName` string — Optional. Contact's name. Can have a maximum length of 63 characters.
      - `email` string — Required. Email address of the contacts.
  - `description` string — Optional. User-defined description of a Workload. Can have a maximum length of 2048 characters.

## Response `200`

Successful response

---

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