Showing:

Annotations
Diagram
Properties
Source
Schema sfdx-project.schema.json
Document version Draft 7
Annotations
Title  Salesforce DX Project File

Description  The properties and shape of the SFDX project
Diagram
properties_packageDirectories.html#/properties/packageDirectories properties_namespace.html#/properties/namespace properties_sourceApiVersion.html#/properties/sourceApiVersion properties_sfdcLoginUrl.html#/properties/sfdcLoginUrl properties_signupTargetLoginUrl.html#/properties/signupTargetLoginUrl properties_oauthLocalPort.html#/properties/oauthLocalPort properties_plugins.html#/properties/plugins properties_packageAliases.html#/properties/packageAliases #/definitions/packageDirectory.path #/definitions/packageDirectory.default #/definitions/packageDirectory.package #/definitions/packageDirectory.versionName #/definitions/packageDirectory.versionDescription #/definitions/packageDirectory.versionNumber #/definitions/packageDirectory.definitionFile #/definitions/packageDirectory.dependencies #/definitions/packageDirectory.ancestorId #/definitions/packageDirectory.ancestorVersion #/definitions/packageDirectory.releaseNotesUrl #/definitions/packageDirectory.postInstallUrl #/definitions/packageDirectory.postInstallScript #/definitions/packageDirectory.uninstallScript #/definitions/packageDirectory.includeProfileUserLicenses diagram
Type object
Properties
Name Occurrence
packageDirectories
namespace
sourceApiVersion
sfdcLoginUrl
signupTargetLoginUrl
oauthLocalPort
plugins
packageAliases
required
optional
optional
optional
optional
optional
optional
optional
Additional Properties false
Source

{
  "type": "object",
  "additionalProperties": false,
  "title": "Salesforce DX Project File",
  "description": "The properties and shape of the SFDX project",
  "$id": "http://schemas.salesforce.com/sfdx-project.json",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": ["packageDirectories"],
  "properties": {
    "packageDirectories": {
      "type": "array",
      "minItems": 1,
      "additionalItems": false,
      "title": "Package Directories",
      "description": "Package directories indicate which directories to target when syncing source to and from the scratch org. These directories can contain source from your managed package, unmanaged package, or unpackaged source, for example, ant tool or change set.",
      "$comment": "The properties ancestorId & ancestorVersion cannot be included together, but this schema optimizes for VS Code code completion rather than pure validation.",
      "items": {}
    },
    "namespace": {
      "type": "string",
      "title": "Namespace",
      "description": "The global namespace that is used with a package. The namespace must be registered with an org that is associated with your Dev Hub org. This namespace is assigned to scratch orgs created with the org:create command. If you’re creating an unlocked package, you have the option to create a package with no namespace."
    },
    "sourceApiVersion": {
      "type": "string",
      "title": "Source API Version",
      "description": "The API version that the source is compatible with. The default is the same version as the Salesforce CLI.",
      "default": "48.0"
    },
    "sfdcLoginUrl": {
      "type": "string",
      "title": "SFDC Login URL",
      "description": "The login URL that the force:auth commands use. If not specified, the default is login.salesforce.com. Override the default value if you want users to authorize to a specific Salesforce instance. For example, if you want to authorize into a sandbox org, set this parameter to test.salesforce.com.",
      "default": "https://login.salesforce.com"
    },
    "signupTargetLoginUrl": {
      "type": "string",
      "description": "The url that is used when creating new scratch orgs. This is typically only used for testing prerelease environments."
    },
    "oauthLocalPort": {
      "type": "number",
      "description": "By default, the OAuth port is 1717. However, change this port if this port is already in use, and you plan to create a connected app in your Dev Hub org to support JWT-based authorization."
    },
    "plugins": {
      "type": "object",
      "additionalProperties": true,
      "title": "CLI Plugins custom settings",
      "description": "Salesforce CLI plugin configurations used with this project."
    },
    "packageAliases": {
      "type": "object",
      "title": "Aliases for packaging ids",
      "description": "The Salesforce CLI updates this file with the aliases when you create a package or package version. You can also manually update this section for existing packages or package versions. You can use the alias instead of the cryptic package ID when running CLI force:package commands.",
      "patternProperties": {
        "^[ -~]+$": {
          "type": "string",
          "pattern": "^(0Ho|033|05i|04t)([a-zA-Z0-9]{15}|[a-zA-Z0-9]{12})$"
        }
      }
    }
  }
}