{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/CreateActionModuleRequestContent",
  "title": "CreateActionModuleRequestContent",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "name",
    "code"
  ],
  "properties": {
    "name": {
      "type": "string",
      "description": "The name of the action module.",
      "maxLength": 255,
      "pattern": "^[^\u0000]*$"
    },
    "code": {
      "type": "string",
      "description": "The source code of the action module.",
      "maxLength": 65536,
      "pattern": "^[^\u0000]*$"
    },
    "secrets": {
      "type": "array",
      "description": "The secrets to associate with the action module.",
      "items": {
        "$ref": "#/components/schemas/ActionModuleSecretRequest"
      }
    },
    "dependencies": {
      "type": "array",
      "description": "The npm dependencies of the action module.",
      "items": {
        "$ref": "#/components/schemas/ActionModuleDependencyRequest"
      }
    },
    "api_version": {
      "type": "string",
      "description": "The API version of the module.",
      "maxLength": 20,
      "pattern": "^[^\u0000]*$"
    },
    "publish": {
      "type": "boolean",
      "description": "Whether to publish the module immediately after creation."
    }
  }
}