Renovate · Schema

Renovate Configuration

JSON configuration schema for the Renovate dependency automation tool (renovate.json)

AutomationCI/CDConfigurationDependency ManagementOpen SourceDevOps

Properties

Name Type Description
$schema string JSON Schema reference for IDE validation
extends array Preset configurations to extend. Common: config:recommended, config:base
enabled boolean Whether Renovate is enabled for the repository
timezone string IANA timezone for scheduling
schedule array Array of cron expressions or natural language schedules
prConcurrentLimit integer Maximum number of open PRs at any time
prHourlyLimit integer Maximum number of PRs to create per hour
branchPrefix string Prefix for Renovate-created branches
commitMessagePrefix string Prefix for commit messages
labels array Labels to apply to created PRs
assignees array GitHub usernames to assign to PRs
reviewers array GitHub usernames to request review from
automerge boolean Whether to automatically merge passing PRs
automergeType string Automerge strategy: pr, branch, or pr-comment
packageRules array Rules to apply to specific packages or package groups
ignoreDeps array List of dependency names to ignore completely
ignorePaths array File paths to exclude from updates
enabledManagers array Explicitly enabled package managers
rangeStrategy string How to handle version range updates
semanticCommits string Use semantic commit messages
dependencyDashboard boolean Create a Dependency Dashboard issue in the repository
vulnerabilityAlerts object Configuration for security vulnerability update PRs
lockFileMaintenance object Configuration for periodic lock file maintenance PRs
View JSON Schema on GitHub

JSON Schema

renovate-config-schema.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://docs.renovatebot.com/schemas/renovate-config",
  "title": "Renovate Configuration",
  "description": "JSON configuration schema for the Renovate dependency automation tool (renovate.json)",
  "type": "object",
  "properties": {
    "$schema": {
      "type": "string",
      "description": "JSON Schema reference for IDE validation",
      "example": "https://docs.renovatebot.com/renovate-schema.json"
    },
    "extends": {
      "type": "array",
      "description": "Preset configurations to extend. Common: config:recommended, config:base",
      "items": { "type": "string" },
      "example": ["config:recommended"]
    },
    "enabled": {
      "type": "boolean",
      "description": "Whether Renovate is enabled for the repository"
    },
    "timezone": {
      "type": "string",
      "description": "IANA timezone for scheduling",
      "example": "America/New_York"
    },
    "schedule": {
      "type": "array",
      "description": "Array of cron expressions or natural language schedules",
      "items": { "type": "string" },
      "example": ["before 6am on Monday"]
    },
    "prConcurrentLimit": {
      "type": "integer",
      "description": "Maximum number of open PRs at any time",
      "example": 10
    },
    "prHourlyLimit": {
      "type": "integer",
      "description": "Maximum number of PRs to create per hour",
      "example": 2
    },
    "branchPrefix": {
      "type": "string",
      "description": "Prefix for Renovate-created branches",
      "example": "renovate/"
    },
    "commitMessagePrefix": {
      "type": "string",
      "description": "Prefix for commit messages",
      "example": "chore(deps):"
    },
    "labels": {
      "type": "array",
      "description": "Labels to apply to created PRs",
      "items": { "type": "string" },
      "example": ["dependencies", "renovate"]
    },
    "assignees": {
      "type": "array",
      "description": "GitHub usernames to assign to PRs",
      "items": { "type": "string" }
    },
    "reviewers": {
      "type": "array",
      "description": "GitHub usernames to request review from",
      "items": { "type": "string" }
    },
    "automerge": {
      "type": "boolean",
      "description": "Whether to automatically merge passing PRs",
      "example": false
    },
    "automergeType": {
      "type": "string",
      "description": "Automerge strategy: pr, branch, or pr-comment",
      "enum": ["pr", "branch", "pr-comment"]
    },
    "packageRules": {
      "type": "array",
      "description": "Rules to apply to specific packages or package groups",
      "items": {
        "type": "object",
        "properties": {
          "matchPackageNames": {
            "type": "array",
            "items": { "type": "string" }
          },
          "matchPackagePatterns": {
            "type": "array",
            "items": { "type": "string" }
          },
          "matchManagers": {
            "type": "array",
            "items": { "type": "string" }
          },
          "matchUpdateTypes": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": ["major", "minor", "patch", "pin", "digest", "pinDigest", "rollback", "bump", "replacement"]
            }
          },
          "enabled": { "type": "boolean" },
          "automerge": { "type": "boolean" },
          "groupName": { "type": "string" },
          "schedule": { "type": "array", "items": { "type": "string" } }
        }
      }
    },
    "ignoreDeps": {
      "type": "array",
      "description": "List of dependency names to ignore completely",
      "items": { "type": "string" }
    },
    "ignorePaths": {
      "type": "array",
      "description": "File paths to exclude from updates",
      "items": { "type": "string" }
    },
    "enabledManagers": {
      "type": "array",
      "description": "Explicitly enabled package managers",
      "items": { "type": "string" }
    },
    "rangeStrategy": {
      "type": "string",
      "description": "How to handle version range updates",
      "enum": ["auto", "pin", "bump", "replace", "widen", "update-lockfile", "in-range-only"]
    },
    "semanticCommits": {
      "type": "string",
      "description": "Use semantic commit messages",
      "enum": ["auto", "enabled", "disabled"]
    },
    "dependencyDashboard": {
      "type": "boolean",
      "description": "Create a Dependency Dashboard issue in the repository",
      "example": true
    },
    "vulnerabilityAlerts": {
      "type": "object",
      "description": "Configuration for security vulnerability update PRs"
    },
    "lockFileMaintenance": {
      "type": "object",
      "description": "Configuration for periodic lock file maintenance PRs"
    }
  }
}