---
title: "POST /v1/projects/{projectsId}/locations/{locationsId}/servingProfiles"
method: POST
path: "/v1/projects/{projectsId}/locations/{locationsId}/servingProfiles"
tags: ["projects"]
---

# POST /v1/projects/{projectsId}/locations/{locationsId}/servingProfiles

`POST /v1/projects/{projectsId}/locations/{locationsId}/servingProfiles`

## Request

- Base URL: `https://aiplatform.googleapis.com`
- URL: `https://aiplatform.googleapis.com/v1/projects/{projectsId}/locations/{locationsId}/servingProfiles`
- Auth: OAuth 2 and OAuth 2
  - Implicit: `https://accounts.google.com/o/oauth2/auth`
  - Scopes: `https://www.googleapis.com/auth/cloud-platform`
  - Authorization code: `https://accounts.google.com/o/oauth2/auth`
  - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/cloud-platform`
- TypeScript: <https://skmtc.dev/google/apis/aiplatform/docs/v1/projects/:projectsId/locations/:locationsId/servingProfiles/post.ts> (a function with typed inputs; its response is checked against the schema)

Creates a ServingProfile.

## Path parameters

- `projectsId` string, required
- `locationsId` string, required

## Query parameters

- `servingProfileId` string

## Request body

- GoogleCloudAiplatformV1ServingProfile: Configures the serving behavior for a resource-less GenAI serving.
  - `cmekConfig` GoogleCloudAiplatformV1ServingProfileCmekConfig: Configuration for Customer-Managed Encryption Keys (CMEK).
    - `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}`.
  - `createTime` string, google-datetime: Output only. Timestamp when the ServingProfile was created.
  - `description` string: Optional. The description of the ServingProfile.
  - `displayName` string: Required. The display name of the ServingProfile. The name can be up to 128 characters long and can consist of any UTF-8 characters.
  - `name` string: Identifier. The resource name of the ServingProfile.
  - `scope` 'SERVING_PROFILE_SCOPE_UNSPECIFIED' | 'GEMINI_LIVE' | 'INTERACTIONS_API' | 'RESPONSE_API': Required. The specific API this ServingProfile applies to.
  - `updateTime` string, google-datetime: Output only. Timestamp when the ServingProfile was last updated.

## Response `200`

Successful response

- GoogleLongrunningOperation: This resource represents a long-running operation that is the result of a network API call.
  - `done` boolean: If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  - `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.
    - `details` object[]: A list of messages that carry the error details. There is a common set of message types for APIs to use.
    - `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.
  - `metadata` object: Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
  - `name` string: The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  - `response` object: The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.

---

[API](https://skmtc.dev/google/apis/aiplatform.md) - [All operations](https://skmtc.dev/google/apis/aiplatform/llms.txt) - [OpenAPI document](https://skmtc.dev/google/apis/aiplatform/revisions/3aca3b348f0c?raw)
