{
  "schema_version": 2,
  "id": "operate/rs/references/rest-api/objects/bootstrap/user_defined_module",
  "title": "user_defined_module object",
  "url": "https://redis.io/docs/latest/operate/rs/references/rest-api/objects/bootstrap/user_defined_module/",
  "summary": "An object for user-defined module configuration during bootstrap",
  "tags": [
    "docs",
    "operate",
    "rs"
  ],
  "last_updated": "2025-12-22T11:45:26-06:00",
  "page_type": "content",
  "content_hash": "f51505ab5a8d475d1cfd952e4a36c08aab52d3851c15d408bf190e4d4f54ab8e",
  "sections": [
    {
      "id": "overview",
      "title": "Overview",
      "role": "overview",
      "text": "A user-defined module configuration object for bootstrap operations.\n\n| Name | Type/Value | Description |\n|------|------------|-------------|\n| name | string | Module name for presentation and logging purposes (required) |\n| location | object | Information on where to download the module from (required)<br />{\n  \"location_type\": \"http | https\",\n  \"url\": \"string\",\n  \"credentials\": {\n    \"username\": \"string\",\n    \"password\": \"string\"\n  }\n}<br />**location_type**: The type of location, either `http` or `https` (required)<br />**url**: The URL to download the module zip file from (required)<br />**credentials**: Optional credentials for downloads that require basic authentication |"
    },
    {
      "id": "module-package-requirements",
      "title": "Module package requirements",
      "role": "content",
      "text": "The module must be packaged as a `.zip` file containing:\n\n- **module.json**: A metadata file with module information including:\n  - `module_name`: The actual module name\n  - `version`: Numeric version\n  - `semantic_version`: Semantic version string (for example, \"1.0.0\")\n  - `min_redis_version`: Minimum compatible Redis version\n  - `commands`: List of commands the module provides\n  - `capabilities`: List of module capabilities\n\n- **Module binary**: The compiled `.so` file for the target platform"
    }
  ],
  "examples": []
}
