# Update Site

patch `https://app.mk.io/api/v1/projects/:project_name/infra/sites/:name`

Update a site. To learn more about sites, read Site Concept.

RBAC Capability Required: `infra.site.update`

## Authentication

Authorization Bearer

Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Path parameters

- **project_name** string Required
- **name** string Required

## Request

This endpoint expects an object.

### metadata object [DefaultPatchMetadata](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/defaultpatchmetadata) Optional

Resource metadata.

- **displayName** string Optional 1-255 characters
  - A human-readable name for the resource.
- **labels** map from strings to string Optional
  - A dictionary of labels associated with the resource. Maximum number of labels: 32. Maximum length of a label or value: 256 characters. Label: alphanumeric, hyphens and underscores. Value: alphanumeric, hyphens, underscores and spaces.

### spec object [SitePatchBodySpec](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/sitepatchbodyspec) Optional

Site specification.

- **geolocation** object [GeolocationFragment](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/geolocationfragment) Optional
  - **coordinates** list of doubles Required 0-2 items
    - Co-ordinates that describe the geolocation (ISO 6709), an array of two floating point numbers [latitude(North - South), longitude(East - West)]. Set an empty array to clear the geolocation.
- **routes** list of objects [RouteJsonFragment](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/routejsonfragment) Optional

The routes that connect the network to <glossary:site>s.

### defaultTransport object [DefaultTransport](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/defaulttransport) Optional

Settings used to influence the <glossary:transport> that the system will automatically select when it needs to send <glossary:content> from one <glossary:flow> to another flow. The default transport settings from the route on which the content enters the network are used to select and configure the transport for the content. Read Default transports to learn more.

- **cidr** string Optional Defaults to
  - The IP address range to choose from when the system automatically creates transport settings for sending content from one flow to another. If a specific IP/URL (such as a public cloud IP or a fleet device IP) is required to send content between flows, then this setting will be ignored.
- **type** enum Required
  - The type of <glossary:transport> to use for sending content from one flow to another flow.

Allowed values: Auto, SRTListener, SRTCaller, UDP, RISTListener

- **networkName** string Required pattern: ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$
  - The name of the <glossary:network> connected to the site by this route.

## Response

200 The updated site

- **kind** string Required
  - The kind of record.
- **metadata** object [MetadataSchema](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/metadataschema) Required

Site metadata.

- **created** string Optional format: date-time
  - The time when the resource was created
- **createdBy** string Optional format: uuid
  - ID of the user who created the resource
- **createdByEmail** string Optional
  - Email of the user who created the resource
- **displayName** string Optional
  - The display name of the resource
- **id** string Required format: uuid
  - The ID of the resource
- **labels** map from strings to string Optional
  - A dictionary of labels associated with the resource
- **name** string Optional
  - The name of the resource
- **updated** string Optional format: date-time
  - The time when the resource was last updated
- **updatedBy** string Optional format: uuid
  - ID of the user who last updated the resource
- **updatedByEmail** string Optional
  - Email of the user who last updated the resource
- **spec** object [SiteBodySpec](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/sitebodyspec) Required

Site specification.

- **geolocation** object [GeolocationFragment](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/geolocationfragment) Optional
  - **coordinates** list of doubles Required 0-2 items
- **routes** list of objects [RouteJsonFragment](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/routejsonfragment) Optional
- **defaultTransport** object [DefaultTransport](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/defaulttransport) Optional

### status object [SiteBodyStatus](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/sitebodystatus) Required

Site status.

- **locationDisplayName** string Optional <=255 characters
- **locationName** string Optional pattern: ^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$
- **owner** enum Required
  - Indicates whether the site was automatically created by the system. System owned sites cannot be deleted, but they can be modified.

Allowed values: User, System

## Errors

- **400 Bad Request**
  - error object [ErrorDetail](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/errordetail) Required
- **401 Unauthorized**
  - error object [ErrorDetail](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/errordetail) Required
- **403 Forbidden**
  - error object [ErrorDetail](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/errordetail) Required
- **404 Not Found**
  - error object [ErrorDetail](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/errordetail) Required
- **429 Too Many Requests**
  - error object [ErrorDetail](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/errordetail) Required
- **500 Internal Server Error**
  - error object [ErrorDetail](https://docs.mediakind.com/api-reference/infrastructure-api/schemas/errordetail) Required
