---
title: "Update Model Endpoint"
method: PUT
path: "/v1/model-endpoints/{model_endpoint_id}"
---

# Update Model Endpoint

`PUT /v1/model-endpoints/{model_endpoint_id}`

Updates the Model endpoint.

## Path parameters

- `model_endpoint_id` string, required

## Request body

- UpdateModelEndpointV1Request
  - `model_bundle_id` string, nullable
  - `metadata` object, nullable
  - `post_inference_hooks` string[], nullable
  - `cpus` union
    - string
    - integer
    - number
  - `gpus` integer, nullable
  - `memory` union
    - string
    - integer
    - number
  - `gpu_type` 'nvidia-tesla-t4' | 'nvidia-ampere-a10' | 'nvidia-ampere-a100' | 'nvidia-ampere-a100e' | 'nvidia-hopper-h100' | 'nvidia-hopper-h100-1g20gb' | 'nvidia-hopper-h100-3g40gb' — Lists allowed GPU types for Launch.
  - `storage` union
    - string
    - integer
    - number
  - `optimize_costs` boolean, nullable
  - `min_workers` integer, nullable
  - `max_workers` integer, nullable
  - `per_worker` integer, nullable
  - `concurrent_requests_per_worker` integer, nullable
  - `forwarder_max_concurrency` integer, nullable — Max in-flight requests admitted by the HTTP forwarder container, independent of `per_worker` / autoscaling. When None (default), the forwarder inherits its `--concurrency` flag from `per_worker` (current behavior). Upper bound matches LIRA's FORWARDER_MAX_CONCURRENCY_LIMIT.
  - `labels` object, nullable
  - `prewarm` boolean, nullable
  - `high_priority` boolean, nullable
  - `billing_tags` object, nullable
  - `default_callback_url` string, nullable
  - `default_callback_auth` union
    - CallbackBasicAuth
      - `kind` 'basic', required
      - `username` string, required
      - `password` string, required
    - CallbackmTLSAuth
      - `kind` 'mtls', required
      - `cert` string, required
      - `key` string, required
  - `public_inference` boolean, nullable
  - `queue_message_timeout_seconds` integer, nullable — For async endpoints, the queue message visibility/lock timeout in seconds. Controls how long a worker has to process a message before it becomes visible again (SQS VisibilityTimeout / ASB lock_duration). Note: Azure Service Bus has a maximum of 300 seconds; values above this will be clamped.
  - `task_expires_seconds` integer, nullable — For async endpoints, how long a task can wait in queue before expiring (in seconds). Default: 86400 (24 hours).

## Response `200`

Successful Response

- UpdateModelEndpointV1Response
  - `endpoint_creation_task_id` string, required

## Other responses

- `422` — Validation Error

---

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