# Edge Functions

## Get Edge Functions

> Get all Edge Functions in a configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions":{"get":{"operationId":"document_resource_get_api_v3_configs__config__d__document___get_6879659801245559","summary":"Get Edge Functions","description":"Get all Edge Functions in a configuration","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}}],"responses":{"200":{"description":"Edge Functions retrieved successfully","content":{"application/json":{"schema":{"title":"Edge Functions document","properties":{"total":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/EdgeFunction"}}}}}}}},"tags":["Edge Functions"]}}},"components":{"schemas":{"EdgeFunction":{"additionalProperties":false,"properties":{"code":{"description":"Edge Function Code","title":"Code","type":"string"},"description":{"anyOf":[{"type":"string"}],"default":"","title":"Description"},"id":{"description":"Unique id","pattern":"^[A-Za-z0-9_]*$","title":"Id","type":"string"},"name":{"title":"Name","type":"string"},"phase":{"enum":["request","response"],"title":"Phase","type":"string"}},"required":["id","name","code","phase"],"title":"EdgeFunction","type":"object"}}}}
```

## Modify Edge Functions

> Update an existing set of Edge Functions for a configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions":{"put":{"description":"Update an existing set of Edge Functions for a configuration","operationId":"document_resource_put_api_v3_configs__config__d__document___put_6879659801245559","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"title":"Edge Functions document","type":"array","items":{"$ref":"#/components/schemas/EdgeFunction"}}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseUpdate"}}},"description":"Edge Functions updated successfully"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Modify Edge Functions","tags":["Edge Functions"]}}},"components":{"schemas":{"EdgeFunction":{"additionalProperties":false,"properties":{"code":{"description":"Edge Function Code","title":"Code","type":"string"},"description":{"anyOf":[{"type":"string"}],"default":"","title":"Description"},"id":{"description":"Unique id","pattern":"^[A-Za-z0-9_]*$","title":"Id","type":"string"},"name":{"title":"Name","type":"string"},"phase":{"enum":["request","response"],"title":"Phase","type":"string"}},"required":["id","name","code","phase"],"title":"EdgeFunction","type":"object"},"ResponseUpdate":{"title":"ResponseUpdate","type":"object","properties":{"message":{"title":"Message","description":"Information about successful update operation","type":"string"}},"required":["message"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Create Edge Functions

> Create a complete set of Edge Functions for a configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions":{"post":{"operationId":"document_resource_post_api_v3_configs__config__d__document___post_6879659801245559","summary":"Create Edge Functions","description":"Create a complete set of Edge Functions for a configuration","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"title":"Edge Functions document","type":"array","items":{"$ref":"#/components/schemas/EdgeFunction"}}}}},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseCreate"}}},"description":"Edge Functions created successfully"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"tags":["Edge Functions"]}}},"components":{"schemas":{"EdgeFunction":{"additionalProperties":false,"properties":{"code":{"description":"Edge Function Code","title":"Code","type":"string"},"description":{"anyOf":[{"type":"string"}],"default":"","title":"Description"},"id":{"description":"Unique id","pattern":"^[A-Za-z0-9_]*$","title":"Id","type":"string"},"name":{"title":"Name","type":"string"},"phase":{"enum":["request","response"],"title":"Phase","type":"string"}},"required":["id","name","code","phase"],"title":"EdgeFunction","type":"object"},"ResponseCreate":{"title":"ResponseCreate","type":"object","properties":{"message":{"title":"Message","description":"Information about successful create operation","type":"string"}},"required":["message"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Delete Edge Functions

> Delete all Edge Functions in a configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions":{"delete":{"operationId":"document_resource_delete_api_v3_configs__config__d__document___delete_6879659801245559","summary":"Delete Edge Functions","description":"Delete all Edge Functions in a configuration","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseDelete"}}},"description":"Edge Functions deleted successfully"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"tags":["Edge Functions"]}}},"components":{"schemas":{"ResponseDelete":{"title":"ResponseDelete","type":"object","properties":{"message":{"title":"Message","description":"Information about successful delete operation","type":"string"}},"required":["message"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Get specific Edge Function

> Get an Edge Function from the specified configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions/{entry_id}":{"get":{"operationId":"entry_resource_get_api_v3_configs__config__d__document__e__entry___get_292002034326962409","summary":"Get specific Edge Function","description":"Get an Edge Function from the specified configuration","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}},{"in":"path","name":"entry_id","required":true,"schema":{"title":"Entry ID","type":"string"}}],"responses":{"200":{"description":"Edge Function retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EdgeFunction"}}}},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"tags":["Edge Functions"]}}},"components":{"schemas":{"EdgeFunction":{"additionalProperties":false,"properties":{"code":{"description":"Edge Function Code","title":"Code","type":"string"},"description":{"anyOf":[{"type":"string"}],"default":"","title":"Description"},"id":{"description":"Unique id","pattern":"^[A-Za-z0-9_]*$","title":"Id","type":"string"},"name":{"title":"Name","type":"string"},"phase":{"enum":["request","response"],"title":"Phase","type":"string"}},"required":["id","name","code","phase"],"title":"EdgeFunction","type":"object"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Modify a single Edge Function

> Update an individual Edge Function within a configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions/{entry_id}":{"put":{"operationId":"entry_resource_put_api_v3_configs__config__d__document__e__entry___put_292002034326962409","summary":"Modify a single Edge Function","description":"Update an individual Edge Function within a configuration","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}},{"in":"path","name":"entry_id","required":true,"schema":{"title":"Entry","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EdgeFunction"}}}},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseUpdate"}}},"description":"Edge Function updated successfully"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"tags":["Edge Functions"]}}},"components":{"schemas":{"EdgeFunction":{"additionalProperties":false,"properties":{"code":{"description":"Edge Function Code","title":"Code","type":"string"},"description":{"anyOf":[{"type":"string"}],"default":"","title":"Description"},"id":{"description":"Unique id","pattern":"^[A-Za-z0-9_]*$","title":"Id","type":"string"},"name":{"title":"Name","type":"string"},"phase":{"enum":["request","response"],"title":"Phase","type":"string"}},"required":["id","name","code","phase"],"title":"EdgeFunction","type":"object"},"ResponseUpdate":{"title":"ResponseUpdate","type":"object","properties":{"message":{"title":"Message","description":"Information about successful update operation","type":"string"}},"required":["message"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Create single Edge Function

> Create an individual Edge Function within a configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions/{entry_id}":{"post":{"description":"Create an individual Edge Function within a configuration","operationId":"entries_resource_post_api_v3_configs__config__d__document__e__post_770839733381503437","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}},{"in":"path","name":"entry_id","required":true,"schema":{"title":"Entry ID","type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EdgeFunction"}}}},"responses":{"201":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseCreate"}}},"description":"Edge Function created successfully"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Create single Edge Function","tags":["Edge Functions"]}}},"components":{"schemas":{"EdgeFunction":{"additionalProperties":false,"properties":{"code":{"description":"Edge Function Code","title":"Code","type":"string"},"description":{"anyOf":[{"type":"string"}],"default":"","title":"Description"},"id":{"description":"Unique id","pattern":"^[A-Za-z0-9_]*$","title":"Id","type":"string"},"name":{"title":"Name","type":"string"},"phase":{"enum":["request","response"],"title":"Phase","type":"string"}},"required":["id","name","code","phase"],"title":"EdgeFunction","type":"object"},"ResponseCreate":{"title":"ResponseCreate","type":"object","properties":{"message":{"title":"Message","description":"Information about successful create operation","type":"string"}},"required":["message"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Delete single Edge Function

> Delete an individual Edge Function from the specified configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions/{entry_id}":{"delete":{"description":"Delete an individual Edge Function from the specified configuration","operationId":"entry_resource_delete_api_v3_configs__config__d__document__e__entry___delete_292002034326962409","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}},{"in":"path","name":"entry_id","required":true,"schema":{"title":"Entry","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseDelete"}}},"description":"Edge Function deleted successfully"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Delete single Edge Function","tags":["Edge Functions"]}}},"components":{"schemas":{"ResponseDelete":{"title":"ResponseDelete","type":"object","properties":{"message":{"title":"Message","description":"Information about successful delete operation","type":"string"}},"required":["message"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Get Edge Functions version list

> Get list of versions of Edge Functions in a configuration

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions/versions":{"get":{"operationId":"document_list_version_resource_get_api_v3_configs__config__d__document__v__get_325157665928822156","summary":"Get Edge Functions version list","description":"Get list of versions of Edge Functions in a configuration","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"title":"Versions list","properties":{"total":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/VersionEntry"}}}}}},"description":"Edge Functions version list retrieved successfully"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"tags":["Edge Functions"]}}},"components":{"schemas":{"VersionEntry":{"title":"VersionEntry","type":"object","properties":{"author":{"title":"Author","type":"string"},"email":{"title":"Email","format":"email","type":"string"},"message":{"title":"Message","type":"string"},"date":{"format":"date-time","title":"Date","type":"string"},"version":{"title":"Version","type":"string"},"parents":{"type":"array","items":{"type":"string"}}}},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Get version of Edge Function

> Get a specific version of an Edge Function

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions/versions/{version}":{"get":{"operationId":"document_version_resource_get_api_v3_configs__config__d__document__v__version___get_2157733992678878348","summary":"Get version of Edge Function","description":"Get a specific version of an Edge Function","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}},{"in":"path","name":"version","required":true,"schema":{"title":"Version","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"title":"Edge Functions document","properties":{"total":{"type":"integer"},"items":{"type":"array","items":{"$ref":"#/components/schemas/EdgeFunction"}}}}}},"description":"Edge Function retrieved successfully"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"tags":["Edge Functions"]}}},"components":{"schemas":{"EdgeFunction":{"additionalProperties":false,"properties":{"code":{"description":"Edge Function Code","title":"Code","type":"string"},"description":{"anyOf":[{"type":"string"}],"default":"","title":"Description"},"id":{"description":"Unique id","pattern":"^[A-Za-z0-9_]*$","title":"Id","type":"string"},"name":{"title":"Name","type":"string"},"phase":{"enum":["request","response"],"title":"Phase","type":"string"}},"required":["id","name","code","phase"],"title":"EdgeFunction","type":"object"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```

## Revert an Edge Function to the specified version

> Set a previous Edge Function version to be the current one

```json
{"openapi":"3.0.2","info":{"title":"Link11 WAAP","version":"v4.3"},"paths":{"/api/v4.3/conf/{config}/edge-functions/versions/{version}/revert":{"put":{"description":"Set a previous Edge Function version to be the current one","operationId":"document_revert_resource_put_api_v3_configs__config__d__document__v__version__revert__put_672753031115275799","parameters":[{"in":"path","name":"config","required":true,"schema":{"title":"Config","type":"string"}},{"in":"path","name":"version","required":true,"schema":{"title":"Version","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResponseUpdate"}}},"description":"Edge Function reversion was successful"},"422":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}},"description":"Validation Error"}},"summary":"Revert an Edge Function to the specified version","tags":["Edge Functions"]}}},"components":{"schemas":{"ResponseUpdate":{"title":"ResponseUpdate","type":"object","properties":{"message":{"title":"Message","description":"Information about successful update operation","type":"string"}},"required":["message"]},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"title":"Detail","type":"array"}},"title":"HTTPValidationError","type":"object"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"title":"Location","type":"array"},"msg":{"title":"Message","type":"string"},"type":{"title":"Error Type","type":"string"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object"}}}}
```
