Salesforce Flow Definition

Schema for a Salesforce Flow definition record from the Tooling API.

Approval ProcessAutomationCRMFlowProcess BuilderSalesforceWorkflow

Properties

Name Type Description
Id string Salesforce record ID for the FlowDefinition.
ApiName string Developer API name used to identify the flow programmatically.
Label string Human-readable label displayed in the Salesforce UI.
Description string Optional description of the flow's purpose.
Status string Current status of the flow version.
ProcessType string The type of flow, determining how it is triggered and used.
TriggerType string What event triggers the flow (for record-triggered and scheduled flows).
ActiveVersionId string ID of the currently active Flow version.
LatestVersionId string ID of the most recently saved (draft or active) Flow version.
ManageableState string Package state of the flow.
CreatedDate string ISO 8601 timestamp when the flow was created.
LastModifiedDate string ISO 8601 timestamp of the last modification.
View JSON Schema on GitHub

JSON Schema

salesforce-flow-definition-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://github.com/api-evangelist/salesforce-automation-system/json-schema/salesforce-flow-definition-schema.json",
  "title": "Salesforce Flow Definition",
  "description": "Schema for a Salesforce Flow definition record from the Tooling API.",
  "type": "object",
  "properties": {
    "Id": {
      "type": "string",
      "description": "Salesforce record ID for the FlowDefinition."
    },
    "ApiName": {
      "type": "string",
      "description": "Developer API name used to identify the flow programmatically."
    },
    "Label": {
      "type": "string",
      "description": "Human-readable label displayed in the Salesforce UI."
    },
    "Description": {
      "type": "string",
      "description": "Optional description of the flow's purpose."
    },
    "Status": {
      "type": "string",
      "enum": ["Active", "Draft", "Obsolete", "InvalidDraft"],
      "description": "Current status of the flow version."
    },
    "ProcessType": {
      "type": "string",
      "enum": [
        "Flow",
        "AutoLaunchedFlow",
        "Workflow",
        "CustomEvent",
        "InvocableProcess",
        "LoginFlow",
        "ActionPlan",
        "AppProcess",
        "FieldServiceMobile",
        "FieldServiceWeb",
        "Survey",
        "SurveyEnrich"
      ],
      "description": "The type of flow, determining how it is triggered and used."
    },
    "TriggerType": {
      "type": "string",
      "enum": [
        "RecordBeforeSave",
        "RecordAfterSave",
        "RecordBeforeDelete",
        "Scheduled",
        "PlatformEvent",
        null
      ],
      "description": "What event triggers the flow (for record-triggered and scheduled flows)."
    },
    "ActiveVersionId": {
      "type": "string",
      "description": "ID of the currently active Flow version."
    },
    "LatestVersionId": {
      "type": "string",
      "description": "ID of the most recently saved (draft or active) Flow version."
    },
    "ManageableState": {
      "type": "string",
      "enum": ["installed", "installedEditable", "unmanaged", "released", "deleted", "deprecated"],
      "description": "Package state of the flow."
    },
    "CreatedDate": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp when the flow was created."
    },
    "LastModifiedDate": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp of the last modification."
    }
  }
}