{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/CustomPlugin", "title": "CustomPlugin", "type": "object", "properties": { "created_at": { "description": "Unix epoch when the resource was created.", "type": "integer", "nullable": true }, "handler": { "description": "The handler for the given custom plugin.", "type": "string" }, "id": { "description": "A string representing a UUID (universally unique identifier).", "type": "string", "nullable": true }, "name": { "description": "The name to associate with the given custom plugin.", "type": "string" }, "schema": { "description": "The schema for the given custom plugin.", "type": "string" }, "tags": { "description": "A set of strings representing tags.", "type": "array", "items": { "description": "A string representing a tag.", "type": "string" }, "nullable": true }, "updated_at": { "description": "Unix epoch when the resource was last updated.", "type": "integer", "nullable": true } }, "example": { "handler": "return { VERSION = '1.0,0', PRIORITY = 500, access = function(self, config) kong.service.request.set_header(config.name, config.value) end }", "id": "868346aa-1105-4b77-8346-aa1105fb77c4", "name": "set-header", "schema": "return { name = 'set-header', fields = { { protocols = require('kong.db.schema.typedefs').protocols_http }, { config = { type = 'record', fields = { { name = { description = 'The name of the header to set.', type = 'string', required = true } }, { value = { description = 'The value for the header.', type = 'string', required = true } } } } } } }" }, "additionalProperties": false, "required": [ "handler", "name", "schema" ] }