[
  {
    "name": "convertLead",
    "label": "Convert Lead",
    "description": "Salesforce-compatible Lead Convert. Routes through the Std_ConvertLead flow so tenants customise behavior (defaults, guards, child relink) as data without backend changes.",
    "flowDeveloperName": "Std_ConvertLead",
    "visibilityCondition": "record.IsConverted != true",
    "previewFlowDeveloperName": "Std_ConvertLeadCampaignPreview",
    "category": "LeadActions",
    "rendererId": "app-pack:crm/action-renderer/lead-convert",
    "requiredPermissions": [
      "ConvertLeads"
    ],
    "targetObjects": [
      "Lead"
    ],
    "isAtomic": true,
    "sortOrder": 0,
    "inputs": [
      {
        "apiName": "leadId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Lead",
        "uiMode": "hidden",
        "targetObject": "Lead",
        "targetFieldAPIName": "Id",
        "sortOrder": 0
      },
      {
        "apiName": "convertedStatus",
        "dataType": "picklist",
        "isRequired": true,
        "uiSection": "Lead",
        "uiMode": "hidden",
        "targetObject": "Lead",
        "targetFieldAPIName": "Status",
        "requiredPicklistTag": "converted",
        "sortOrder": 1
      },
      {
        "apiName": "accountId",
        "dataType": "reference",
        "referenceTo": "Account",
        "label": "Account",
        "uiSection": "Account",
        "uiMode": "reuse",
        "targetObject": "Account",
        "sortOrder": 2
      },
      {
        "apiName": "contactFirstName",
        "dataType": "string",
        "uiSection": "Contact",
        "uiMode": "create",
        "targetObject": "Contact",
        "targetFieldAPIName": "FirstName",
        "prefillSourceFieldAPIName": "FirstName",
        "mappingSourceObject": "Lead",
        "mappingActionType": "convert",
        "sortOrder": 3
      },
      {
        "apiName": "contactLastName",
        "dataType": "string",
        "uiSection": "Contact",
        "uiMode": "create",
        "targetObject": "Contact",
        "targetFieldAPIName": "LastName",
        "prefillSourceFieldAPIName": "LastName",
        "mappingSourceObject": "Lead",
        "mappingActionType": "convert",
        "sortOrder": 4
      },
      {
        "apiName": "contactTitle",
        "dataType": "string",
        "uiSection": "Contact",
        "uiMode": "create",
        "targetObject": "Contact",
        "targetFieldAPIName": "Title",
        "prefillSourceFieldAPIName": "Title",
        "mappingSourceObject": "Lead",
        "mappingActionType": "convert",
        "sortOrder": 5
      },
      {
        "apiName": "contactEmail",
        "dataType": "string",
        "uiSection": "Contact",
        "uiMode": "create",
        "targetObject": "Contact",
        "targetFieldAPIName": "Email",
        "prefillSourceFieldAPIName": "Email",
        "mappingSourceObject": "Lead",
        "mappingActionType": "convert",
        "sortOrder": 6
      },
      {
        "apiName": "contactId",
        "dataType": "reference",
        "referenceTo": "Contact",
        "label": "Contact",
        "uiSection": "Contact",
        "uiMode": "reuse",
        "targetObject": "Contact",
        "sortOrder": 7
      },
      {
        "apiName": "opportunityName",
        "dataType": "string",
        "uiSection": "Opportunity",
        "uiMode": "create",
        "targetObject": "Opportunity",
        "targetFieldAPIName": "Name",
        "prefillSourceFieldAPIName": "Company",
        "mappingSourceObject": "Lead",
        "mappingActionType": "convert",
        "sortOrder": 8
      },
      {
        "apiName": "opportunityId",
        "dataType": "reference",
        "referenceTo": "Opportunity",
        "label": "Opportunity",
        "uiSection": "Opportunity",
        "uiMode": "reuse",
        "targetObject": "Opportunity",
        "sortOrder": 9
      },
      {
        "apiName": "doNotCreateOpportunity",
        "dataType": "boolean",
        "label": "Do Not Create Opportunity",
        "uiSection": "Opportunity",
        "uiMode": "skip",
        "targetObject": "Opportunity",
        "sortOrder": 10
      },
      {
        "apiName": "ownerId",
        "dataType": "reference",
        "referenceTo": "User",
        "label": "Owner",
        "uiSection": "Owner",
        "uiMode": "reuse",
        "targetObject": "User",
        "sortOrder": 11
      },
      {
        "apiName": "overwriteLeadSource",
        "dataType": "boolean",
        "label": "Overwrite Lead Source",
        "uiSection": "Contact",
        "uiMode": "reuse",
        "targetObject": "Contact",
        "sortOrder": 12
      }
    ],
    "outputs": [
      {
        "apiName": "leadId",
        "dataType": "id",
        "sortOrder": 0
      },
      {
        "apiName": "opportunityId",
        "dataType": "reference",
        "referenceTo": "Opportunity",
        "sortOrder": 1
      },
      {
        "apiName": "accountId",
        "dataType": "reference",
        "referenceTo": "Account",
        "sortOrder": 2
      },
      {
        "apiName": "contactId",
        "dataType": "reference",
        "referenceTo": "Contact",
        "sortOrder": 3
      }
    ],
    "fieldDefaults": [
      {
        "targetObject": "Opportunity",
        "fieldAPIName": "CloseDate",
        "valueFormula": "TODAY() + 30",
        "priority": 0
      },
      {
        "targetObject": "Opportunity",
        "fieldAPIName": "Launch_Date__c",
        "valueFormula": "TODAY() + 30",
        "priority": 0
      },
      {
        "targetObject": "Opportunity",
        "fieldAPIName": "ARR_Amount_USD__c",
        "valueFormula": "0",
        "priority": 0
      },
      {
        "targetObject": "Account",
        "fieldAPIName": "Website",
        "valueFormula": "\"https://lead-convert.example.invalid\"",
        "priority": 100
      },
      {
        "targetObject": "Account",
        "fieldAPIName": "Industry",
        "valueFormula": "\"ISV/SaaS-Software\"",
        "priority": 100
      },
      {
        "targetObject": "Account",
        "fieldAPIName": "NumberOfEmployees",
        "valueFormula": "100",
        "priority": 100
      },
      {
        "targetObject": "Account",
        "fieldAPIName": "Region__c",
        "valueFormula": "\"APAC\"",
        "priority": 100
      },
      {
        "targetObject": "Account",
        "fieldAPIName": "Vertical__c",
        "valueFormula": "\"Payment\"",
        "priority": 100
      }
    ],
    "inputGuards": [
      {
        "condition": "ISBLANK(Input.accountId)",
        "requiredObject": "Account",
        "requiredOperation": "Create",
        "errorMessage": "permission denied: Account.Create is required to create an Account during lead convert",
        "gatedInput": "accountId",
        "sortOrder": 10
      },
      {
        "condition": "NOT(ISBLANK(Input.accountId))",
        "requiredObject": "Account",
        "requiredOperation": "Edit",
        "errorMessage": "permission denied: Account.Edit is required to reuse an Account during lead convert",
        "gatedInput": "accountId",
        "sortOrder": 20
      },
      {
        "condition": "ISBLANK(Input.contactId)",
        "requiredObject": "Contact",
        "requiredOperation": "Create",
        "errorMessage": "permission denied: Contact.Create is required to create a Contact during lead convert",
        "gatedInput": "contactId",
        "sortOrder": 30
      },
      {
        "condition": "NOT(ISBLANK(Input.contactId))",
        "requiredObject": "Contact",
        "requiredOperation": "Edit",
        "errorMessage": "permission denied: Contact.Edit is required to reuse a Contact during lead convert",
        "gatedInput": "contactId",
        "sortOrder": 40
      },
      {
        "condition": "AND(Input.doNotCreateOpportunity != true, ISBLANK(Input.opportunityId))",
        "requiredObject": "Opportunity",
        "requiredOperation": "Create",
        "errorMessage": "permission denied: Opportunity.Create is required to create an Opportunity during lead convert",
        "gatedInput": "opportunityName",
        "sortOrder": 50
      },
      {
        "condition": "AND(Input.doNotCreateOpportunity != true, NOT(ISBLANK(Input.opportunityId)))",
        "requiredObject": "Opportunity",
        "requiredOperation": "Edit",
        "errorMessage": "permission denied: Opportunity.Edit is required to reuse an Opportunity during lead convert",
        "gatedInput": "opportunityId",
        "sortOrder": 60
      },
      {
        "condition": "Input.doNotCreateOpportunity == true",
        "requiredPermission": "SkipOpportunityOnConvert",
        "errorMessage": "permission denied: you do not have permission to skip opportunity creation during lead convert",
        "gatedInput": "doNotCreateOpportunity",
        "sortOrder": 70
      }
    ],
    "internalAccessScopes": [
      {
        "objectApiName": "FlowDefinition",
        "operation": "Read",
        "reason": "Lead Convert owns resolution of its pack-owned standard FlowDefinition after the caller has passed the ConvertLeads action gate."
      },
      {
        "objectApiName": "Flow",
        "operation": "Read",
        "reason": "Lead Convert owns resolution of its pack-owned active Flow version after the caller has passed the ConvertLeads action gate."
      },
      {
        "objectApiName": "OpportunityContactRole",
        "operation": "Read",
        "reason": "Lead Convert owns lookup of existing opportunity contact roles before promoting or creating the primary role."
      },
      {
        "objectApiName": "OpportunityContactRole",
        "operation": "Create",
        "reason": "Lead Convert owns creation of the primary opportunity contact role after conversion."
      },
      {
        "objectApiName": "OpportunityContactRole",
        "operation": "Edit",
        "reason": "Lead Convert owns demotion and promotion of primary opportunity contact roles after conversion."
      },
      {
        "objectApiName": "CampaignMember",
        "operation": "Read",
        "reason": "Lead Convert owns lookup of campaign memberships for primary campaign attribution and child relink after conversion."
      },
      {
        "objectApiName": "CampaignMember",
        "operation": "Edit",
        "reason": "Lead Convert owns reparenting campaign memberships from Lead to Contact after conversion."
      },
      {
        "objectApiName": "Task",
        "operation": "Read",
        "reason": "Lead Convert owns lookup of open tasks for child relink after conversion."
      },
      {
        "objectApiName": "Task",
        "operation": "Edit",
        "reason": "Lead Convert owns reparenting open tasks from Lead to converted Contact and Account or Opportunity."
      },
      {
        "objectApiName": "Lead",
        "operation": "Read",
        "reason": "Lead Convert owns reading the source Lead record during conversion, even when the caller's ObjectPermissions.CanRead is false."
      },
      {
        "objectApiName": "Lead",
        "operation": "Edit",
        "reason": "Lead Convert owns writing back IsConverted, ConvertedAccountId, ConvertedContactId, ConvertedOpportunityId, and Status to the source Lead record after conversion, even when the caller's ObjectPermissions.CanEdit is false."
      },
      {
        "objectApiName": "Opportunity",
        "operation": "Read",
        "reason": "Lead Convert validates the FK to the converted/linked Opportunity (e.g. OpportunityContactRole.OpportunityId) and must confirm the record exists even when the caller's own RLS would not surface it."
      },
      {
        "objectApiName": "Opportunity",
        "operation": "Create",
        "reason": "Lead Convert owns creation of the converted Opportunity and writes Lead-to-Opportunity mapped fields after the caller has passed the Opportunity.Create input guard."
      },
      {
        "objectApiName": "Contact",
        "operation": "Read",
        "reason": "Lead Convert validates the FK to the converted/linked Contact (e.g. OpportunityContactRole.ContactId) under the action scope."
      },
      {
        "objectApiName": "Contact",
        "operation": "Create",
        "reason": "Lead Convert owns creation of the converted Contact and writes Lead-to-Contact mapped fields after the caller has passed the Contact.Create input guard."
      },
      {
        "objectApiName": "Account",
        "operation": "Read",
        "reason": "Lead Convert validates the FK to the (reused or created) Account referenced by Contact/Opportunity under the action scope."
      },
      {
        "objectApiName": "Account",
        "operation": "Create",
        "reason": "Lead Convert owns creation of the converted Account and writes Lead-to-Account mapped fields after the caller has passed the Account.Create input guard."
      },
      {
        "objectApiName": "Campaign",
        "operation": "Read",
        "reason": "Lead Convert maps the lead's primary campaign onto Contact.First_Campaign__c and Opportunity.CampaignId and must validate those FK references under the action scope."
      },
      {
        "objectApiName": "Account",
        "operation": "Edit",
        "reason": "Lead Convert's MergeAccountFields merges Lead fields into the (possibly reused, cross-owner) Account, which requires updating it."
      },
      {
        "objectApiName": "Contact",
        "operation": "Edit",
        "reason": "Lead Convert's MergeContactFields / UpdateContactOwner / UpdateContactLeadSource update the (possibly reused) Contact."
      },
      {
        "objectApiName": "Opportunity",
        "operation": "Edit",
        "reason": "Lead Convert's UpdateOpportunityOwner updates the (possibly reused) Opportunity."
      },
      {
        "objectApiName": "_System_RecordType",
        "operation": "Read",
        "reason": "Lead Convert owns default RecordType resolution for the records it creates: GetDefaultAccountRecordType (Account -> Customer) and GetDefaultOpportunityRecordType (Opportunity -> New). Matches the sibling createQuote / createOrder declarations."
      }
    ]
  },
  {
    "name": "createQuote",
    "label": "Create Quote",
    "description": "Salesforce-compatible Create Quote from Opportunity. Routes through the Std_CreateQuoteFromOpportunity flow so the parent Quote and copied QuoteLineItems are created atomically from metadata.",
    "flowDeveloperName": "Std_CreateQuoteFromOpportunity",
    "category": "OpportunityActions",
    "rendererId": "app-pack:crm/action-renderer/create-record-from-source",
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Opportunity"
    ],
    "isAtomic": true,
    "sortOrder": 10,
    "inputs": [
      {
        "apiName": "opportunityId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Opportunity",
        "uiMode": "hidden",
        "targetObject": "Opportunity",
        "targetFieldAPIName": "Id",
        "sortOrder": 0
      }
    ],
    "outputs": [
      {
        "apiName": "quoteId",
        "dataType": "reference",
        "referenceTo": "Quote",
        "sortOrder": 0
      }
    ],
    "inputGuards": [
      {
        "condition": "true",
        "requiredObject": "Opportunity",
        "requiredOperation": "Read",
        "errorMessage": "permission denied: Opportunity.Read is required during Create Quote",
        "sortOrder": 0
      },
      {
        "condition": "true",
        "requiredObject": "Quote",
        "requiredOperation": "Create",
        "errorMessage": "permission denied: Quote.Create is required during Create Quote",
        "sortOrder": 10
      },
      {
        "condition": "true",
        "requiredObject": "OpportunityLineItem",
        "requiredOperation": "Read",
        "errorMessage": "permission denied: OpportunityLineItem.Read is required during Create Quote",
        "sortOrder": 20
      },
      {
        "condition": "true",
        "requiredObject": "QuoteLineItem",
        "requiredOperation": "Create",
        "errorMessage": "permission denied: QuoteLineItem.Create is required during Create Quote",
        "sortOrder": 30
      }
    ],
    "internalAccessScopes": [
      {
        "objectApiName": "_System_Object",
        "operation": "Read",
        "reason": "Create Quote resolves the Quote metadata row to map the source Opportunity RecordType to the matching Quote RecordType."
      },
      {
        "objectApiName": "_System_RecordType",
        "operation": "Read",
        "reason": "Create Quote owns source-to-target RecordType resolution for the Quote created from an Opportunity."
      },
      {
        "objectApiName": "PricebookEntry",
        "operation": "Read",
        "reason": "Create Quote derives the parent Quote Product Name from the primary source line item's PricebookEntry."
      },
      {
        "objectApiName": "Product2",
        "operation": "Read",
        "reason": "Create Quote derives the parent Quote Product Name from the primary source line item's Product2."
      }
    ]
  },
  {
    "name": "createOrder",
    "label": "Create Order",
    "description": "Salesforce-compatible Create Order from Quote. Routes through the Std_CreateOrderFromQuote flow so the Order and copied OrderItems are created atomically from metadata.",
    "flowDeveloperName": "Std_CreateOrderFromQuote",
    "category": "QuoteActions",
    "rendererId": "app-pack:crm/action-renderer/create-record-from-source",
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Quote"
    ],
    "visibilityCondition": "record.Status == 'Accepted' && record.AccountId != null",
    "isAtomic": true,
    "sortOrder": 20,
    "inputs": [
      {
        "apiName": "quoteId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Quote",
        "uiMode": "hidden",
        "targetObject": "Quote",
        "targetFieldAPIName": "Id",
        "sortOrder": 0
      }
    ],
    "outputs": [
      {
        "apiName": "orderId",
        "dataType": "reference",
        "referenceTo": "Order",
        "sortOrder": 0
      }
    ],
    "inputGuards": [
      {
        "condition": "true",
        "requiredObject": "Quote",
        "requiredOperation": "Read",
        "errorMessage": "permission denied: Quote.Read is required during Create Order",
        "sortOrder": 0
      },
      {
        "condition": "true",
        "requiredObject": "Account",
        "requiredOperation": "Read",
        "errorMessage": "permission denied: Account.Read is required during Create Order",
        "sortOrder": 10
      },
      {
        "condition": "true",
        "requiredObject": "Order",
        "requiredOperation": "Create",
        "errorMessage": "permission denied: Order.Create is required during Create Order",
        "sortOrder": 20
      },
      {
        "condition": "true",
        "requiredObject": "QuoteLineItem",
        "requiredOperation": "Read",
        "errorMessage": "permission denied: QuoteLineItem.Read is required during Create Order",
        "sortOrder": 30
      },
      {
        "condition": "true",
        "requiredObject": "OrderItem",
        "requiredOperation": "Create",
        "errorMessage": "permission denied: OrderItem.Create is required during Create Order",
        "sortOrder": 40
      }
    ],
    "internalAccessScopes": [
      {
        "objectApiName": "_System_Object",
        "operation": "Read",
        "reason": "Create Order resolves the Order metadata row before selecting the target Order RecordType."
      },
      {
        "objectApiName": "_System_RecordType",
        "operation": "Read",
        "reason": "Create Order owns source Quote RecordType to target Order RecordType resolution."
      }
    ]
  },
  {
    "name": "sendRecordEmail",
    "label": "Email",
    "description": "Queue one provider-neutral email for the current user's connected mailbox and log CRM activity only after proven delivery.",
    "flowDeveloperName": "Std_SendRecordEmail",
    "category": "ActivityTimeline",
    "rendererId": "app-pack:crm/action-renderer/email-compose",
    "config": {
      "outboundMail": {
        "connectorOwnerKey": "salesforce-crm-standard",
        "flowActionName": "EnqueueMail",
        "actionSlotId": "send-mail",
        "destinationSlotId": "primary-mailbox",
        "calloutProfileOwnerPack": "gmail-connected-mail-connector",
        "calloutProfileBusinessKey": "gmail-connected-mail-connector/gmail-delivery",
        "mailCompletion": {
          "recipientAddressField": "Email",
          "recipientOptOutField": "HasOptedOutOfEmail",
          "activity": {
            "objectApiName": "Task",
            "sourceRecordField": "WhoId",
            "subjectField": "Subject",
            "activityDateField": "ActivityDate",
            "statusField": "Status",
            "priorityField": "Priority",
            "bodyField": "Description",
            "ownerField": "OwnerId",
            "typeField": "Type",
            "subtypeField": "TaskSubtype",
            "fixedSubject": "Email",
            "fixedStatus": "Completed",
            "fixedPriority": "Normal",
            "fixedType": "Email",
            "fixedSubtype": "Email"
          },
          "message": {
            "objectApiName": "EmailMessage",
            "activityIdField": "ActivityId",
            "fromAddressField": "FromAddress",
            "toAddressField": "ToAddress",
            "ccAddressField": "CcAddress",
            "bccAddressField": "BccAddress",
            "subjectField": "Subject",
            "textBodyField": "TextBody",
            "htmlBodyField": "HtmlBody",
            "attachmentIdsField": "AttachmentIds",
            "incomingField": "Incoming",
            "statusField": "Status",
            "messageDateField": "MessageDate",
            "fixedIncoming": false,
            "fixedStatus": "3"
          }
        }
      }
    },
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Contact",
      "Lead"
    ],
    "legacyNames": [
      "taskEmail"
    ],
    "headerFallbackEligible": false,
    "isAtomic": true,
    "sortOrder": 30,
    "inputs": [
      {
        "apiName": "requestId",
        "dataType": "string",
        "isRequired": true,
        "uiMode": "hidden",
        "sortOrder": 0
      },
      {
        "apiName": "recordId",
        "dataType": "id",
        "isRequired": true,
        "uiMode": "hidden",
        "sortOrder": 10
      },
      {
        "apiName": "objectApiName",
        "dataType": "string",
        "isRequired": true,
        "uiMode": "hidden",
        "sortOrder": 20
      },
      {
        "apiName": "subject",
        "dataType": "string",
        "isRequired": true,
        "label": "Subject",
        "sortOrder": 30
      },
      {
        "apiName": "body",
        "dataType": "string",
        "isRequired": true,
        "label": "Plain Text Message",
        "sortOrder": 40
      },
      {
        "apiName": "cc",
        "dataType": "string",
        "isRequired": false,
        "label": "Cc",
        "sortOrder": 50
      },
      {
        "apiName": "bcc",
        "dataType": "string",
        "isRequired": false,
        "label": "Bcc",
        "sortOrder": 60
      },
      {
        "apiName": "htmlBody",
        "dataType": "string",
        "isRequired": false,
        "label": "HTML Message",
        "sortOrder": 70
      },
      {
        "apiName": "attachments",
        "dataType": "id",
        "isCollection": true,
        "isRequired": false,
        "label": "Attachments",
        "sortOrder": 80
      }
    ],
    "outputs": [
      {
        "apiName": "intentId",
        "dataType": "string",
        "sortOrder": 0
      },
      {
        "apiName": "deliveryState",
        "dataType": "string",
        "sortOrder": 10
      },
      {
        "apiName": "failureCode",
        "dataType": "string",
        "sortOrder": 20
      }
    ],
    "inputGuards": []
  },
  {
    "name": "engagement",
    "label": "Engagement",
    "description": "Creates an Event activity (engagement) from the activity timeline quick-create surface.",
    "flowDeveloperName": "Std_CreateEventActivity",
    "category": "ActivityTimeline",
    "headerFallbackEligible": false,
    "rendererId": "app-pack:crm/action-renderer/task-activity-quick-create",
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Contact"
    ],
    "isAtomic": true,
    "sortOrder": 5,
    "inputs": [
      {
        "apiName": "recordId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Context",
        "uiMode": "hidden",
        "sortOrder": 0
      },
      {
        "apiName": "WhatId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Event",
        "targetFieldAPIName": "WhatId",
        "prefillSourceFieldAPIName": "WhatId",
        "sortOrder": 1
      },
      {
        "apiName": "WhoId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Event",
        "targetFieldAPIName": "WhoId",
        "prefillSourceFieldAPIName": "WhoId",
        "sortOrder": 2
      },
      {
        "apiName": "Contact_Role",
        "dataType": "picklist",
        "label": "Contact Role",
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "Contact_Role__c",
        "sortOrder": 3
      },
      {
        "apiName": "Other_Participants_Names",
        "dataType": "string",
        "label": "Other Participants' Names",
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "Other_Participants_Names__c",
        "sortOrder": 4
      },
      {
        "apiName": "Other_Participants_Info",
        "dataType": "string",
        "label": "Other Participants' Info",
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "Other_Participants_Info__c",
        "sortOrder": 5
      },
      {
        "apiName": "OwnerId",
        "dataType": "reference",
        "referenceTo": "User",
        "label": "Updated by",
        "isRequired": true,
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "OwnerId",
        "sortOrder": 6
      },
      {
        "apiName": "EventSubject",
        "dataType": "string",
        "label": "Subject",
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "Subject",
        "sortOrder": 7
      },
      {
        "apiName": "Description",
        "dataType": "textarea",
        "label": "Description",
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "Description",
        "sortOrder": 8
      },
      {
        "apiName": "Risk_and_Next_Step",
        "dataType": "textarea",
        "label": "Risk and Next Step",
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "Risk_and_Next_Step__c",
        "sortOrder": 9
      },
      {
        "apiName": "StartDateTime",
        "dataType": "datetime",
        "label": "Start",
        "isRequired": true,
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "StartDateTime",
        "sortOrder": 10
      },
      {
        "apiName": "EndDateTime",
        "dataType": "datetime",
        "label": "End",
        "isRequired": true,
        "uiSection": "Event",
        "targetObject": "Event",
        "targetFieldAPIName": "EndDateTime",
        "sortOrder": 11
      }
    ],
    "outputs": [
      {
        "apiName": "eventId",
        "dataType": "reference",
        "referenceTo": "Event",
        "sortOrder": 0
      }
    ],
    "fieldDefaults": [
      {
        "targetObject": "$Input",
        "fieldAPIName": "OwnerId",
        "valueFormula": "$User.Id",
        "priority": 100
      }
    ]
  },
  {
    "name": "taskCall",
    "label": "Log a Call",
    "description": "Logs a completed call Task from the activity timeline quick-create surface. Mirrors the Salesforce global Log a Call (SDR ONLY) action layout: Action Status, Action Response, Interaction Type, Comments.",
    "flowDeveloperName": "Std_CreateTaskActivity",
    "category": "ActivityTimeline",
    "headerFallbackEligible": false,
    "rendererId": "app-pack:crm/action-renderer/task-activity-quick-create",
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Case",
      "Contact",
      "Contract",
      "Lead",
      "Opportunity",
      "Order"
    ],
    "isAtomic": true,
    "sortOrder": 10,
    "inputs": [
      {
        "apiName": "recordId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Context",
        "uiMode": "hidden",
        "sortOrder": 0
      },
      {
        "apiName": "WhatId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "WhatId",
        "prefillSourceFieldAPIName": "WhatId",
        "sortOrder": 1
      },
      {
        "apiName": "WhoId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "WhoId",
        "prefillSourceFieldAPIName": "WhoId",
        "sortOrder": 2
      },
      {
        "apiName": "Action_Status__c",
        "dataType": "picklist",
        "label": "Action Status",
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Action_Status__c",
        "sortOrder": 3
      },
      {
        "apiName": "Action_Response__c",
        "dataType": "picklist",
        "label": "Action Response",
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Action_Response__c",
        "sortOrder": 4
      },
      {
        "apiName": "Intera__c",
        "dataType": "picklist",
        "label": "Interaction Type",
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Intera__c",
        "sortOrder": 5
      },
      {
        "apiName": "Description",
        "dataType": "textarea",
        "label": "Comments",
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Description",
        "sortOrder": 6
      },
      {
        "apiName": "Subject",
        "dataType": "string",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Subject",
        "sortOrder": 7
      },
      {
        "apiName": "ActivityDate",
        "dataType": "date",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "ActivityDate",
        "sortOrder": 8
      },
      {
        "apiName": "Status",
        "dataType": "picklist",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Status",
        "sortOrder": 9
      },
      {
        "apiName": "Priority",
        "dataType": "picklist",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Priority",
        "sortOrder": 10
      },
      {
        "apiName": "OwnerId",
        "dataType": "reference",
        "referenceTo": "User",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "OwnerId",
        "sortOrder": 11
      },
      {
        "apiName": "Type",
        "dataType": "string",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Type",
        "sortOrder": 12
      },
      {
        "apiName": "CallType",
        "dataType": "string",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "CallType",
        "sortOrder": 13
      },
      {
        "apiName": "TaskSubtype",
        "dataType": "string",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "TaskSubtype",
        "sortOrder": 14
      }
    ],
    "outputs": [
      {
        "apiName": "taskId",
        "dataType": "reference",
        "referenceTo": "Task",
        "sortOrder": 0
      }
    ],
    "fieldDefaults": [
      {
        "targetObject": "$Input",
        "fieldAPIName": "Subject",
        "valueFormula": "\"Call\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Type",
        "valueFormula": "\"Call\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "CallType",
        "valueFormula": "\"Outbound\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "TaskSubtype",
        "valueFormula": "\"Call\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Status",
        "valueFormula": "\"Completed\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Priority",
        "valueFormula": "\"Normal\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "ActivityDate",
        "valueFormula": "TODAY()",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "OwnerId",
        "valueFormula": "$User.Id",
        "priority": 100
      }
    ]
  },
  {
    "name": "taskEmail",
    "label": "Email",
    "description": "Creates a Task activity from the activity timeline quick-create surface.",
    "flowDeveloperName": "Std_CreateTaskActivity",
    "category": "ActivityTimeline",
    "headerFallbackEligible": false,
    "rendererId": "app-pack:crm/action-renderer/task-activity-quick-create",
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Case",
      "Contract",
      "Opportunity",
      "Order"
    ],
    "isAtomic": true,
    "sortOrder": 20,
    "inputs": [
      {
        "apiName": "recordId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Context",
        "uiMode": "hidden",
        "sortOrder": 0
      },
      {
        "apiName": "WhatId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "WhatId",
        "prefillSourceFieldAPIName": "WhatId",
        "sortOrder": 1
      },
      {
        "apiName": "WhoId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "WhoId",
        "prefillSourceFieldAPIName": "WhoId",
        "sortOrder": 2
      },
      {
        "apiName": "Subject",
        "dataType": "string",
        "label": "Subject",
        "isRequired": true,
        "uiSection": "Task",
        "sortOrder": 3
      },
      {
        "apiName": "ActivityDate",
        "dataType": "date",
        "label": "Due Date",
        "isRequired": true,
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "ActivityDate",
        "sortOrder": 4
      },
      {
        "apiName": "Status",
        "dataType": "picklist",
        "label": "Status",
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Status",
        "sortOrder": 5
      },
      {
        "apiName": "Description",
        "dataType": "textarea",
        "label": "Description",
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Description",
        "sortOrder": 6
      },
      {
        "apiName": "OwnerId",
        "dataType": "reference",
        "referenceTo": "User",
        "label": "Assigned To",
        "isRequired": true,
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "OwnerId",
        "sortOrder": 7
      },
      {
        "apiName": "Priority",
        "dataType": "picklist",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Priority",
        "sortOrder": 8
      },
      {
        "apiName": "Type",
        "dataType": "string",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Type",
        "sortOrder": 9
      },
      {
        "apiName": "TaskSubtype",
        "dataType": "string",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "TaskSubtype",
        "sortOrder": 10
      }
    ],
    "outputs": [
      {
        "apiName": "taskId",
        "dataType": "reference",
        "referenceTo": "Task",
        "sortOrder": 0
      }
    ],
    "fieldDefaults": [
      {
        "targetObject": "$Input",
        "fieldAPIName": "Type",
        "valueFormula": "\"Email\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "TaskSubtype",
        "valueFormula": "\"Email\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Status",
        "valueFormula": "\"Completed\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Priority",
        "valueFormula": "\"Normal\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "ActivityDate",
        "valueFormula": "TODAY()",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "OwnerId",
        "valueFormula": "$User.Id",
        "priority": 100
      }
    ]
  },
  {
    "name": "taskWeeklyUpdate",
    "label": "Weekly Update",
    "description": "Creates a Task activity from the activity timeline quick-create surface.",
    "flowDeveloperName": "Std_CreateTaskActivity",
    "category": "ActivityTimeline",
    "headerFallbackEligible": false,
    "rendererId": "app-pack:crm/action-renderer/task-activity-quick-create",
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Opportunity"
    ],
    "isAtomic": true,
    "sortOrder": 0,
    "inputs": [
      {
        "apiName": "recordId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Context",
        "uiMode": "hidden",
        "sortOrder": 0
      },
      {
        "apiName": "WhatId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "WhatId",
        "prefillSourceFieldAPIName": "WhatId",
        "sortOrder": 1
      },
      {
        "apiName": "WhoId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "WhoId",
        "prefillSourceFieldAPIName": "WhoId",
        "sortOrder": 2
      },
      {
        "apiName": "Subject",
        "dataType": "picklist",
        "label": "Subject",
        "isRequired": true,
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Subject",
        "sortOrder": 3
      },
      {
        "apiName": "Progress",
        "dataType": "textarea",
        "label": "Progress",
        "isRequired": true,
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Progress__c",
        "sortOrder": 4
      },
      {
        "apiName": "Risk_and_Next_Step",
        "dataType": "textarea",
        "label": "Risk and Next Step",
        "isRequired": true,
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Risk_and_Next_Step__c",
        "sortOrder": 5
      },
      {
        "apiName": "ActivityDate",
        "dataType": "date",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "ActivityDate",
        "sortOrder": 6
      },
      {
        "apiName": "Status",
        "dataType": "picklist",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Status",
        "sortOrder": 7
      },
      {
        "apiName": "OwnerId",
        "dataType": "reference",
        "referenceTo": "User",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "OwnerId",
        "sortOrder": 8
      },
      {
        "apiName": "Priority",
        "dataType": "picklist",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Priority",
        "sortOrder": 9
      },
      {
        "apiName": "Type",
        "dataType": "string",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Type",
        "sortOrder": 10
      }
    ],
    "outputs": [
      {
        "apiName": "taskId",
        "dataType": "reference",
        "referenceTo": "Task",
        "sortOrder": 0
      }
    ],
    "fieldDefaults": [
      {
        "targetObject": "$Input",
        "fieldAPIName": "Type",
        "valueFormula": "\"Weekly Update\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Status",
        "valueFormula": "\"Completed\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Priority",
        "valueFormula": "\"Normal\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "ActivityDate",
        "valueFormula": "TODAY()",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "OwnerId",
        "valueFormula": "$User.Id",
        "priority": 100
      }
    ]
  },
  {
    "name": "taskLeadWeeklyUpdate",
    "label": "Weekly Update",
    "description": "Creates a Lead weekly update Task activity from the activity timeline quick-create surface.",
    "flowDeveloperName": "Std_CreateTaskActivity",
    "category": "ActivityTimeline",
    "headerFallbackEligible": false,
    "rendererId": "app-pack:crm/action-renderer/task-activity-quick-create",
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Lead"
    ],
    "isAtomic": true,
    "sortOrder": 30,
    "inputs": [
      {
        "apiName": "recordId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Context",
        "uiMode": "hidden",
        "sortOrder": 0
      },
      {
        "apiName": "WhatId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "WhatId",
        "prefillSourceFieldAPIName": "WhatId",
        "sortOrder": 1
      },
      {
        "apiName": "WhoId",
        "dataType": "id",
        "uiSection": "Context",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "WhoId",
        "prefillSourceFieldAPIName": "WhoId",
        "sortOrder": 2
      },
      {
        "apiName": "Subject",
        "dataType": "picklist",
        "label": "Subject",
        "isRequired": true,
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Subject",
        "sortOrder": 3
      },
      {
        "apiName": "Progress",
        "dataType": "textarea",
        "label": "Progress",
        "isRequired": true,
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Progress__c",
        "sortOrder": 4
      },
      {
        "apiName": "Risk_and_Next_Step",
        "dataType": "textarea",
        "label": "Risk and Next Step",
        "isRequired": true,
        "uiSection": "Task",
        "targetObject": "Task",
        "targetFieldAPIName": "Risk_and_Next_Step__c",
        "sortOrder": 5
      },
      {
        "apiName": "ActivityDate",
        "dataType": "date",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "ActivityDate",
        "sortOrder": 6
      },
      {
        "apiName": "Status",
        "dataType": "picklist",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Status",
        "sortOrder": 7
      },
      {
        "apiName": "OwnerId",
        "dataType": "reference",
        "referenceTo": "User",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "OwnerId",
        "sortOrder": 8
      },
      {
        "apiName": "Priority",
        "dataType": "picklist",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Priority",
        "sortOrder": 9
      },
      {
        "apiName": "Type",
        "dataType": "string",
        "uiSection": "Task",
        "uiMode": "hidden",
        "targetObject": "Task",
        "targetFieldAPIName": "Type",
        "sortOrder": 10
      }
    ],
    "outputs": [
      {
        "apiName": "taskId",
        "dataType": "reference",
        "referenceTo": "Task",
        "sortOrder": 0
      }
    ],
    "fieldDefaults": [
      {
        "targetObject": "$Input",
        "fieldAPIName": "Type",
        "valueFormula": "\"Weekly Update\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Status",
        "valueFormula": "\"Completed\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "Priority",
        "valueFormula": "\"Normal\"",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "ActivityDate",
        "valueFormula": "TODAY()",
        "priority": 100
      },
      {
        "targetObject": "$Input",
        "fieldAPIName": "OwnerId",
        "valueFormula": "$User.Id",
        "priority": 100
      }
    ]
  },
  {
    "name": "ChangeOwner",
    "label": "Change Owner",
    "description": "Changes record owner through the metadata-owned Change Owner standard action.",
    "flowDeveloperName": "Std_ChangeOwner",
    "visibilityCondition": "record.OwnerId != null",
    "category": "RecordActions",
    "requiredPermissions": [
      "ApiEnabled"
    ],
    "targetObjects": [
      "Lead",
      "Account",
      "Contact",
      "Opportunity",
      "Case",
      "Campaign",
      "Contract",
      "Order",
      "Task",
      "Event"
    ],
    "isAtomic": true,
    "sortOrder": 1,
    "headerFallbackEligible": false,
    "inputs": [
      {
        "apiName": "recordId",
        "dataType": "id",
        "isRequired": true,
        "uiSection": "Context",
        "uiMode": "hidden",
        "sortOrder": 0
      },
      {
        "apiName": "objectApiName",
        "dataType": "string",
        "isRequired": true,
        "uiSection": "Context",
        "uiMode": "hidden",
        "sortOrder": 1
      },
      {
        "apiName": "newOwnerId",
        "dataType": "reference",
        "referenceTo": "User",
        "isRequired": true,
        "uiSection": "Owner",
        "uiMode": "reuse",
        "sortOrder": 2
      },
      {
        "apiName": "sendNotification",
        "dataType": "boolean",
        "label": "Send Notification",
        "uiSection": "Owner",
        "sortOrder": 3
      }
    ],
    "outputs": [
      {
        "apiName": "recordId",
        "dataType": "id",
        "sortOrder": 0
      },
      {
        "apiName": "previousOwnerId",
        "dataType": "reference",
        "referenceTo": "User",
        "sortOrder": 1
      },
      {
        "apiName": "newOwnerId",
        "dataType": "reference",
        "referenceTo": "User",
        "sortOrder": 2
      }
    ]
  }
]
