---
title: "Update API"
method: PATCH
path: "/v3/apis/{apiId}"
tags: ["API"]
---

# Update API

`PATCH /v3/apis/{apiId}`

Updates an API.

## Query parameters

- `force` 'true' | 'false'

## Request body

- object
  - `id` string, uuid — The API identifier.
  - `name` string — The name of your API. The `name + version` combination must be unique for each API you publish.
  - `description` string, nullable — A description of your API. Will be visible on your live Portal.
  - `version` string, nullable — An optional version for your API. Leave this empty if your API is unversioned.
  - `current_version_summary` ApiVersionSummary, nullable
    - `id` string, uuid — The API version identifier.
    - `version` string — The version of this api spec.
    - `spec` object
      - `type` 'oas2' | 'oas3' | 'asyncapi' — The type of specification being stored. This allows us to render the specification correctly.
    - `created_at` string, date-time — An ISO-8601 timestamp representation of entity creation date.
    - `updated_at` string, date-time — An ISO-8601 timestamp representation of entity update date.
  - `slug` string, nullable — The `slug` is used in generated URLs to provide human readable paths. Defaults to `slugify(name + version)`
  - `api_spec_ids` string[] — The list of API specification ids for the API.
  - `portals` object[] — The list of portals which this API is published to.
    - `id` string, uuid, required — The portal identifier.
    - `name` string, required — The name of the portal, used to distinguish it from other portals.
    - `display_name` string, required — The display name of the portal. This value will be the portal's `name` in Portal API.
  - `labels` LabelsUpdate, nullable — Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. Labels are intended to store **INTERNAL** metadata. Keys must be of length 1-63 characters, and cannot start with "kong", "konnect", "mesh", "kic", or "_".
  - `implementation_mode` string, nullable — the implementations that are associated with this api either gateway_entity_binding or access_control_enforcement
  - `attributes` ApiAttributes — A set of attributes that describe the API
  - `created_at` string, date-time — An ISO-8601 timestamp representation of entity creation date.
  - `updated_at` string, date-time — An ISO-8601 timestamp representation of entity update date.

## Response `200`

API

- ApiResponseSchema
  - `id` string, uuid, required — The API identifier.
  - `name` string, required — The name of your API. The `name + version` combination must be unique for each API you publish.
  - `description` string, nullable — A description of your API. Will be visible on your live Portal.
  - `version` string, nullable, required — An optional version for your API. Leave this empty if your API is unversioned.
  - `current_version_summary` ApiVersionSummary, nullable, required
    - `id` string, uuid — The API version identifier.
    - `version` string — The version of this api spec.
    - `spec` object
      - `type` 'oas2' | 'oas3' | 'asyncapi' — The type of specification being stored. This allows us to render the specification correctly.
    - `created_at` string, date-time — An ISO-8601 timestamp representation of entity creation date.
    - `updated_at` string, date-time — An ISO-8601 timestamp representation of entity update date.
  - `slug` string, nullable, required — The `slug` is used in generated URLs to provide human readable paths. Defaults to `slugify(name + version)`
  - `api_spec_ids` string[], required — The list of API specification ids for the API.
  - `portals` object[], required — The list of portals which this API is published to.
    - `id` string, uuid, required — The portal identifier.
    - `name` string, required — The name of the portal, used to distinguish it from other portals.
    - `display_name` string, required — The display name of the portal. This value will be the portal's `name` in Portal API.
  - `labels` Labels, required — Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. Keys must be of length 1-63 characters, and cannot start with "kong", "konnect", "mesh", "kic", or "_".
  - `implementation_mode` string, nullable — the implementations that are associated with this api either gateway_entity_binding or access_control_enforcement
  - `attributes` ApiAttributes — A set of attributes that describe the API
  - `created_at` string, date-time, required — An ISO-8601 timestamp representation of entity creation date.
  - `updated_at` string, date-time, required — An ISO-8601 timestamp representation of entity update date.

## Other responses

- `400` — Bad Request
- `401` — ApiUnauthorized
- `403` — ApiForbidden
- `404` — Not Found
- `409` — Conflict - May occur when constraints are violated
- `415` — Unsupported Media Type

---

[API](https://skmtc.net/kong/apis/konnect-api-go-sdk.md) · [All operations](https://skmtc.net/kong/apis/konnect-api-go-sdk/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kong/konnect-api-go-sdk/versions/0261aef4b1e2/schema)
