# PATCH /admin/securityprofiles/{id}/expirydate

> Set or remove the expiry date of a security profile: send a JSON date-time string, or null so that the profile never expires, with the admin credentials.

- **Product:** DS Server
- **Section:** Documentation
- **Kind:** Endpoint
- **Path:** DS Server > API Reference > Web API > Administration > /securityprofiles/{id}/expirydate > PATCH /admin/securityprofiles/{id}/expirydate
- **561 words**
- **Web URL:** https://docs.textcontrol.com/ds-server/reference/web-api/administration/securityprofiles-id-expirydate/patch/
- **LLMs URL:** https://docs.textcontrol.com/ds-server/reference/web-api/administration/securityprofiles-id-expirydate/patch/llms.txt
- **LLMs-Full URL:** https://docs.textcontrol.com/ds-server/reference/web-api/administration/securityprofiles-id-expirydate/patch/llms-full.txt

---

`PATCH` `https://example.com/admin/securityprofiles/{id}/expirydate`

### Description

Specifies the expiry date of a security profile based on a given ID.

### Examples

The following sample sets the expiry date of the security profile with the ID 3 to June 30, 2027.

```bash
# Request:
curl --request PATCH 'https://trial.dsserver.io/admin/securityprofiles/3/expirydate' \
    --header 'Authorization: Basic YWRtaW46YWRtaW5hZG1pbg==' \
    --header 'Content-Type: application/json' \
    --data-raw '"2027-06-30T00:00:00"'

# Response:
HTTP/1.1 200 OK
```

### Authorization

This endpoint supports the Basic authorization method:

#### Basic

| Header field | Description |
|---|---|
| Authorization | The username "admin" and your admin password are combined into a string separated by a colon, e.g.: admin:password. The resulting string is encoded using the RFC2045-MIME variant of Base64, except not limited to 76 char/line. The authorization method and a space i.e. "Basic " is then put before the encoded string. For example: `Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l` |

### Request Payload

| Type | Value |
|---|---|
| DateTime | Defines the new expiry date as a JSON string (`application/json`), for example `"2027-06-30T00:00:00"`. A date without a time zone offset is taken as the local time of the server. `null` removes the expiry date, so that the security profile doesn't expire. DS Server doesn't check the body: a missing body or a value that isn't a date also removes the expiry date. |

### Success Response

| Status | Description |
|---|---|
| 200 | On success, the HTTP status code in the response header is 200 (OK). |

### Error Response

| Status | Description |
|---|---|
| 401 | A 401 (Unauthorized) is returned, if the user is not authorized. |
| 404 | A 404 (Not Found) with an empty body is returned, if the given ID doesn't match an existing security profile. |
| 415 | A 415 (Unsupported Media Type) is returned, if the `Content-Type` header isn't `application/json`. |

---

## Nearby

- **Previous:** [/admin/securityprofiles/{id}/expirydate](https://docs.textcontrol.com/ds-server/reference/web-api/administration/securityprofiles-id-expirydate/llms-full.txt)
- **Next:** [/admin/securityprofiles/{id}/clientcredentials/authorizedredirecturis](https://docs.textcontrol.com/ds-server/reference/web-api/administration/securityprofiles-id-clientcredentials-authorizedredirecturis/llms-full.txt)
