# Identities

## Create identity

> Creates a new identity record

```json
{"openapi":"3.0.2","info":{"title":"Enclaive auth-ratls API","version":"0.0.0-0"},"servers":[{"url":"http://localhost:8200","description":"Local development server"}],"paths":{"/v1/auth/ratls/identities":{"put":{"tags":["Identities"],"summary":"Create identity","description":"Creates a new identity record","operationId":"createIdentity","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentitiesCreate_identitiesRequest"}}}},"responses":{"200":{"description":"Identity created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentitiesCreate_identitiesResponse"}}}},"400":{"description":"Invalid request body"}}}}},"components":{"schemas":{"IdentitiesCreate_identitiesRequest":{"type":"object","properties":{"created":{"type":"integer","description":"Creation timestamp, set by the plugin","format":"int64"},"name":{"type":"string","description":"Name of the identity"},"type":{"type":"string","description":"Type of the identity, available: platform, firmware, workload, metadata"},"values":{"type":"object","description":"Values for the identity","format":"map","default":{}}},"required":["created","name","type","values"]},"IdentitiesCreate_identitiesResponse":{"type":"object","properties":{"auth":{"type":"object"},"data":{"type":"object","properties":{"created":{"type":"integer","description":"Creation timestamp, set by the plugin","format":"int64"},"name":{"type":"string","description":"Name of the identity"},"type":{"type":"string","description":"Type of the identity, available: platform, firmware, workload, metadata"},"values":{"type":"object","description":"Values for the identity","format":"map","default":{}}}}}}}}}
```

## List all identities

> Retrieves a list of all identity records

```json
{"openapi":"3.0.2","info":{"title":"Enclaive auth-ratls API","version":"0.0.0-0"},"servers":[{"url":"http://localhost:8200","description":"Local development server"}],"paths":{"/v1/auth/ratls/identities/":{"get":{"tags":["Identities"],"summary":"List all identities","description":"Retrieves a list of all identity records","operationId":"listIdentities","parameters":[{"name":"list","description":"Must be set to 'true' to retrieve the list","in":"query","schema":{"type":"string","enum":["true"]},"required":true}],"responses":{"200":{"description":"Identity list retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentitiesList_identitiesResponse"}}}}}}}},"components":{"schemas":{"IdentitiesList_identitiesResponse":{"type":"object","properties":{"request_id":{"type":"string"},"lease_id":{"type":"string"},"renewable":{"type":"boolean"},"lease_duration":{"type":"integer"},"data":{"type":"object","properties":{"keys":{"type":"array","items":{"type":"string","description":"Identity types with trailing slash (e.g., 'platform/', 'firmware/', 'workload/')"}}}},"wrap_info":{"type":"null"},"warnings":{"type":"null"},"auth":{"type":"null"}}}}}}
```

## List identities by type

> Retrieves a list of identities filtered by type

```json
{"openapi":"3.0.2","info":{"title":"Enclaive auth-ratls API","version":"0.0.0-0"},"servers":[{"url":"http://localhost:8200","description":"Local development server"}],"paths":{"/v1/auth/ratls/identities/{type}/":{"get":{"tags":["Identities"],"summary":"List identities by type","description":"Retrieves a list of identities filtered by type","operationId":"listIdentitiesByType","parameters":[{"name":"list","description":"Must be set to 'true' to retrieve the list","in":"query","schema":{"type":"string","enum":["true"]},"required":true}],"responses":{"200":{"description":"Identity list retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentitiesList_identitiesTypeResponse"}}}}}}}},"components":{"schemas":{"IdentitiesList_identitiesTypeResponse":{"type":"object","properties":{"request_id":{"type":"string"},"lease_id":{"type":"string"},"renewable":{"type":"boolean"},"lease_duration":{"type":"integer"},"data":{"type":"object","properties":{"keys":{"type":"array","items":{"type":"string","description":"Identity names with trailing slash"}}}},"wrap_info":{"type":"null"},"warnings":{"type":"null"},"auth":{"type":"null"}}}}}}
```

## List identities by type and name

> Retrieves a list of identities filtered by type and name

```json
{"openapi":"3.0.2","info":{"title":"Enclaive auth-ratls API","version":"0.0.0-0"},"servers":[{"url":"http://localhost:8200","description":"Local development server"}],"paths":{"/v1/auth/ratls/identities/{type}/{name}/":{"get":{"tags":["Identities"],"summary":"List identities by type and name","description":"Retrieves a list of identities filtered by type and name","operationId":"listIdentitiesByTypeAndName","parameters":[{"name":"list","description":"Must be set to 'true' to retrieve the list","in":"query","schema":{"type":"string","enum":["true"]},"required":true}],"responses":{"200":{"description":"Identity list retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentitiesList_identitiesTypeNameResponse"}}}}}}}},"components":{"schemas":{"IdentitiesList_identitiesTypeNameResponse":{"type":"object","properties":{"request_id":{"type":"string"},"lease_id":{"type":"string"},"renewable":{"type":"boolean"},"lease_duration":{"type":"integer"},"data":{"type":"object","properties":{"keys":{"type":"array","items":{"type":"string","description":"Creation timestamps"}}}},"wrap_info":{"type":"null"},"warnings":{"type":"null"},"auth":{"type":"null"}}}}}}
```

## Get identity details

> Retrieves detailed information about a specific identity

```json
{"openapi":"3.0.2","info":{"title":"Enclaive auth-ratls API","version":"0.0.0-0"},"servers":[{"url":"http://localhost:8200","description":"Local development server"}],"paths":{"/v1/auth/ratls/identities/{type}/{name}/{created}":{"get":{"tags":["Identities"],"summary":"Get identity details","description":"Retrieves detailed information about a specific identity","operationId":"getIdentity","responses":{"200":{"description":"Identity details retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IdentitiesRead_identitiesTypeNameCreatedResponse"}}}},"400":{"description":"Identity not found"}}}}},"components":{"schemas":{"IdentitiesRead_identitiesTypeNameCreatedResponse":{"type":"object","properties":{"auth":{"type":"object"},"data":{"type":"object","properties":{"created":{"type":"integer","description":"Creation timestamp, set by the plugin","format":"int64"},"name":{"type":"string","description":"Name of the identity"},"type":{"type":"string","description":"Type of the identity, available: platform, firmware, workload, metadata"},"values":{"type":"object","description":"Values for the identity","format":"map","default":{}}}}}}}}}
```

## Delete identity

> Removes a specific identity record

```json
{"openapi":"3.0.2","info":{"title":"Enclaive auth-ratls API","version":"0.0.0-0"},"servers":[{"url":"http://localhost:8200","description":"Local development server"}],"paths":{"/v1/auth/ratls/identities/{type}/{name}/{created}":{"delete":{"tags":["Identities"],"summary":"Delete identity","description":"Removes a specific identity record","operationId":"deleteIdentity","responses":{"200":{"description":"Identity deleted successfully"},"400":{"description":"Identity not found"}}}}}}
```
